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

Disassembly:
sub esp, 0x34
push ebx
mov ebx, dword [esp + 0x3c]
push ebp
push esi
push edi
mov edi, dword [esp + 0x5c]
test edi, edi
mov dword [esp + 0x10], 0
jne 0x46c35d
push 0
lea eax, [esp + 0x18]
push 0x10000
push eax
push ebx
call fcn.0046c5b0
add esp, 0x10
cmp eax, 0xffffff80
jne 0x46c342
cmp edx, 0xffffffff
jne 0x46c342
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x34
ret
test edx, edx
jg 0x46c359
jl 0x46c34c
test eax, eax
jae 0x46c359
pop edi
pop esi
pop ebp
mov eax, 0xffffff7c
pop ebx
add esp, 0x34
ret
lea edi, [esp + 0x14]
mov ecx, dword [esp + 0x4c]
push ecx
call fcn.0046def0
mov edx, dword [esp + 0x54]
push edx
call fcn.0046de60
push edi
mov dword [ebx + 0x58], 2
call fcn.0047dbf0
add esp, 0xc
test eax, eax
je 0x46c4d5
mov ebp, dword [esp + 0x54]
test ebp, ebp
je 0x46c3b8
mov esi, dword [esp + 0x58]
mov ecx, dword [ebp]
mov eax, dword [esi]
push eax
push ecx
push edi
call fcn.0046c750
add esp, 0xc
test eax, eax
jne 0x46c477
push esi
push ebp
push edi
call fcn.0046c6f0
add esp, 0xc
cmp dword [ebx + 0x58], 3
jge 0x46c41a
push edi
lea esi, [ebx + 0x78]
call fcn.0047dcf0
push eax
push esi
call fcn.0047e640
push edi
push esi
call fcn.0047e280
lea edx, [esp + 0x38]
push edx
push esi
call fcn.0047e670
add esp, 0x1c
test eax, eax
jle 0x46c41a
lea eax, [esp + 0x24]
push eax
call fcn.0046e090
add esp, 4
test eax, eax
je 0x46c41a
mov edx, dword [esp + 0x50]
mov eax, dword [esp + 0x4c]
lea ecx, [esp + 0x24]
mov dword [ebx + 0x58], 3
push ecx
push edx
push eax
call fcn.0046e140
add esp, 0xc
test eax, eax
jne 0x46c494
push 0
push 0x10000
push edi
push ebx
call fcn.0046c5b0
add esp, 0x10
cmp eax, 0xffffff80
jne 0x46c439
cmp edx, 0xffffffff
je 0x46c4c1
test edx, edx
jl 0x46c4db
jg 0x46c44b
test eax, eax
jb 0x46c4db
cmp dword [ebx + 0x58], 3
jne 0x46c464
push edi
call fcn.0047dcf0
mov ecx, dword [ebx + 0x1c8]
add esp, 4
cmp ecx, eax
je 0x46c4c8
push edi
call fcn.0047dbf0
add esp, 4
test eax, eax
jne 0x46c38d
jmp 0x46c4d5
mov eax, dword [ebp]
test eax, eax
je 0x46c487
push eax
call fcn.00450c17
add esp, 4
mov dword [ebp], 0
mov dword [esi], 0
mov esi, 0xffffff7b
mov eax, dword [esp + 0x4c]
push eax
call fcn.0046df20
mov ecx, dword [esp + 0x54]
push ecx
call fcn.0046de80
add esp, 8
mov eax, esi
mov dword [ebx + 0x58], 2
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x34
ret
mov esi, 0xffffff80
jmp 0x46c499
lea ecx, [ebx + 0x78]
push edi
push ecx
call fcn.0047e280
add esp, 8
cmp dword [ebx + 0x58], 3
je 0x46c4e2
mov esi, 0xffffff7c
jmp 0x46c499
xor ebp, ebp
cmp ebp, 2
jge 0x46c59f
lea edx, [esp + 0x24]
lea eax, [ebx + 0x78]
push edx
push eax
call fcn.0047e670
add esp, 8
test eax, eax
je 0x46c530
cmp eax, 0xffffffff
je 0x46c494
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x4c]
lea eax, [esp + 0x24]
push eax
push ecx
push edx
call fcn.0046e140
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x46c499
inc ebp
cmp ebp, 2
jge 0x46c59f
jmp 0x46c4ed
cmp ebp, 2
jge 0x46c59f
push 0
push 0x10000
push edi
push ebx
call fcn.0046c5b0
add esp, 0x10
test edx, edx
jl 0x46c494
jg 0x46c558
test eax, eax
jb 0x46c494
push edi
call fcn.0047dcf0
mov ecx, dword [ebx + 0x1c8]
add esp, 4
cmp ecx, eax
push edi
je 0x46c58e
call fcn.0047dbf0
add esp, 4
test eax, eax
je 0x46c535
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x46c494
mov dword [esp + 0x10], 1
jmp 0x46c535
lea eax, [ebx + 0x78]
push eax
call fcn.0047e280
add esp, 8
jmp 0x46c4e4
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x34
ret