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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4b5037
sub esp, 0x60
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x78]
cmp eax, ecx
je 0x4b4f87
xor edx, edx
test dl, dl
je 0x4b4af9
mov eax, dword [esp + 0x64]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x84], eax
add esp, 0x60
ret
mov edx, dword [esp + 0x7c]
test edx, edx
je 0x4b4adf
mov ecx, dword [esp + 0x64]
mov dword [esp], ecx
mov edx, dword [esp + 0x68]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x6c]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
call fcn.004b4400
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b4f6d
mov ebx, dword [esp + 0x7c]
test ebx, ebx
jge 0x4b4f5e
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x5c], 0
nop
lea ebx, [esp + 0x50]
mov dword [esp + 0x50], ebx
mov ebp, dword [esp + 0x78]
mov esi, dword [esp + 0x70]
mov edi, ebp
sub ebp, esi
imul ebp, eax
mov ecx, dword [esp + 0x68]
add ebp, ecx
test ebp, ebp
jl 0x4b501e
mov dword [esp + 0x7c], eax
mov edx, edi
mov edi, dword [esp + 0x58]
mov ebx, dword [esp + 0x5c]
mov dword [esp + 0x30], ebx
sub ebx, edi
cmp ebp, ebx
jg 0x4b4edb
mov ebx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x64]
xor edi, edi
xor edi, edi
mov dword [esp + 0x20], edi
jmp 0x4b4c14
mov dword [esp + 0x38], ebp
mov dword [esp + 0x4c], esi
add eax, esi
mov dword [esp], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.0045aff0
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x24]
lea edi, [eax + 1]
mov esi, dword [esp + 0x70]
mov eax, dword [esp + 0x30]
add eax, esi
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x64]
mov edx, dword [esp + 0x78]
mov ebx, dword [esp + 0x6c]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x7c]
cmp edi, eax
jge 0x4b4dfe
mov dword [esp + 0x24], edi
test esi, esi
jne 0x4b4dc2
test edi, edi
jle 0x4b4db7
mov ebx, dword [esp + 0x20]
cmp ecx, ebx
jb 0x4b5017
sub ecx, ebx
mov edx, ecx
neg ecx
sar ecx, 0x1f
and ecx, ebx
add ecx, ebp
mov dword [esp], ecx
mov dword [esp + 4], edx
call fcn.0047f8f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x20]
add eax, ecx
mov edx, dword [esp + 0x68]
cmp eax, edx
ja 0x4b5009
cmp eax, ecx
jb 0x4b4ffe
mov ebx, eax
sub eax, ecx
mov ebp, eax
neg eax
sar eax, 0x1f
and ecx, eax
mov eax, dword [esp + 0x64]
add ecx, eax
nop
mov esi, dword [esp + 0x50]
test esi, esi
je 0x4b4daa
lea edi, [esp + 0x50]
cmp edi, esi
jne 0x4b4fe6
mov dword [esp + 0x30], ebx
mov esi, dword [esp + 0x58]
lea eax, [esi + ebp]
mov dword [esp + 0x3c], eax
mov edx, dword [esp + 0x5c]
mov ebx, dword [esp + 0x54]
cmp edx, eax
jb 0x4b4d67
mov dword [esp + 0x38], edx
mov dword [esp + 0x4c], ebx
lea eax, [ebx + esi]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
call fcn.0045aff0
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x54], eax
nop
nop
mov eax, dword [esp + 0x50]
test eax, eax
je 0x4b4d5d
lea ecx, [esp + 0x50]
cmp ecx, eax
jne 0x4b4fce
mov eax, dword [esp + 0x58]
mov edx, dword [esp + 0x78]
lea ebx, [edx + eax]
mov dword [esp + 0x3c], ebx
mov ebp, dword [esp + 0x5c]
mov esi, dword [esp + 0x54]
cmp ebp, ebx
jae 0x4b4bad
mov dword [esp + 0x38], eax
lea ecx, [0x51b4a0]
mov dword [esp], ecx
mov dword [esp + 4], esi
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.004427c0
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x78]
jmp 0x4b4bad
lea ecx, [esp + 0x50]
mov dword [esp + 0x50], ecx
jmp 0x4b4d07
mov dword [esp + 0x38], ebp
mov dword [esp + 0x40], ecx
mov dword [esp + 0x34], esi
lea ecx, [0x51b4a0]
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], eax
call fcn.004427c0
mov ebx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x40]
mov ebp, dword [esp + 0x38]
mov esi, dword [esp + 0x34]
jmp 0x4b4cbe
lea edi, [esp + 0x50]
mov dword [esp + 0x50], edi
jmp 0x4b4c9f
mov ecx, dword [esp + 0x20]
mov eax, ecx
jmp 0x4b4c5f
mov edi, dword [esp + 0x20]
cmp ecx, edi
jb 0x4b5010
sub ecx, edi
mov edx, ecx
neg ecx
sar ecx, 0x1f
and ecx, edi
add ecx, ebp
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
call fcn.004b5050
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x20]
add eax, ecx
jmp 0x4b4c5f
mov eax, dword [esp + 0x20]
cmp ecx, eax
jb 0x4b4fc9
sub ecx, eax
mov edx, ecx
neg ecx
sar ecx, 0x1f
and eax, ecx
add eax, ebp
nop
mov ecx, dword [esp + 0x50]
test ecx, ecx
je 0x4b4ece
lea ebx, [esp + 0x50]
cmp ebx, ecx
jne 0x4b4fb1
mov ecx, dword [esp + 0x58]
lea ebx, [ecx + edx]
mov dword [esp + 0x30], ebx
mov ebp, dword [esp + 0x5c]
mov esi, dword [esp + 0x54]
cmp ebp, ebx
jb 0x4b4e8b
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x4c], esi
add ecx, esi
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.0045aff0
mov eax, dword [esp + 0x30]
mov dword [esp + 0x58], eax
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x54], ecx
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], eax
add esp, 0x60
ret
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x38], edx
mov dword [esp + 0x44], eax
lea eax, [0x51b4a0]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.004427c0
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x38]
jmp 0x4b4e47
lea ecx, [esp + 0x50]
mov dword [esp + 0x50], ecx
jmp 0x4b4e30
mov dword [esp + 0x28], edi
lea eax, [0x51b4a0]
mov dword [esp], eax
mov dword [esp + 4], edi
mov ecx, dword [esp + 0x30]
lea ecx, [ebp + ecx*2]
mov dword [esp + 0x2c], ecx
mov dword [esp + 8], ecx
call fcn.00442650
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x58]
mov ebx, dword [esp + 0x28]
cmp edx, ebx
jge 0x4b4f5a
mov dword [esp + 0x48], eax
cmp eax, ecx
je 0x4b4f2d
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.0045aff0
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x58], ebx
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0x5c], ebx
mov ebx, dword [esp + 0x48]
mov dword [esp + 0x54], ebx
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x78]
mov esi, dword [esp + 0x70]
jmp 0x4b4b9b
mov edx, ebx
jmp 0x4b4f15
cmp ebx, eax
jg 0x4b4b39
mov eax, ebx
jmp 0x4b4b39
mov eax, dword [esp + 0x64]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x84], eax
add esp, 0x60
ret
mov ecx, dword [esp + 0x6c]
mov dword [esp], ecx
mov edx, dword [esp + 0x74]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.00402890
movzx edx, byte [esp + 0xc]
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x78]
jmp 0x4b4adb
lea eax, [0x51b2e0]
mov dword [esp], eax
lea eax, [0x567ce8]
mov dword [esp + 4], eax
call fcn.004308c0
call fcn.0045a760
lea eax, [0x51b2e0]
mov dword [esp], eax
lea eax, [0x567ce8]
mov dword [esp + 4], eax
call fcn.004308c0
lea eax, [0x51b2e0]
mov dword [esp], eax
lea eax, [0x567ce8]
mov dword [esp + 4], eax
call fcn.004308c0
mov edx, eax
mov eax, ecx
mov ecx, edx
call fcn.0045a760
mov ecx, eax
call fcn.0045a720
mov eax, edi
call fcn.0045a760
mov eax, ebx
call fcn.0045a760
lea eax, [0x51b2e0]
mov dword [esp], eax
lea eax, [0x567cf0]
mov dword [esp + 4], eax
call fcn.004308c0
nop
call fcn.00459120
jmp fcn.004b4ab0