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

Disassembly:
sub esp, 0x64
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0x80]
mov esi, dword [edi + 4]
mov eax, dword [edi + 8]
xor ebp, ebp
cmp esi, eax
jae 0x43c162
mov edi, edi
push eax
lea eax, [esp + 0x50]
push esi
push eax
call fcn.0043b5c0
mov edx, dword [esp + 0x60]
mov esi, eax
mov eax, dword [esp + 0x5c]
add esp, 0xc
mov dword [esp + 0x20], esi
mov ecx, eax
cmp eax, edx
jae 0x43c157
push edx
push ecx
lea ecx, [esp + 0x68]
push ecx
call fcn.0043b5c0
mov esi, dword [esp + 0x74]
mov edx, dword [esp + 0x70]
push esi
mov dword [esp + 0x2c], eax
push edx
lea eax, [esp + 0x38]
push eax
call fcn.0043b5c0
push esi
push eax
lea ecx, [esp + 0x58]
push ecx
call fcn.0043b5c0
add esp, 0x24
cmp dword [esp + 0x34], 0
jne case.0x43bf8a.7
movzx ecx, byte [esp + 0x31]
lea eax, [ecx - 1]
cmp eax, 0x1d
ja case.0x43bf8a.7
movzx edx, byte [eax + 0x43c1a0]
jmp dword [edx*4 + 0x43c178]
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x28]
sub ecx, eax
cmp ecx, 1
je 0x43bdfc
xor eax, eax
mov edi, eax
jmp 0x43beca
cmp byte [eax], 0
mov eax, str.TRUE
jne 0x43be0b
mov eax, str.FALSE
push eax
call dword [0x46c00c]
add esp, 4
mov edi, eax
jmp 0x43beca
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x28]
call fcn.0043b790
mov edi, eax
jmp 0x43beca
mov eax, dword [esp + 0x28]
mov ebx, dword [esp + 0x2c]
inc eax
cmp eax, ebx
jbe 0x43be4e
xor eax, eax
mov edi, eax
jmp 0x43beca
mov ebx, dword [esp + 0x2c]
mov eax, dword [esp + 0x28]
call fcn.0043b730
mov edi, eax
jmp 0x43beca
push 0x468e9c
call dword [0x46c00c]
add esp, 4
mov edi, eax
jmp 0x43beca
mov edx, dword [esp + 0x28]
mov ebx, dword [esp + 0x2c]
push 1
push edx
call fcn.0043bb20
add esp, 8
mov edi, eax
jmp 0x43beca
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x28]
call fcn.0043bcb0
mov edi, eax
jmp 0x43beca
mov eax, dword [esp + 0x2c]
mov edi, dword [esp + 0x28]
push eax
call fcn.0043bba0
add esp, 4
mov edi, eax
jmp 0x43beca
mov edx, dword [esp + 0x2c]
push edx
lea eax, [esp + 0x14]
push eax
mov eax, dword [esp + 0x30]
call fcn.0043b7e0
xor ecx, ecx
add esp, 8
test eax, eax
setl cl
dec ecx
and ecx, dword [esp + 0x10]
mov edi, ecx
test edi, edi
je case.0x43bf8a.7
test ebp, ebp
je 0x43bf2a
movsx edx, byte [edi]
push edx
mov esi, edi
call fcn.0044703a
add esp, 4
test eax, eax
je 0x43befa
movsx eax, byte [esi + 1]
inc esi
push eax
call fcn.0044703a
add esp, 4
test eax, eax
jne 0x43bee8
cmp byte [esi], 0
jne 0x43bf0b
sub esi, edi
cmp esi, 2
mov eax, 0x45c9a0
jle 0x43bf10
mov eax, 0x45ca2c
mov esi, dword [esp + 0x78]
mov ebx, dword [esp + 0x7c]
cmp ebp, ebx
jae 0x43bf21
mov cl, byte [eax]
mov byte [esi + ebp], cl
inc eax
inc ebp
cmp byte [eax], 0
jne 0x43bf18
jmp 0x43bf32
mov esi, dword [esp + 0x78]
mov ebx, dword [esp + 0x7c]
cmp byte [edi], 0
mov eax, edi
je 0x43bf50
lea esp, [esp]
cmp ebp, ebx
jae 0x43bf49
mov dl, byte [eax]
mov byte [esi + ebp], dl
inc eax
inc ebp
cmp byte [eax], 0
jne 0x43bf40
push edi
call dword [0x46c004]
add esp, 4
cmp ebp, ebx
jae 0x43bf62
mov byte [esi + ebp], 0x3d
inc ebp
cmp dword [esp + 0x48], 0
mov dword [esp + 0x14], ebp
jne case.0x43bf8a.7
movzx ecx, byte [esp + 0x45]
lea eax, [ecx - 1]
cmp eax, 0x1d
ja case.0x43bf8a.7
movzx eax, byte [eax + 0x43c1e8]
jmp dword [eax*4 + 0x43c1c0]
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x3c]
sub ecx, eax
cmp ecx, 1
je 0x43bfa7
xor eax, eax
jmp 0x43c10f
cmp byte [eax], 0
mov eax, str.TRUE
jne 0x43bfb6
mov eax, str.FALSE
push eax
call dword [0x46c00c]
add esp, 4
jmp 0x43c10f
mov ebx, dword [esp + 0x40]
mov eax, dword [esp + 0x3c]
mov edx, ebx
xor ecx, ecx
sub edx, eax
jne 0x43bfdc
xor eax, eax
jmp 0x43c10f
cmp edx, 4
jbe 0x43bfeb
call fcn.0043b730
jmp 0x43c10f
test byte [eax], 0x80
je 0x43bff3
or ecx, 0xffffffff
movzx edx, byte [eax]
shl ecx, 8
inc eax
or ecx, edx
cmp eax, ebx
jb 0x43bff3
mov eax, 0x468e9c
cmp ecx, 9
jbe 0x43c00f
mov eax, 0x466388
push ecx
push eax
push str._s_lx
call fcn.0041c0e0
add esp, 0xc
jmp 0x43c10f
mov eax, dword [esp + 0x3c]
mov ebx, dword [esp + 0x40]
inc eax
cmp eax, ebx
jbe 0x43c03f
xor eax, eax
jmp 0x43c10f
mov ebx, dword [esp + 0x40]
mov eax, dword [esp + 0x3c]
call fcn.0043b730
jmp 0x43c10f
push 0x468e9c
call dword [0x46c00c]
add esp, 4
jmp 0x43c10f
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x40]
xor edi, edi
cmp ebx, ebp
jae 0x43c0c1
push ebp
push ebx
push 0xffffffffffffffff
push edi
call fcn.0043b9e0
mov esi, eax
add esp, 0x10
test esi, esi
jl 0x43c0c1
lea eax, [esi + 1]
push eax
call dword [section..data]
mov edi, eax
add esp, 4
test edi, edi
je 0x43c0c1
push ebp
push ebx
push esi
push edi
call fcn.0043b9e0
add esp, 0x10
mov byte [esi + edi], 0
call fcn.0043b6d0
mov esi, eax
test esi, esi
je 0x43c0c1
push edi
call dword [0x46c004]
mov ecx, dword [esi + 4]
push ecx
call dword [0x46c00c]
add esp, 8
mov edi, eax
mov ebp, dword [esp + 0x14]
mov eax, edi
jmp 0x43c10f
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x3c]
call fcn.0043bcb0
jmp 0x43c10f
mov edx, dword [esp + 0x40]
mov edi, dword [esp + 0x3c]
push edx
call fcn.0043bba0
add esp, 4
jmp 0x43c10f
mov eax, dword [esp + 0x40]
push eax
mov eax, dword [esp + 0x40]
lea edx, [esp + 0x1c]
push edx
call fcn.0043b7e0
xor ecx, ecx
add esp, 8
test eax, eax
setl cl
dec ecx
and ecx, dword [esp + 0x18]
mov eax, ecx
test eax, eax
je case.0x43bf8a.7
cmp byte [eax], 0
mov ecx, eax
je 0x43c132
mov esi, dword [esp + 0x78]
mov edi, dword [esp + 0x7c]
cmp ebp, edi
jae 0x43c12b
mov dl, byte [ecx]
mov byte [esi + ebp], dl
inc ecx
inc ebp
cmp byte [ecx], 0
jne 0x43c122
push eax
call dword [0x46c004]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x58]
add esp, 4
cmp ecx, edx
jb 0x43bd87
mov esi, dword [esp + 0x20]
mov edi, dword [esp + 0x80]
mov eax, dword [edi + 8]
cmp esi, eax
jb 0x43bd60
pop edi
pop esi
mov eax, ebp
pop ebp
pop ebx
add esp, 0x64
ret
pop edi
pop esi
pop ebp
or eax, 0xffffffff
pop ebx
add esp, 0x64
ret