Function at 0x447a70
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword [esp + 8]
cmp dword [ecx + 8], 1
je 0x447a9c
mov eax, dword [ecx]
test eax, eax
je 0x447a9c
jle 0x447a93
mov eax, dword [ecx + 0xc]
test byte [eax], 1
je 0x447a93
mov dword [esp + 8], ecx
jmp 0x468380
mov dword [esp + 8], ecx
jmp 0x467ef0
mov eax, 0x16
ret
sub esp, 0x80
push edi
mov edi, dword [esp + 0x8c]
cmp dword [edi + 8], 1
je 0x468368
cmp dword [edi], 0
je 0x468368
push 0
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0xc]
push ecx
lea edx, [esp + 0x60]
push edx
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x48]
push ecx
lea edx, [esp + 0x5c]
push edx
lea eax, [esp + 0x80]
push eax
lea ecx, [esp + 0x94]
push ecx
call fcn.00467df0
add esp, 0x24
test eax, eax
jne 0x46836d
mov eax, dword [esp + 0x88]
push esi
lea edx, [esp + 0x78]
push edx
push edi
push eax
call fcn.00467e60
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x468325
lea ecx, [esp + 0x68]
push ecx
push edi
call fcn.004466b0
mov esi, eax
add esp, 8
test esi, esi
jne 0x468325
mov eax, dword [esp + 0x78]
test eax, eax
jle 0x467fb3
mov edx, dword [esp + 0x84]
test byte [edx], 1
jne 0x467fb3
mov eax, dword [esp + 0x68]
test eax, eax
jle 0x467fb3
mov eax, dword [esp + 0x74]
test byte [eax], 1
je 0x468289
lea ecx, [esp + 0x48]
push ecx
lea edx, [esp + 0x7c]
push edx
call fcn.004466b0
mov esi, eax
add esp, 8
test esi, esi
jne 0x468325
lea eax, [esp + 0x38]
push eax
lea ecx, [esp + 0x6c]
push ecx
call fcn.004466b0
mov esi, eax
add esp, 8
test esi, esi
jne 0x468325
lea edx, [esp + 0x28]
push 1
push edx
call fcn.004686f0
lea eax, [esp + 0x20]
push 1
push eax
call fcn.004686f0
add esp, 0x10
jmp 0x468010
mov eax, dword [esp + 0x48]
test eax, eax
jle 0x4680e0
mov ecx, dword [esp + 0x54]
test byte [ecx], 1
jne 0x4680e0
lea edx, [esp + 0x48]
push edx
mov eax, edx
push eax
call fcn.00447690
mov esi, eax
add esp, 8
test esi, esi
jne 0x468325
mov eax, dword [esp + 0x28]
test eax, eax
jle 0x468054
mov ecx, dword [esp + 0x34]
test byte [ecx], 1
jne 0x468065
mov eax, dword [esp + 0x58]
test eax, eax
jle 0x4680a3
mov edx, dword [esp + 0x64]
test byte [edx], 1
je 0x4680a3
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x6c]
push ecx
mov edx, eax
push edx
call fcn.00446c50
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x468325
lea eax, [esp + 0x58]
push eax
lea ecx, [esp + 0x7c]
push ecx
mov edx, eax
push edx
call fcn.00446dd0
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x468325
lea eax, [esp + 0x28]
push eax
mov ecx, eax
push ecx
call fcn.00447690
mov esi, eax
add esp, 8
test esi, esi
jne 0x468325
lea edx, [esp + 0x58]
push edx
mov eax, edx
push eax
call fcn.00447690
mov esi, eax
add esp, 8
test esi, esi
je 0x468010
jmp 0x468325
mov eax, dword [esp + 0x38]
test eax, eax
jle 0x4681ac
mov ecx, dword [esp + 0x44]
test byte [ecx], 1
jne 0x4681ac
lea edx, [esp + 0x38]
push edx
mov eax, edx
push eax
call fcn.00447690
mov esi, eax
add esp, 8
test esi, esi
jne 0x468325
mov eax, dword [esp + 8]
test eax, eax
jle 0x468124
mov ecx, dword [esp + 0x14]
test byte [ecx], 1
jne 0x468135
mov eax, dword [esp + 0x18]
test eax, eax
jle 0x468173
mov edx, dword [esp + 0x24]
test byte [edx], 1
je 0x468173
lea eax, [esp + 8]
push eax
lea ecx, [esp + 0x6c]
push ecx
mov edx, eax
push edx
call fcn.00446c50
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x468325
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x7c]
push ecx
mov edx, eax
push edx
call fcn.00446dd0
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x468325
lea eax, [esp + 8]
push eax
mov ecx, eax
push ecx
call fcn.00447690
mov esi, eax
add esp, 8
test esi, esi
jne 0x468325
lea edx, [esp + 0x18]
push edx
mov eax, edx
push eax
call fcn.00447690
mov esi, eax
add esp, 8
test esi, esi
je 0x4680e0
jmp 0x468325
lea ecx, [esp + 0x38]
push ecx
lea edx, [esp + 0x4c]
push edx
call fcn.004467c0
add esp, 8
cmp eax, 0xffffffff
je 0x46820d
lea eax, [esp + 0x48]
push eax
lea ecx, [esp + 0x3c]
push ecx
mov edx, eax
push edx
call fcn.00446dd0
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x468325
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0xc]
push ecx
mov edx, eax
push edx
call fcn.00446dd0
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x468325
lea eax, [esp + 0x58]
lea ecx, [esp + 0x18]
mov edx, eax
jmp 0x468255
lea eax, [esp + 0x38]
push eax
lea ecx, [esp + 0x4c]
push ecx
mov edx, eax
push edx
call fcn.00446dd0
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x468325
lea eax, [esp + 8]
push eax
lea ecx, [esp + 0x2c]
push ecx
mov edx, eax
push edx
call fcn.00446dd0
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x468325
lea eax, [esp + 0x18]
lea ecx, [esp + 0x58]
mov edx, eax
push eax
push ecx
push edx
call fcn.00446dd0
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x468325
mov eax, dword [esp + 0x48]
test eax, eax
jne 0x468016
lea eax, [esp + 0x38]
push 1
push eax
call fcn.00446800
add esp, 8
test eax, eax
je 0x468293
mov esi, 0x16
jmp 0x468325
lea ecx, [esp + 8]
push 0
push ecx
call fcn.00446800
add esp, 8
cmp eax, 0xffffffff
jne 0x4682d1
lea edx, [esp + 8]
push edx
mov eax, edx
push edi
push eax
call fcn.00446c50
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x468325
push eax
lea ecx, [esp + 0xc]
push ecx
call fcn.00446800
add esp, 8
cmp eax, 0xffffffff
je 0x4682a7
lea edx, [esp + 8]
push edi
push edx
call fcn.00465c10
add esp, 8
cmp eax, 0xffffffff
je 0x46830e
lea eax, [esp + 8]
push eax
mov ecx, eax
push edi
push ecx
call fcn.00446dd0
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x468325
lea edx, [esp + 8]
push edi
push edx
call fcn.00465c10
add esp, 8
cmp eax, 0xffffffff
jne 0x4682e4
mov eax, dword [esp + 0x94]
push eax
lea ecx, [esp + 0xc]
push ecx
call fcn.00467be0
add esp, 8
xor esi, esi
push 0
lea edx, [esp + 0x1c]
push edx
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x64]
push ecx
lea edx, [esp + 0x38]
push edx
lea eax, [esp + 0x4c]
push eax
lea ecx, [esp + 0x60]
push ecx
lea edx, [esp + 0x84]
push edx
lea eax, [esp + 0x98]
push eax
call fcn.00467dc0
add esp, 0x24
mov eax, esi
pop esi
pop edi
add esp, 0x80
ret
mov eax, 0x16
pop edi
add esp, 0x80
ret
sub esp, 0x60
push ebp
mov ebp, dword [esp + 0x6c]
cmp dword [ebp], 0
jle 0x4683a0
mov eax, dword [ebp + 0xc]
test byte [eax], 1
jne 0x4683a0
mov eax, 0x16
pop ebp
add esp, 0x60
ret
push 0
lea ecx, [esp + 8]
push ecx
lea edx, [esp + 0x3c]
push edx
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x34]
push ecx
lea edx, [esp + 0x68]
push edx
lea eax, [esp + 0x5c]
push eax
call fcn.00467df0
add esp, 0x1c
test eax, eax
jne 0x468649
push esi
lea ecx, [esp + 0x48]
push ecx
push ebp
call fcn.004466b0
mov esi, eax
add esp, 8
test esi, esi
jne 0x46861e
push edi
mov edi, dword [esp + 0x70]
lea edx, [esp + 0x5c]
push edx
push ebp
push edi
call fcn.00467e60
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x46861d
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x50]
push ecx
call fcn.004466b0
mov esi, eax
add esp, 8
test esi, esi
jne 0x46861d
lea edx, [esp + 0x1c]
push edx
lea eax, [esp + 0x60]
push eax
call fcn.004466b0
mov esi, eax
add esp, 8
test esi, esi
jne 0x46861d
lea ecx, [esp + 0xc]
push 1
push ecx
call fcn.004686f0
add esp, 8
mov edi, edi
mov eax, dword [esp + 0x2c]
test eax, eax
jle 0x4684c6
mov edx, dword [esp + 0x38]
test byte [edx], 1
jne 0x4684c6
lea eax, [esp + 0x2c]
push eax
mov ecx, eax
push ecx
call fcn.00447690
mov esi, eax
add esp, 8
test esi, esi
jne 0x46861d
mov eax, dword [esp + 0x3c]
test eax, eax
jle 0x4684ab
mov edx, dword [esp + 0x48]
test byte [edx], 1
je 0x4684ab
lea eax, [esp + 0x3c]
push eax
lea ecx, [esp + 0x50]
push ecx
mov edx, eax
push edx
call fcn.00446dd0
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x46861d
lea eax, [esp + 0x3c]
push eax
mov ecx, eax
push ecx
call fcn.00447690
mov esi, eax
add esp, 8
test esi, esi
je 0x468450
jmp 0x46861d
mov eax, dword [esp + 0x1c]
test eax, eax
jle 0x46853c
mov edx, dword [esp + 0x28]
test byte [edx], 1
jne 0x46853c
lea eax, [esp + 0x1c]
push eax
mov ecx, eax
push ecx
call fcn.00447690
mov esi, eax
add esp, 8
test esi, esi
jne 0x46861d
mov eax, dword [esp + 0xc]
test eax, eax
jle 0x468521
mov edx, dword [esp + 0x18]
test byte [edx], 1
je 0x468521
lea eax, [esp + 0xc]
push eax
lea ecx, [esp + 0x50]
push ecx
mov edx, eax
push edx
call fcn.00446dd0
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x46861d
lea eax, [esp + 0xc]
push eax
mov ecx, eax
push ecx
call fcn.00447690
mov esi, eax
add esp, 8
test esi, esi
je 0x4684c6
jmp 0x46861d
lea edx, [esp + 0x1c]
push edx
lea eax, [esp + 0x30]
push eax
call fcn.004467c0
add esp, 8
cmp eax, 0xffffffff
je 0x46857e
lea ecx, [esp + 0x2c]
push ecx
lea edx, [esp + 0x20]
push edx
mov eax, ecx
push eax
call fcn.00446dd0
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x46861d
lea ecx, [esp + 0x3c]
lea edx, [esp + 0xc]
mov eax, ecx
jmp 0x4685a7
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0x30]
push edx
mov eax, ecx
push eax
call fcn.00446dd0
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x46861d
lea ecx, [esp + 0xc]
lea edx, [esp + 0x3c]
mov eax, ecx
push ecx
push edx
push eax
call fcn.00446dd0
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x46861d
mov eax, dword [esp + 0x2c]
test eax, eax
jne 0x468456
lea ecx, [esp + 0x1c]
push 1
push ecx
call fcn.00446800
add esp, 8
test eax, eax
je 0x4685de
mov esi, 0x16
jmp 0x46861d
cmp dword [esp + 0x14], 1
mov edi, dword [edi + 8]
jne 0x468606
lea edx, [esp + 0xc]
push edx
mov eax, edx
push ebp
push eax
call fcn.00446c50
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x46861d
cmp dword [esp + 0x14], 1
je 0x4685e8
mov esi, dword [esp + 0x78]
lea ecx, [esp + 0xc]
push esi
push ecx
call fcn.00467be0
add esp, 8
mov dword [esi + 8], edi
xor esi, esi
pop edi
push 0
lea edx, [esp + 0xc]
push edx
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0x24]
push ecx
lea edx, [esp + 0x38]
push edx
lea eax, [esp + 0x6c]
push eax
lea ecx, [esp + 0x60]
push ecx
call fcn.00467dc0
add esp, 0x1c
mov eax, esi
pop esi
pop ebp
add esp, 0x60
ret