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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4b1acd
sub esp, 0x58
lea eax, [0x73bec0]
mov dword [esp], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x64]
mov dword [esp + 8], ecx
call fcn.004092b0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
test ecx, ecx
jne 0x4b1803
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov eax, dword [esp + 0x60]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x54], eax
lea eax, [0x744040]
mov dword [esp], eax
lea eax, [esp + 0x50]
mov dword [esp + 4], eax
call fcn.00408e50
mov eax, dword [esp + 8]
lea ecx, [0x7caadc]
mov dword [esp + 0x48], eax
mov dword [esp + 0x34], ecx
mov edx, dword [esp + 0x5c]
mov ebx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x68]
xor esi, esi
xor edi, edi
xor esi, esi
mov dword [esp + 0x4c], esi
xor esi, esi
mov dword [esp + 0x2c], esi
xor esi, esi
xchg esi, eax
mov byte [esp + 0x22], al
xchg esi, eax
xor esi, esi
mov dword [esp + 0x28], esi
jmp 0x4b1843
mov edi, dword [esp + 0x38]
mov dword [esp + 0x2c], ebp
mov ebp, dword [esp + 0x68]
mov dword [esp + 0x40], esi
mov esi, dword [esp + 0x2c]
cmp ebx, esi
jl 0x4b1a4d
mov dword [esp + 0x3c], edi
je 0x4b18bf
mov edi, dword [edx + 8]
test edi, edi
jne 0x4b18b7
cmp ebx, esi
jbe 0x4b1ac3
movzx edi, byte [ebp + esi]
movzx edi, byte [edx + edi + 0x28]
cmp dword [edx + 0x24], edi
je 0x4b1894
mov ebp, dword [edx + 0x1c]
mov edx, dword [edx + 0x18]
cmp ebp, edi
jbe 0x4b1aba
mov edx, dword [edx + edi*4]
test edx, edx
jne 0x4b18ab
mov edx, dword [esp + 0x5c]
mov ebp, dword [esp + 0x68]
mov edi, ebp
lea ebp, [esi + 1]
mov esi, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x38], esi
mov esi, dword [esp + 0x40]
jmp 0x4b1837
cmp ebx, esi
mov edx, dword [esp + 0x5c]
mov ebp, dword [esp + 0x68]
jmp 0x4b18b9
cmp ebx, esi
jb 0x4b1ab1
mov dword [esp], edx
sub ebx, esi
mov ecx, ebx
neg ebx
sar ebx, 0x1f
and ebx, esi
add ebx, ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
movzx ecx, byte [esp + 0x22]
mov byte [esp + 0xc], cl
call fcn.004b1030
movzx eax, byte [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
test al, al
je 0x4b1907
test ecx, ecx
xchg ebp, ebx
sete bl
xchg ebp, ebx
test al, al
jmp 0x4b190c
mov ebp, 0
jne 0x4b1944
mov edx, dword [esp + 0x2c]
inc edx
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x34]
mov ebx, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
mov esi, dword [esp + 0x40]
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x38], eax
xchg ebp, eax
mov byte [esp + 0x22], al
xchg ebp, eax
mov ebp, edx
mov eax, dword [esp + 0x48]
mov edx, dword [esp + 0x5c]
jmp 0x4b1837
mov eax, dword [esp + 0x28]
mov esi, dword [esp + 0x2c]
cmp eax, esi
ja 0x4b1aaa
mov dword [esp + 0x30], ecx
xchg ebp, eax
mov byte [esp + 0x23], al
xchg ebp, eax
mov dword [esp + 0x24], ebx
mov dword [esp + 0x44], edx
mov ecx, dword [esp + 0x34]
mov edx, dword [ecx + 0x10]
mov ebx, dword [esp + 0x48]
mov dword [esp], ebx
sub esi, eax
mov edi, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and eax, esi
mov esi, dword [esp + 0x68]
add eax, esi
mov dword [esp + 4], eax
mov dword [esp + 8], edi
call edx
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x40]
add eax, ecx
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
test ecx, ecx
jne 0x4b1a3d
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x34]
mov ecx, dword [eax + 0x10]
mov edx, dword [esp + 0x48]
mov dword [esp], edx
mov ebx, dword [esp + 0x44]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x24]
mov dword [esp + 8], ebx
call ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x40]
add edx, ebx
mov ebx, dword [esp + 0x10]
test eax, eax
jne 0x4b1a2d
mov ebx, dword [esp + 0x2c]
mov ebp, edx
mov edx, dword [esp + 0x30]
add edx, ebx
mov ebx, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
mov esi, ebp
mov dword [esp + 0x38], eax
mov dword [esp + 0x4c], ecx
mov ebp, edx
movzx edx, byte [esp + 0x23]
mov byte [esp + 0x22], dl
mov dword [esp + 0x28], ebp
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x5c]
jmp 0x4b1837
mov dword [esp + 0x70], edx
mov dword [esp + 0x74], ebx
mov dword [esp + 0x78], ecx
add esp, 0x58
ret
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], edx
mov dword [esp + 0x78], ebx
add esp, 0x58
ret
mov edx, dword [esp + 0x28]
cmp ebx, edx
je 0x4b1a89
jb 0x4b1aa1
mov ecx, dword [ecx + 0x10]
mov dword [esp], eax
sub ebx, edx
mov eax, ebx
neg ebx
sar ebx, 0x1f
and edx, ebx
add edx, ebp
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call ecx
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x40]
lea esi, [ecx + eax]
mov edi, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
jmp 0x4b1a91
mov esi, dword [esp + 0x40]
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x70], esi
mov dword [esp + 0x74], edi
mov dword [esp + 0x78], eax
add esp, 0x58
ret
mov eax, edx
mov ecx, ebx
call fcn.00456ba0
mov ecx, esi
call fcn.00456ba0
mov eax, esi
mov ecx, ebx
call fcn.00456ba0
mov eax, edi
mov ecx, ebp
call fcn.00456b40
mov eax, esi
mov ecx, ebx
call fcn.00456b40
nop
call fcn.00455690
jmp fcn.004b1780