Function at 0x4a8730
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 0x4a903a
sub esp, 0x90
xor ebx, ebx
mov dword [esp + 0xb4], ebx
mov dword [esp + 0xb8], ebx
mov dword [esp + 0xbc], ebx
mov dword [esp + 0xc0], ebx
mov ebx, dword [esp + 0xb0]
xor ebp, ebp
cmp ebx, ebp
jne 0x4a87c9
mov ebx, 0x600794
mov dword [esp + 0x88], ebx
mov dword [esp + 0x8c], 0x26
mov dword [esp], 0x5c4e00
lea ebx, [esp + 0x88]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0
call fcn.0040c410
lea ebx, [esp + 0xc]
cld
mov ecx, dword [ebx]
mov dword [esp], ecx
mov ecx, dword [ebx + 4]
mov dword [esp + 4], ecx
call fcn.0042a780
ud2
mov ecx, dword [esp + 0x98]
dec ecx
mov edi, dword [esp + 0x94]
mov esi, 0xc
cmp ecx, 0
jge 0x4a8827
mov ebp, ecx
xchg ebp, ebx
neg ebx
xchg ebp, ebx
mov dword [esp + 0x4c], ebp
mov ebx, dword [esp + 0x4c]
dec ebx
mov dword [esp + 0x48], eax
mov dword [esp + 0x44], edx
mov edx, ebx
mov eax, ebx
cmp esi, 0xffffffff
je 0x4a9031
cdq
idiv esi
mov ebp, eax
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x48]
mov ebx, ebp
inc ebx
sub edi, ebx
mov dword [esp + 0x4c], ecx
imul ebx, esi
add ebx, dword [esp + 0x4c]
mov ecx, ebx
cmp ecx, esi
jl 0x4a8864
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], edx
mov edx, ecx
mov eax, ecx
cmp esi, 0xffffffff
je 0x4a9026
cdq
idiv esi
mov dword [esp + 0x30], eax
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x44]
add edi, dword [esp + 0x30]
mov dword [esp + 0x4c], ecx
mov ebx, dword [esp + 0x30]
imul ebx, esi
mov ecx, dword [esp + 0x4c]
sub ecx, ebx
mov dword [esp + 0x94], edi
mov ebx, ecx
inc ebx
mov dword [esp + 0x98], ebx
mov edi, dword [esp + 0xa8]
mov ecx, dword [esp + 0xac]
mov esi, 0x3b9aca00
cmp ecx, 0
jge 0x4a88cc
mov ebp, ecx
xchg ebp, ebx
neg ebx
xchg ebp, ebx
mov dword [esp + 0x4c], ebp
mov ebx, dword [esp + 0x4c]
dec ebx
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], edx
mov edx, ebx
mov eax, ebx
cmp esi, 0xffffffff
je 0x4a901d
cdq
idiv esi
mov ebp, eax
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x44]
mov ebx, ebp
inc ebx
sub edi, ebx
imul ebx, esi
add ebx, ecx
mov ecx, ebx
cmp ecx, esi
jl 0x4a8909
mov dword [esp + 0x48], eax
mov dword [esp + 0x44], edx
mov edx, ecx
mov eax, ecx
cmp esi, 0xffffffff
je 0x4a9012
cdq
idiv esi
mov dword [esp + 0x38], eax
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x48]
add edi, dword [esp + 0x38]
mov ebp, dword [esp + 0x38]
mov dword [esp + 0x4c], ebp
mov ebx, dword [esp + 0x4c]
imul ebx, esi
sub ecx, ebx
mov ebp, edi
mov dword [esp + 0xac], ecx
mov edi, dword [esp + 0xa4]
mov ecx, ebp
mov esi, 0x3c
cmp ebp, 0
jge 0x4a8964
mov ebp, ecx
xchg ebp, ebx
neg ebx
xchg ebp, ebx
mov dword [esp + 0x40], ebp
mov ebx, dword [esp + 0x40]
dec ebx
mov dword [esp + 0x48], eax
mov dword [esp + 0x44], edx
mov edx, ebx
mov eax, ebx
cmp esi, 0xffffffff
je 0x4a9009
cdq
idiv esi
mov ebp, eax
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x48]
mov ebx, ebp
inc ebx
sub edi, ebx
imul ebx, esi
add ebx, ecx
mov ecx, ebx
cmp ecx, esi
jl 0x4a89a1
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], edx
mov edx, ecx
mov eax, ecx
cmp esi, 0xffffffff
je 0x4a8ffe
cdq
idiv esi
mov dword [esp + 0x3c], eax
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x44]
add edi, dword [esp + 0x3c]
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0x4c], ebp
mov ebx, dword [esp + 0x4c]
imul ebx, esi
sub ecx, ebx
mov ebp, edi
mov dword [esp + 0xa8], ecx
mov edi, dword [esp + 0xa0]
mov ecx, ebp
mov esi, 0x3c
cmp ebp, 0
jge 0x4a89fc
mov ebp, ecx
xchg ebp, ebx
neg ebx
xchg ebp, ebx
mov dword [esp + 0x40], ebp
mov ebx, dword [esp + 0x40]
dec ebx
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], edx
mov edx, ebx
mov eax, ebx
cmp esi, 0xffffffff
je 0x4a8ff5
cdq
idiv esi
mov ebp, eax
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x44]
mov ebx, ebp
inc ebx
sub edi, ebx
imul ebx, esi
add ebx, ecx
mov ecx, ebx
cmp ecx, esi
jl 0x4a8a39
mov dword [esp + 0x48], eax
mov dword [esp + 0x44], edx
mov edx, ecx
mov eax, ecx
cmp esi, 0xffffffff
je 0x4a8fea
cdq
idiv esi
mov dword [esp + 0x2c], eax
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x48]
add edi, dword [esp + 0x2c]
mov ebp, dword [esp + 0x2c]
mov dword [esp + 0x4c], ebp
mov ebx, dword [esp + 0x4c]
imul ebx, esi
sub ecx, ebx
mov ebp, edi
mov dword [esp + 0xa4], ecx
mov edi, dword [esp + 0x9c]
mov ecx, ebp
mov esi, 0x18
cmp ebp, 0
jge 0x4a8a94
mov ebp, ecx
xchg ebp, ebx
neg ebx
xchg ebp, ebx
mov dword [esp + 0x40], ebp
mov ebx, dword [esp + 0x40]
dec ebx
mov dword [esp + 0x48], eax
mov dword [esp + 0x44], edx
mov edx, ebx
mov eax, ebx
cmp esi, 0xffffffff
je 0x4a8fe1
cdq
idiv esi
mov ebp, eax
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x48]
mov ebx, ebp
inc ebx
sub edi, ebx
imul ebx, esi
add ebx, ecx
mov ecx, ebx
cmp ecx, esi
jl 0x4a8ac9
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], edx
mov edx, ecx
mov eax, ecx
cmp esi, 0xffffffff
je 0x4a8fd6
cdq
idiv esi
mov dword [esp + 0x34], eax
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x44]
add edi, dword [esp + 0x34]
mov ebx, dword [esp + 0x34]
imul ebx, esi
sub ecx, ebx
mov edx, edi
mov dword [esp + 0x9c], edi
mov dword [esp + 0xa0], ecx
mov eax, dword [esp + 0x94]
cdq
mov ebx, eax
sub ebx, 0xf2ee9141
sbb edx, 0xffffffbb
mov dword [esp + 0x50], ebx
mov dword [esp], ebx
mov dword [esp + 0x54], edx
mov dword [esp + 4], edx
mov dword [esp + 8], 0x190
mov dword [esp + 0xc], 0
call fcn.0044bdb0
mov edi, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x50]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x84], eax
mov eax, 0x190
xor edx, edx
mov ebp, edx
or ebp, ecx
jne 0x4a8fc1
mul edi
mov ebp, eax
mov ebx, edx
mov eax, dword [esp + 0x80]
mov edx, dword [esp + 0x84]
sub eax, ebp
sbb edx, ebx
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], edx
mov eax, 0x23ab1
xor edx, edx
mov ebp, edx
or ebp, ecx
jne 0x4a8fac
mul edi
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], edx
mov eax, dword [esp + 0x50]
mov dword [esp], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x64
mov dword [esp + 0xc], 0
call fcn.0044bdb0
mov edi, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x50]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x84], eax
mov eax, 0x64
xor edx, edx
mov ebp, edx
or ebp, ecx
jne 0x4a8f97
mul edi
mov ebp, eax
mov ebx, edx
mov eax, dword [esp + 0x80]
mov edx, dword [esp + 0x84]
sub eax, ebp
sbb edx, ebx
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], edx
mov eax, dword [esp + 0x70]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x84], eax
mov eax, 0x8eac
xor edx, edx
mov ebp, edx
or ebp, ecx
jne 0x4a8f82
mul edi
mov esi, dword [esp + 0x80]
mov ebp, dword [esp + 0x84]
add esi, eax
adc ebp, edx
mov ebx, dword [esp + 0x50]
mov ecx, dword [esp + 0x54]
shrd ebx, ecx, 2
shr ecx, 2
mov eax, dword [esp + 0x50]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x84], eax
mov eax, ebx
mov edi, ecx
shld edi, ebx, 2
shl eax, 2
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x80]
mov edx, dword [esp + 0x84]
sub eax, dword [esp + 0x78]
sbb edx, edi
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], edx
mov dword [esp + 0x80], esi
mov edi, ebp
mov eax, 0x5b5
xor edx, edx
mov ebp, edx
or ebp, ecx
jne 0x4a8f6d
mul ebx
mov ebx, eax
mov eax, dword [esp + 0x80]
add eax, ebx
adc edi, edx
mov ebx, eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x68], eax
mov ebp, dword [esp + 0x54]
mov dword [esp + 0x80], ebx
mov eax, 0x16d
xor edx, edx
mov esi, dword [esp + 0x68]
mov ebx, ebp
mov ebp, edx
or ebp, ebx
jne 0x4a8f58
mul esi
mov ebx, eax
mov eax, dword [esp + 0x80]
mov esi, edi
add eax, ebx
adc esi, edx
mov edi, eax
mov edx, esi
mov ebx, dword [esp + 0x98]
dec ebx
mov ebp, 0x6b4a80
cmp ebx, 0xd
jae 0x4a8f51
shl ebx, 2
add ebp, ebx
mov eax, dword [ebp]
cdq
mov ebx, eax
mov eax, edi
mov edi, esi
add eax, ebx
adc edi, edx
mov dword [esp + 0x70], eax
mov edx, edi
mov ecx, dword [esp + 0x94]
mov ebp, ecx
sar ebp, 0x1f
and ebp, 3
mov ebx, ecx
add ebx, ebp
and ebx, 3
sub ebx, ebp
cmp ebx, 0
jne 0x4a8d87
mov eax, 0x51eb851f
mov dword [esp + 0x48], edx
imul ecx
mov ebx, edx
mov edx, dword [esp + 0x48]
sar ebx, 5
mov ebp, ecx
sar ebp, 0x1f
sub ebx, ebp
imul ebx, ebx, 0x64
mov ebp, ecx
sub ebp, ebx
cmp ebp, 0
jne 0x4a8f47
mov eax, 0x51eb851f
mov dword [esp + 0x48], edx
imul ecx
mov ebx, edx
mov edx, dword [esp + 0x48]
sar ebx, 7
mov edx, ecx
sar edx, 0x1f
sub ebx, edx
imul ebx, ebx, 0x190
mov ebp, ecx
sub ebp, ebx
cmp ebp, 0
je 0x4a8f47
xor eax, eax
cmp al, 0
je 0x4a8daa
mov ebx, dword [esp + 0x98]
cmp ebx, 3
jl 0x4a8daa
mov eax, dword [esp + 0x70]
add eax, 1
adc edi, 0
mov dword [esp + 0x70], eax
mov edx, edi
mov esi, dword [esp + 0x70]
mov eax, dword [esp + 0x9c]
dec eax
cdq
mov ebx, eax
mov eax, esi
mov ebp, edi
add eax, ebx
adc ebp, edx
mov esi, 0x15180
xor ebx, ebx
mov edx, ebp
or ebp, ebx
jne 0x4a8f32
mul esi
mov edi, eax
mov esi, edx
mov eax, dword [esp + 0xa0]
imul eax, eax, 0xe10
mov ebx, dword [esp + 0xa4]
imul ebx, ebx, 0x3c
add eax, ebx
add eax, dword [esp + 0xa8]
cdq
mov ecx, edx
mov ebp, edi
mov edx, esi
add ebp, eax
adc edx, ecx
add ebp, 0xe5263700
adc edx, 0x80000001
mov ebx, dword [esp + 0xb0]
mov dword [esp], ebx
mov dword [esp + 0x58], ebp
mov dword [esp + 4], ebp
mov dword [esp + 0x5c], edx
mov dword [esp + 8], edx
call fcn.004a9100
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x64], eax
mov edi, dword [esp + 0x24]
mov esi, dword [esp + 0x28]
cmp ecx, 0
je 0x4a8ec4
mov eax, ecx
cdq
mov ebp, eax
mov ebx, edx
mov eax, dword [esp + 0x58]
mov edx, dword [esp + 0x5c]
sub eax, ebp
sbb edx, ebx
mov ebp, eax
mov eax, edx
cmp edx, dword [esp + 0x64]
jg 0x4a8f08
jl 0x4a8e7c
cmp ebp, dword [esp + 0x60]
jae 0x4a8f08
mov ebx, dword [esp + 0xb0]
mov dword [esp], ebx
mov eax, dword [esp + 0x60]
mov edx, dword [esp + 0x64]
sub eax, 1
sbb edx, 0
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.004a9100
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x58]
mov ebp, dword [esp + 0x5c]
mov eax, ecx
cdq
mov ebx, eax
mov ecx, edx
mov eax, esi
mov edx, ebp
sub eax, ebx
sbb edx, ecx
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], edx
xor ebx, ebx
mov ebp, dword [esp + 0x58]
mov edx, dword [esp + 0x5c]
add ebp, 0x7791f700
adc edx, 0xe
mov ecx, dword [esp + 0xac]
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xb4], ebp
mov dword [esp + 0xb8], edx
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xc0], eax
add esp, 0x90
ret
cmp eax, esi
jl 0x4a8ea5
jg 0x4a8f12
cmp ebp, edi
jb 0x4a8ea5
mov ebx, dword [esp + 0xb0]
mov dword [esp], ebx
mov dword [esp + 4], edi
mov dword [esp + 8], esi
call fcn.004a9100
mov ecx, dword [esp + 0x14]
jmp 0x4a8ea5
imul edx, esi
mov ebp, eax
imul ebp, ebx
add ebp, edx
mov edx, esi
mul edx
add edx, ebp
jmp 0x4a8dd4
mov eax, 1
jmp 0x4a8d89
call fcn.004291a0
ud2
imul edx, esi
mov ebp, eax
imul ebp, ebx
add ebp, edx
mov edx, esi
mul edx
add edx, ebp
jmp 0x4a8ccf
imul edx, ebx
mov ebp, eax
imul ebp, ecx
add ebp, edx
mov edx, ebx
mul edx
add edx, ebp
jmp 0x4a8c94
imul edx, edi
mov ebp, eax
imul ebp, ecx
add ebp, edx
mov edx, edi
mul edx
add edx, ebp
jmp 0x4a8c16
imul edx, edi
mov ebp, eax
imul ebp, ecx
add ebp, edx
mov edx, edi
mul edx
add edx, ebp
jmp 0x4a8bcf
imul edx, edi
mov ebp, eax
imul ebp, ecx
add ebp, edx
mov edx, edi
mul edx
add edx, ebp
jmp 0x4a8b72
imul edx, edi
mov ebp, eax
imul ebp, ecx
add ebp, edx
mov edx, edi
mul edx
add edx, ebp
jmp 0x4a8b41
neg eax
mov dword [esp + 0x34], eax
jmp 0x4a8ab4
neg eax
mov ebp, eax
jmp 0x4a8a80
neg eax
mov dword [esp + 0x2c], eax
jmp 0x4a8a1c
neg eax
mov ebp, eax
jmp 0x4a89e8
neg eax
mov dword [esp + 0x3c], eax
jmp 0x4a8984
neg eax
mov ebp, eax
jmp 0x4a8950
neg eax
mov dword [esp + 0x38], eax
jmp 0x4a88ec
neg eax
mov ebp, eax
jmp 0x4a88b8
neg eax
mov dword [esp + 0x30], eax
jmp 0x4a8847
neg eax
mov ebp, eax
jmp 0x4a880d
call fcn.004518d0
jmp fcn.004a8730