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

Disassembly:
push edi
push esi
push ebp
push ebx
sub esp, 0x60
mov dword [esp + 0x38], eax
test eax, eax
je 0x43b948
mov ebx, dword [eax + 0x34]
mov dword [esp + 0x30], ebx
test edx, edx
je 0x43b93d
mov eax, dword [edx + 0x34]
mov dword [esp + 0x2c], eax
movsx eax, cl
mov dword [esp + 0x3c], eax
test eax, eax
je 0x43b609
mov dword [esp + 0x38], edx
mov eax, dword [esp + 0x38]
mov edx, dword [eax + 0x34]
mov dword [esp + 0x34], edx
call fcn.00408764
mov eax, dword [esp + 0x30]
mov ebx, dword [eax + 0x78]
mov dword [esp + 0x54], ebx
mov ebx, dword [eax + 0x7c]
mov edx, dword [eax + 0x90]
mov dword [esp + 0x40], edx
test ebx, ebx
jle 0x43b924
mov ebp, 0xffffffff
mov edx, 0xffffffff
mov edi, 0xffffffff
mov esi, 0xffffffff
xor eax, eax
xor ecx, ecx
mov dword [esp + 0x50], ebp
mov dword [esp + 0x4c], esi
mov dword [esp + 0x48], edx
mov dword [esp + 0x44], eax
mov edx, dword [esp + 0x40]
mov ebp, dword [esp + 0x54]
mov esi, ebp
imul esi, ecx
add esi, esi
add esi, esi
test ebp, ebp
jle 0x43b90a
xor eax, eax
add esi, edx
mov dword [esp + 0x58], esi
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x28], ebx
mov edx, dword [esp + 0x50]
mov ecx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 0x44]
mov esi, dword [esp + 0x58]
movzx esi, byte [esi + eax*4 + 3]
test esi, esi
je 0x43b6d8
test ebp, ebp
je 0x43b6c9
cmp eax, edx
jge 0x43b6b1
mov edx, eax
mov esi, dword [esp + 0x5c]
cmp esi, ebx
jge 0x43b6bb
mov ebx, esi
cmp eax, edi
jle 0x43b6c1
mov edi, eax
cmp esi, ecx
jle 0x43b6d8
mov ecx, esi
jmp 0x43b6d8
mov edx, eax
mov ebx, dword [esp + 0x5c]
mov edi, eax
mov ecx, ebx
mov ebp, 1
inc eax
mov esi, dword [esp + 0x54]
cmp eax, esi
jl 0x43b69a
mov dword [esp + 0x50], edx
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x44], ebp
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x40]
mov ebx, dword [esp + 0x28]
mov ebp, esi
inc ecx
cmp ecx, ebx
jl 0x43b669
mov ebp, dword [esp + 0x50]
mov esi, dword [esp + 0x4c]
mov edx, dword [esp + 0x48]
movsx eax, byte [esp + 0x80]
test al, 8
jne 0x43b722
xor edx, edx
movsx eax, byte [esp + 0x80]
test al, 4
jne 0x43b731
lea esi, [ebx - 1]
movsx eax, byte [esp + 0x80]
test al, 2
jne 0x43b73f
xor ebp, ebp
movsx eax, byte [esp + 0x80]
test al, 1
jne 0x43b752
mov eax, dword [esp + 0x54]
lea edi, [eax - 1]
mov eax, edi
sub eax, ebp
lea ecx, [eax + 1]
mov dword [esp + 0x5c], ecx
mov ebx, esi
sub ebx, edx
inc ebx
mov dword [esp + 0x44], ebx
mov ecx, dword [esp + 0x3c]
test ecx, ecx
je 0x43b79d
mov ebx, dword [esp + 0x34]
mov ecx, dword [esp + 0x5c]
cmp ecx, dword [ebx + 0x78]
jne 0x43b79d
mov ecx, dword [esp + 0x44]
cmp ecx, dword [ebx + 0x7c]
jne 0x43b79d
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 0x90]
mov dword [esp + 0x58], ecx
mov ebx, 1
mov dword [esp + 0x54], ebx
jmp 0x43b7e0
lea ebx, [eax*4 + 4]
mov ecx, dword [esp + 0x5c]
cmp ecx, 0x2000
jg 0x43b8c9
imul ebx, dword [esp + 0x44]
lea eax, [ebx + eax*4 + 8]
push eax
mov dword [esp + 0x4c], edx
call fcn.00466ddc
mov edx, dword [esp + 0x4c]
add esp, 4
mov dword [esp + 0x58], eax
test eax, eax
je 0x43b888
xor eax, eax
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x58]
test eax, eax
je 0x43b953
mov ecx, dword [esp + 0x30]
movzx ebx, byte [ecx + 0x86]
mov eax, dword [esp + 0x34]
mov byte [eax + 0x86], bl
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], esi
mov esi, dword [ecx + 0x78]
mov dword [esp + 0x18], esi
mov edi, dword [ecx + 0x7c]
mov dword [esp + 0x1c], edi
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x58]
mov edx, dword [ecx + 0x90]
mov ecx, ebp
call fcn.0043b96c
mov eax, dword [esp + 0x54]
test eax, eax
jne 0x43b87e
mov eax, dword [esp + 0x34]
mov eax, dword [eax + 0x90]
test eax, eax
je 0x43b859
push eax
call fcn.0046703f
pop ecx
mov ebp, dword [esp + 0x34]
mov edx, dword [esp + 0x58]
mov dword [ebp + 0x90], edx
mov ecx, dword [esp + 0x5c]
mov dword [ebp + 0x78], ecx
mov ebx, dword [esp + 0x44]
mov dword [ebp + 0x7c], ebx
mov eax, dword [esp + 0x38]
call fcn.00408764
xor eax, eax
add esp, 0x60
pop ebx
pop ebp
pop esi
pop edi
ret
mov eax, dword [esp + 0x44]
push eax
mov ebx, dword [esp + 0x60]
push ebx
push 0
push 0x80742c
push 0x806270
mov dword [esp + 0x5c], edx
call fcn.00464d5c
mov edx, dword [esp + 0x5c]
push 0
push 1
push 0x1965e
mov dword [esp + 0x68], edx
call fcn.00463ec8
mov edx, dword [esp + 0x68]
add esp, 0x20
jmp 0x43b7da
mov eax, dword [esp + 0x44]
push eax
mov ebx, ecx
push ebx
push 0x807404
push 0x806270
mov dword [esp + 0x58], edx
call fcn.0040c5f0
mov edx, dword [esp + 0x58]
push 1
push 0x186aa
mov dword [esp + 0x60], edx
call fcn.00463f24
mov edx, dword [esp + 0x60]
add esp, 0x18
xor eax, eax
mov dword [esp + 0x58], eax
jmp 0x43b7da
inc ecx
cmp ecx, ebx
jl 0x43b669
mov ebp, dword [esp + 0x50]
mov esi, dword [esp + 0x4c]
mov edx, dword [esp + 0x48]
jmp 0x43b714
mov ebp, 0xffffffff
mov edx, 0xffffffff
mov edi, 0xffffffff
mov esi, 0xffffffff
jmp 0x43b714
xor eax, eax
mov dword [esp + 0x2c], eax
jmp 0x43b5fa
xor eax, eax
mov dword [esp + 0x30], eax
jmp 0x43b5eb
mov eax, 0xffffffff
add esp, 0x60
pop ebx
pop ebp
pop esi
pop edi
ret