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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x10]
cmp eax, dword [ecx + 8]
jbe 0x4a8b4d
sub esp, 0x90
mov dword [0xbb5b64], 5
mov ecx, dword [0xbc7270]
test ecx, ecx
jne 0x4a8aff
lea eax, [0x7dcab3]
mov dword [0xbb5b60], eax
mov eax, dword [esp + 0x94]
movzx ecx, word [eax + 0x46]
test cx, cx
jbe 0x4a8af5
mov ecx, 2
mov dword [esp + 0x2c], ecx
lea eax, [0x7a1ba0]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.00438c00
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
mov dword [0xbb5b6c], ecx
mov dword [0xbb5b70], eax
mov eax, dword [0xbc7270]
test eax, eax
jne 0x4a8ae3
mov dword [0xbb5b68], edx
mov eax, dword [esp + 0x94]
mov dword [esp], eax
call fcn.004a8220
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov ebx, dword [esp + 4]
mov ebp, dword [0xbb5b6c]
mov edi, dword [0xbb5b68]
test ebp, ebp
jbe 0x4a8b46
mov dword [edi + 4], edx
mov edx, dword [0xbc7270]
test edx, edx
jne 0x4a8ad3
mov dword [edi], ebx
mov edx, dword [esp + 0x2c]
cmp edx, 1
je 0x4a89e7
mov edx, dword [esp + 0x94]
mov ebx, dword [edx + 0x54]
add ebx, dword [edx]
neg ebx
imul ebx, ebx, 0x3c
mov dword [edi + 8], ebx
mov ebx, dword [0xbb5b6c]
mov ebp, dword [0xbb5b68]
cmp ebx, 1
jbe 0x4a8b31
lea ebx, [ebp + 0x10]
test byte [ebx], al
mov dword [ebp + 0x14], eax
mov ebx, dword [0xbc7270]
test ebx, ebx
jne 0x4a89d8
mov dword [ebp + 0x10], ecx
mov eax, dword [edx + 0xa8]
add eax, dword [edx]
neg eax
imul eax, eax, 0x3c
mov dword [ebp + 0x18], eax
mov byte [ebp + 0x1c], 1
lea eax, [edx + 0x44]
test byte [eax], al
lea ecx, [edx + 0x98]
test byte [ecx], al
movzx ebx, word [edx + 0x46]
mov word [esp + 0x1e], bx
movzx edx, word [edx + 0x9a]
mov word [esp + 0x1c], dx
cmp bx, dx
jbe 0x4a89cd
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], ecx
lea edx, [0x7a7440]
mov dword [esp], edx
mov dword [esp + 4], 0x190
mov dword [esp + 8], 0x190
call fcn.00438c00
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov dword [0xbb5b78], edx
mov dword [0xbb5b7c], ecx
mov ecx, dword [0xbc7270]
test ecx, ecx
jne 0x4a89bd
mov dword [0xbb5b74], eax
call fcn.004a4f50
lea edi, [esp + 0x68]
mov esi, esp
call fcn.0044d1fe
lea edi, [esp + 0x54]
xor eax, eax
call fcn.0044cd1b
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x68]
mov edx, eax
shr eax, 0x1f
shl eax, 0x1f
test eax, eax
je 0x4a87ec
shl edx, 1
mov eax, ecx
shr ecx, 0x1f
or ecx, edx
shl eax, 1
shr eax, 0x1f
mov edx, ecx
shl ecx, 1
or ecx, eax
mov eax, ecx
add ecx, 0xd7b17f80
mov dword [esp + 0x70], ecx
shr edx, 0x1f
add eax, 0xd7b17f80
adc edx, 0xd
mov dword [esp + 0x74], edx
mov eax, dword [esp + 0x68]
and eax, 0x3fffffff
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], 0
mov dword [esp + 0x78], 0
lea edi, [esp + 0x54]
lea esi, [esp + 0x68]
call fcn.0044d1fe
lea edi, [esp + 0x7c]
lea esi, [esp + 0x54]
call fcn.0044d1fe
mov edi, esp
lea esi, [esp + 0x7c]
call fcn.0044d1fe
call fcn.004a32b0
movzx eax, word [esp + 0x1e]
movzx ecx, word [esp + 0x1c]
cmp ax, cx
seta dl
mov byte [esp + 0x1b], dl
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x20], ebx
lea ebp, [ebx - 0x64]
cmp ax, cx
setbe al
mov byte [esp + 0x1a], al
movzx ecx, al
mov dword [esp + 0x30], ecx
mov esi, eax
movzx eax, dl
mov dword [esp + 0x34], eax
mov edi, dword [esp + 0x4c]
mov dword [esp + 0x40], eax
xor eax, eax
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x40]
jmp 0x4a88cf
shl ebp, 4
mov ebx, dword [ebp + ebx + 8]
mov ebp, ecx
sub ecx, ebx
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x50]
mov dword [edi + esi*4 + 0xc], ecx
mov ecx, ebx
sar ebx, 0x1f
sub ebp, ecx
sbb eax, ebx
mov dword [edi + esi*4 + 0x10], eax
movzx esi, byte [esp + 0x1a]
mov eax, dword [esp + 0x3c]
xchg esi, ebx
mov byte [eax + edi + 0x14], bl
xchg esi, ebx
mov eax, dword [esp + 0x24]
lea ebp, [eax + 1]
mov eax, dword [esp + 0x28]
add eax, 2
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 0x4c]
mov ecx, dword [esp + 0x30]
movzx edx, byte [esp + 0x1b]
mov ebx, dword [esp + 0x20]
mov edi, dword [esp + 0x4c]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x34]
add ebx, 0x64
cmp ebp, ebx
jge 0x4a89b6
mov ebx, dword [0xbb5b74]
mov esi, dword [0xbb5b78]
mov eax, dword [esp + 0x28]
cmp eax, esi
jae 0x4a8b2a
mov dword [esp + 0x24], ebp
mov dword [esp + 0x50], ebx
mov dword [esp], ebp
mov dword [esp + 4], edi
call fcn.004a83d0
mov eax, dword [esp + 0x28]
lea ecx, [eax + eax*2]
mov edx, dword [esp + 8]
mov ebx, dword [esp + 0xc]
mov ebp, dword [0xbb5b68]
mov esi, dword [0xbb5b6c]
mov edi, dword [esp + 0x30]
cmp edi, esi
jae 0x4a8b23
shl edi, 4
mov ebp, dword [edi + ebp + 8]
mov edi, edx
sub edx, ebp
mov esi, dword [esp + 0x50]
mov dword [esi + ecx*4], edx
mov edx, ebp
sar ebp, 0x1f
sub edi, edx
sbb ebx, ebp
mov dword [esi + ecx*4 + 4], ebx
mov edx, ecx
shl ecx, 2
movzx ebx, byte [esp + 0x1b]
mov byte [esi + ecx + 8], bl
lea ebp, [eax + 1]
mov esi, dword [0xbb5b78]
mov edi, dword [0xbb5b74]
cmp ebp, esi
jae 0x4a8b1c
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x50], edi
mov dword [esp + 0x38], edx
mov eax, dword [esp + 0x24]
mov dword [esp], eax
mov ecx, dword [esp + 0x48]
mov dword [esp + 4], ecx
call fcn.004a83d0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov edx, dword [0xbb5b6c]
mov ebx, dword [0xbb5b68]
mov ebp, dword [esp + 0x34]
cmp ebp, edx
jb 0x4a886b
jmp 0x4a8b15
add esp, 0x90
ret
lea edi, [0xbb5b74]
call fcn.0044cc20
jmp 0x4a8779
mov ebp, ecx
mov ecx, eax
mov eax, ebp
jmp 0x4a8727
lea edi, [ebp + 0x10]
mov eax, ecx
call fcn.0044cc20
jmp 0x4a86e8
mov ecx, dword [esp + 0x94]
mov ecx, dword [ecx]
neg ecx
imul ecx, ecx, 0x3c
mov dword [edi + 8], ecx
mov dword [0xbb5b80], 0
mov dword [0xbb5b84], 0x80000000
mov dword [0xbb5b88], 0xffffffff
mov dword [0xbb5b8c], 0x7fffffff
mov ecx, dword [0xbc7270]
test ecx, ecx
jne 0x4a8ac1
mov dword [0xbb5b90], edi
lea eax, [0x7a7440]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.00438c00
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
mov dword [0xbb5b78], ecx
mov dword [0xbb5b7c], eax
mov eax, dword [0xbc7270]
test eax, eax
jne 0x4a8ab2
mov dword [0xbb5b74], edx
mov eax, dword [0xbb5b80]
mov ebx, dword [0xbb5b84]
test ecx, ecx
jbe 0x4a8b3f
mov dword [edx], eax
mov dword [edx + 4], ebx
mov eax, dword [0xbb5b74]
mov ecx, dword [0xbb5b78]
test ecx, ecx
jbe 0x4a8b38
mov byte [eax + 8], 0
add esp, 0x90
ret
lea edi, [0xbb5b74]
mov eax, edx
call fcn.0044cc20
jmp 0x4a8a7a
mov eax, edi
lea edi, [0xbb5b90]
call fcn.0044cc20
jmp 0x4a8a34
mov edx, eax
mov eax, ebx
call fcn.0044cc20
mov eax, edx
jmp 0x4a8699
lea edi, [0xbb5b68]
mov eax, edx
call fcn.0044cc20
jmp 0x4a8653
mov ecx, 1
jmp 0x4a860d
lea edi, [0xbb5b60]
lea eax, [0x7dcab3]
call fcn.0044cc20
jmp 0x4a85f4
call fcn.00426630
ud2
call fcn.00426630
ud2
call fcn.00426630
ud2
call fcn.00426630
ud2
call fcn.00426630
ud2
call fcn.00426630
ud2
call fcn.00426630
ud2
call fcn.00426630
ud2
call fcn.0044b4c0
jmp fcn.004a85b0