Function at 0x10071caf
Capabilities:
Enumerate gui resources
Set current directory

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x5dd4
call fcn.100c4cf0
mov eax, dword [0x10164bc0]
xor eax, esp
mov dword [esp + 0x5dd0], eax
cmp byte [0x101a0eec], 0
push ebx
push esi
push edi
jne 0x1007236c
lea eax, [esp + 0x54]
mov byte [0x101a0eec], 1
push eax
call fcn.100a0c40
pop ecx
lea eax, [esp + 0xb0]
push eax
call fcn.100a0830
mov dword [esp], 0x10001
lea eax, [esp + 0xb4]
push 0x800
xor ebx, ebx
push ebx
push ebx
push 0x100c82d6
push ebx
push eax
lea eax, [esp + 0x70]
mov dword [esp + 0x30], ebx
push eax
call fcn.100a0880
lea eax, [esp + 0x120]
push eax
call fcn.100b76a0
add esp, 0x24
lea eax, [esp + 0x100]
push 0x101603f4
push 1
push eax
call fcn.100b76d0
add esp, 0xc
lea eax, [esp + 0x70]
push eax
lea eax, [esp + 0x104]
push 0x20
push eax
call fcn.100b7650
add esp, 0xc
lea eax, [esp + 0x18]
push eax
call fcn.100a0720
pop ecx
mov eax, ebx
mov byte [esp + eax + 0x59b8], al
inc eax
cmp eax, 0x20
jb 0x10071d73
lea eax, [esp + 0x59b8]
push eax
lea eax, [esp + 0x174]
push eax
call fcn.100b7630
lea eax, [esp + 0x20]
push eax
call fcn.100a0740
add esp, 0xc
lea eax, [esp + 0x54]
push eax
call fcn.100a0c20
pop ecx
lea eax, [esp + 0xb0]
push eax
call fcn.100a07e0
xor eax, eax
lea edi, [esp + 0x34]
stosd dword es:[edi], eax
lea ecx, [esp + 0x34]
push 7
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
pop edi
push 0x1000
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], edi
mov word [esp + 0x38], ax
call fcn.100724b8
lea eax, [esp + 0x70]
push eax
call fcn.100acb70
pop ecx
lea eax, [esp + 0x3580]
push eax
call fcn.100acf90
pop ecx
lea eax, [esp + 0x170]
push eax
call fcn.100ae610
pop ecx
mov esi, 0x400
lea eax, [esp + 0x59d8]
push esi
push ebx
push eax
call fcn.100c6790
add esp, 0xc
lea eax, [esp + 0x59d8]
push esi
push eax
lea eax, [esp + 0x78]
push eax
call fcn.100acb20
add esp, 0xc
lea eax, [esp + 0x70]
push eax
lea eax, [esp + 0x3584]
push eax
call fcn.100acec0
pop ecx
pop ecx
or ecx, 0xffffffff
cmp eax, ecx
je 0x10071e6a
lea eax, [esp + 0x3580]
push eax
lea eax, [esp + 0x174]
push eax
call fcn.100ae570
pop ecx
pop ecx
lea eax, [esp + 0x3580]
push eax
call fcn.100acf60
pop ecx
lea eax, [esp + 0x70]
push eax
call fcn.100acb50
cmp dword [esp + 0x48], edi
lea eax, [esp + 0x34]
mov dword [esp], 0x1000
cmova eax, dword [esp + 0x34]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
cmp dword [esp + 0x44], edi
lea edx, [esp + 0x30]
mov esi, dword [esp + 0x40]
cmova edx, dword [esp + 0x30]
or edi, 0xffffffff
test esi, esi
je 0x10071ee5
lea eax, [esi - 1]
mov ecx, edi
cmp eax, edi
push 0x5c
cmovb ecx, eax
pop eax
lea ecx, [edx + ecx*2]
cmp word [ecx], ax
je 0x10071edf
push 2
pop eax
cmp ecx, edx
je 0x10071ee5
push 0x5c
sub ecx, eax
pop ebx
push 0
cmp word [ecx], bx
pop ebx
jne 0x10071ece
sub ecx, edx
sar ecx, 1
jmp 0x10071ee7
mov ecx, edi
xor eax, eax
lea edi, [esp + 0x18]
stosd dword es:[edi], eax
cmp esi, ecx
cmovb ecx, esi
cmp dword [esp + 0x44], 7
push ecx
stosd dword es:[edi], eax
lea ecx, [esp + 0x1c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [esp + 0x34]
cmova eax, dword [esp + 0x34]
push eax
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
call fcn.100726b6
lea ecx, [esp + 0x30]
call fcn.1007248d
push 6
pop ecx
lea esi, [esp + 0x18]
lea edi, [esp + 0x30]
rep movsd dword es:[edi], dword [esi]
push 0x640
mov esi, 0xa0
push esi
call fcn.100bb400
push 0x1f40
push esi
mov edi, eax
call fcn.100bf580
push edi
mov esi, eax
push 0x18
push esi
call fcn.100bcf20
add esp, 0x1c
mov ebx, 0x140
xor eax, eax
push ebx
push eax
lea eax, [esp + 0x3588]
push eax
call fcn.100c6790
add esp, 0xc
lea eax, [esp + 0x170]
push ebx
xor ebx, ebx
push ebx
push eax
call fcn.100c6790
add esp, 0xc
lea eax, [esp + 0x59d8]
push eax
lea eax, [esp + 0x174]
push eax
lea eax, [esp + 0x3588]
push eax
push edi
call fcn.100b8e30
lea eax, [esp + 0x59e8]
push eax
push esi
call fcn.100bd550
push edi
call fcn.100bb2e0
add esp, 0x1c
push esi
call fcn.100bf490
cmp dword [esp + 0x48], 7
lea eax, [esp + 0x34]
pop ecx
cmova eax, dword [esp + 0x30]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
push str.OnlineChecks.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
call fcn.10093bf0
test eax, eax
jne 0x10071fee
mov esi, ebx
jmp 0x10072015
push ebx
push ebx
push str.Im3D_Example
push 8
push 8
call fcn.10094040
mov esi, eax
add esp, 0x14
test esi, esi
jne 0x1007200e
call fcn.10093d40
jmp 0x10071fea
push esi
call fcn.100934a0
pop ecx
push 0xb71
call dword [sym.imp.OPENGL32.dll_glEnable]
push esi
call fcn.100944a0
pop ecx
call fcn.10094480
push 0x4100
call dword [sym.imp.OPENGL32.dll_glClear]
mov ecx, dword [0x10164b78]
call fcn.100aadb0
lea eax, [esp + 0x59b8]
mov dword [esp + 0x59b8], 0x3f800000
push eax
lea eax, [esp + 0x1c]
mov dword [esp + 0x59c0], 0x3f800000
push eax
mov dword [esp + 0x59c8], 0x3f800000
mov dword [esp + 0x20], 0xbf800000
mov dword [esp + 0x24], 0xbf800000
mov dword [esp + 0x28], 0xbf800000
call fcn.100a21a0
pop ecx
pop ecx
push 0x10165530
push str.Transform
call fcn.100a67d0
pop ecx
push eax
call fcn.100a31c0
pop ecx
pop ecx
mov ecx, dword [0x10164b78]
call fcn.100a7240
push esi
call fcn.10093530
pop ecx
push esi
call fcn.100943f0
pop ecx
call fcn.10093d40
call fcn.10074540
call fcn.100742a0
push 2
pop edi
mov ebx, eax
mov dword [esp + 0x18], 0x10
xor esi, esi
mov dword [esp + 0x20], edi
push esi
lea eax, [esp + 0x1c]
mov dword [esp + 0x20], 0xac44
push eax
push ebx
mov dword [esp + 0x30], 1
mov dword [esp + 0x34], esi
call fcn.100748b0
mov dword [esp + 0x1c], eax
add esp, 0xc
imul eax, dword [esp + 0x20], 0x15888
push 0xffffffffffffffff
pop ecx
mul edi
cmovb eax, ecx
push eax
call fcn.100c495b
fld qword [0x101604b0]
mov edi, eax
fld qword [0x101604a0]
pop ecx
mov dword [esp + 0x59b8], esi
fild dword [esp + 0x59b8]
fstp qword [esp + 0x59b8]
fld qword [esp + 0x59b8]
fdivrp st(2)
fmulp st(1)
call fcn.100db190
fmul qword [0x10160458]
fmul qword [0x101604a8]
call fcn.100c57a0
fld qword [0x101604b0]
fld qword [0x101604a0]
movzx eax, ax
mov word [edi + esi*4], ax
mov word [edi + esi*4 + 2], ax
inc esi
mov dword [esp + 0x59b8], esi
cmp esi, 0x15888
jl 0x10072135
fstp st(1)
fstp st(0)
test ebx, ebx
je 0x100721b0
cmp dword [esp + 0x10], 0
jne 0x100721b0
imul eax, dword [esp + 0x20], 0x2b110
push eax
xor eax, eax
push edi
push eax
call fcn.100748d0
add esp, 0xc
xor eax, eax
lea edi, [esp + 0x48]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
mov esi, eax
mov dword [esp + 0x4c], eax
mov ebx, eax
mov dword [esp + 0x48], esi
mov eax, 0x7ffffffe
mov dword [esp + 0x50], ebx
sub eax, dword [esp + 0x40]
cmp eax, 1
jb 0x10072381
cmp dword [esp + 0x44], 7
lea eax, [esp + 0x30]
push 1
cmova eax, dword [esp + 0x34]
push ecx
push dword [esp + 0x48]
push eax
push ecx
push dword [esp + 0x28]
lea ecx, [esp + 0x30]
call fcn.10072863
push ecx
lea edx, [esp + 0x1c]
lea ecx, [esp + 0x58]
call fcn.10072553
pop ecx
lea ecx, [esp + 0x18]
call fcn.1007248d
cmp dword [esp + 0x68], 7
lea edx, [esp + 0x54]
lea edi, [esp + 0x59b8]
cmova edx, dword [esp + 0x54]
xor eax, eax
stosd dword es:[edi], eax
mov ecx, edx
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
mov dword [esp + 0x59c8], eax
lea edi, [ecx + 2]
mov dword [esp + 0x59cc], eax
mov ax, word [ecx]
add ecx, 2
cmp ax, word [esp + 0x14]
jne 0x10072249
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [esp + 0x59c0]
call fcn.100726b6
push 0x25a0
push 0x193c2
lea edx, [esp + 0x59c0]
lea ecx, [esp + 0x20]
call fcn.10071509
mov edi, eax
lea eax, [esp + 0x50]
pop ecx
pop ecx
cmp eax, edi
je 0x100722a4
mov ecx, eax
call fcn.1007246e
mov esi, dword [edi]
xor eax, eax
mov ebx, dword [edi + 8]
mov dword [edi], eax
mov dword [edi + 4], eax
mov dword [edi + 8], eax
lea ecx, [esp + 0x18]
call fcn.1007246e
mov edx, dword [esp + 0x59cc]
cmp edx, 7
jbe 0x100722cc
mov ecx, dword [esp + 0x59b8]
lea edx, [edx*2 + 2]
call fcn.100727ca
lea eax, [esp + 0xb0]
push eax
call fcn.10077340
pop ecx
lea eax, [esp + 0xb0]
push eax
lea eax, [esp + 0x18]
push eax
call fcn.10077660
lea eax, [esp + 0x1c]
push eax
call fcn.10077320
add esp, 0xc
push str.ToolkitPro1513vc60.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
push 0x25a0
lea edi, [eax + 0x1000]
xor eax, eax
push eax
push edi
call fcn.100c6790
add esp, 0xc
xor eax, eax
mov edx, eax
movzx eax, dl
lea ecx, [esi + edx]
imul eax, eax, 0x5c
add al, 0x64
add byte [ecx], al
inc edx
mov eax, 0x25a0
cmp edx, eax
jb 0x1007231f
push eax
push esi
push edi
call fcn.100c6210
add esp, 0xc
xor eax, eax
push eax
push edi
call dword [sym.imp.USER32.dll_EnumWindowStationsW]
lea ecx, [esp + 0x54]
call fcn.1007248d
test esi, esi
je 0x10072363
sub ebx, esi
mov ecx, esi
mov edx, ebx
call fcn.100727ca
lea ecx, [esp + 0x30]
call fcn.1007248d
mov ecx, dword [esp + 0x5ddc]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.100c490a
mov esp, ebp
pop ebp
ret
call fcn.100714c7
int3