Code:
.text:4041D8D0 ; =============== S U B R O U T I N E =======================================
.text:4041D8D0
.text:4041D8D0
.text:4041D8D0 sub_4041D8D0 proc near ; CODE XREF: sub_4041C9F0+2Dp
.text:4041D8D0 push esi
.text:4041D8D1 mov esi, ecx
.text:4041D8D3 push offset aAticfx32_dll ; "Aticfx32.dll"
.text:4041D8D8 call LoadLibrary
.text:4041D8DE test eax, eax
.text:4041D8E0 jz short loc_4041D909
.text:4041D8E2 push offset aOpenadapter ; "OpenAdapter"
.text:4041D8E7 push eax ; hLibrary
.text:4041D8E8 call GetProcAddress_1
.text:4041D8EE test eax, eax
.text:4041D8F0 mov pOpenAdapter, eax
.text:4041D8F5 jz short loc_4041D909
.text:4041D8F7 push 5
.text:4041D8F9 add esi, 210h
.text:4041D8FF push eax
.text:4041D900 push esi
.text:4041D901 call sub_4042F9D0
.text:4041D906 add esp, 0Ch
.text:4041D909
.text:4041D909 loc_4041D909: ; CODE XREF: sub_4041D8D0+10j
.text:4041D909 ; sub_4041D8D0+25j
.text:4041D909 pop esi
.text:4041D90A retn
.text:4041D90A sub_4041D8D0 endp
.text:4041D90A
.text:4041D90A ; ---------------------------------------------------------------------------
.text:4041D90B align 10h
.text:4041D910
.text:4041D910 ; =============== S U B R O U T I N E =======================================
.text:4041D910
.text:4041D910
.text:4041D910 sub_4041D910 proc near ; CODE XREF: sub_4041C9F0+26p
.text:4041D910 push esi
.text:4041D911 mov esi, ecx
.text:4041D913 push offset aNvd3dum_dll ; "Nvd3dum.DLL"
.text:4041D918 call LoadLibrary
.text:4041D91E test eax, eax
.text:4041D920 jz short loc_4041D949
.text:4041D922 push offset aOpenadapter ; "OpenAdapter"
.text:4041D927 push eax ; hLibrary
.text:4041D928 call GetProcAddress_1
.text:4041D92E test eax, eax
.text:4041D930 mov dword_40540720, eax
.text:4041D935 jz short loc_4041D949
.text:4041D937 push 5
.text:4041D939 add esi, 1FCh
.text:4041D93F push eax
.text:4041D940 push esi
.text:4041D941 call sub_4042F9D0
.text:4041D946 add esp, 0Ch
.text:4041D949
.text:4041D949 loc_4041D949: ; CODE XREF: sub_4041D910+10j
.text:4041D949 ; sub_4041D910+25j
.text:4041D949 pop esi
.text:4041D94A retn
.text:4041D94A sub_4041D910 endp
.text:4041D94A
.text:4041D94A ; ---------------------------------------------------------------------------
.text:4041D94B align 10h
Just a small quote from an IDB file of XTrapVA.dll I created ~Nov.12 (with cleaned Themida IAT calls and reconstructed custom XT import table). Didn't perform further analysis, however they obviously do 'something' with it. The sub_XX call is the function they use to obfuscate their pointers which are put into a special structure to hold them all. I'm significantly too lazy to find the references to see what they are doing with it right now.
Oh by the way, that image came into mind when I reopened the IDB again. Probably nobody except ~FALLEN~ will understand it, but whatever, I'll post it anyway.
