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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x24]
cmp eax, dword [ecx + 8]
jbe 0x4ca14d
sub esp, 0xa4
mov eax, dword [esp + 0xc4]
mov ecx, dword [esp + 0xd0]
sub eax, ecx
mov ebx, dword [esp + 0xb0]
test ebx, ebx
jle 0x4ca0ac
mov ebp, dword [esp + 0xbc]
test ebp, ebp
jle 0x4ca09e
lea esi, [ebx - 1]
cmp esi, ebx
jae 0x4ca146
mov esi, dword [esp + 0xa8]
lea edi, [esi + ebx*4 - 4]
lea edx, [ebp - 1]
cmp edx, ebp
jae 0x4ca146
mov edx, dword [esp + 0xb4]
lea edx, [edx + ebp*4 - 4]
cmp edx, edi
sete dl
test dl, dl
je 0x4c9fcf
xor edx, edx
xor ebx, ebx
mov dword [esp + 0x64], eax
lea esi, [eax + 1]
cmp esi, ebx
jg 0x4c9f9e
ja 0x4ca131
mov dword [esp + 0x30], ebx
mov dword [esp + 0xa0], edx
mov dword [esp + 0x2c], esi
lea eax, [ecx + 1]
mov dword [esp], eax
call dbg.math/big.getNat
mov eax, dword [esp + 4]
mov dword [esp + 0x8c], eax
mov ecx, dword [eax + 8]
mov edx, dword [eax + 4]
mov dword [esp + 0x54], edx
mov ebx, dword [eax]
mov dword [esp + 0x90], ebx
mov ebp, dword [esp + 0xbc]
test ebp, ebp
jle 0x4c9f82
mov esi, dword [esp + 0xc8]
test esi, esi
jle 0x4c9f6d
lea edi, [ebp - 1]
cmp edi, ebp
jae 0x4ca12a
mov edi, dword [esp + 0xb4]
lea edx, [edi + ebp*4 - 4]
lea eax, [esi - 1]
cmp eax, esi
jae 0x4ca12a
mov eax, dword [esp + 0xc0]
lea ebx, [eax + esi*4 - 4]
cmp ebx, edx
sete dl
mov dword [esp + 0x58], ecx
test dl, dl
je 0x4c9eef
xor edx, edx
xor ebx, ebx
mov ebp, dword [esp + 0xc4]
lea edi, [ebp + 1]
cmp edi, ebx
jg 0x4c9ec5
ja 0x4ca11c
mov dword [esp + 0x28], edi
mov dword [esp + 0x34], ebx
mov dword [esp + 0x9c], edx
mov dword [esp], edx
mov dword [esp + 4], edi
mov dword [esp + 8], ebx
call dbg.math/big.nat.clear
mov eax, dword [esp + 0xd0]
lea ecx, [eax - 1]
cmp ecx, eax
jae 0x4ca115
mov dword [esp + 0x78], ecx
mov ecx, dword [esp + 0xcc]
mov edx, dword [ecx + eax*4 - 4]
mov dword [esp], edx
call dbg.math/big.nlz
mov eax, dword [esp + 4]
mov dword [esp + 0x4c], eax
test eax, eax
ja 0x4c9e3c
mov ecx, dword [esp + 0xd0]
mov edx, dword [esp + 0xcc]
mov ebx, dword [esp + 0xd4]
xor ebp, ebp
mov esi, dword [esp + 0xc4]
mov edi, dword [esp + 0x34]
cmp esi, edi
ja 0x4ca10e
mov dword [esp + 0x74], ecx
mov dword [esp + 0x98], edx
mov dword [esp + 0xd4], ebx
mov dword [esp + 0x84], ebp
mov ecx, dword [esp + 0x9c]
mov dword [esp], ecx
mov dword [esp + 4], esi
mov dword [esp + 8], edi
mov edx, dword [esp + 0xc0]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], esi
mov edx, dword [esp + 0xc8]
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], eax
call dbg.math/big.shlVU
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0xc4]
mov edx, dword [esp + 0x28]
cmp ecx, edx
jae 0x4ca107
mov ebx, dword [esp + 0x9c]
mov dword [ebx + ecx*4], eax
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x74]
cmp eax, ecx
jae 0x4ca100
mov eax, dword [esp + 0xd0]
mov ebp, dword [esp + 0x98]
mov esi, dword [ebp + eax*4 - 4]
mov dword [esp + 0x40], esi
mov edi, dword [esp + 0x64]
jmp 0x4c9bbc
mov dword [esp + 0x70], eax
mov dword [esp + 0x50], edi
mov dword [esp], eax
mov ecx, dword [esp + 0x3c]
mov dword [esp + 4], ecx
call dbg.math/big.mulWW
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0xd0]
mov ebx, dword [esp + 0x64]
mov ebp, dword [esp + 0x38]
mov esi, dword [esp + 0x28]
mov edi, dword [esp + 0x9c]
mov edx, dword [esp + 0x70]
mov dword [esp + 0x5c], edx
mov edx, dword [esp + 0x50]
mov dword [esp + 0x60], edx
mov edx, dword [esp + 0xd0]
mov esi, dword [esp + 0x60]
cmp eax, esi
jbe 0x4c9d16
mov eax, 1
test al, al
je 0x4c9d09
mov eax, dword [esp + 0x5c]
dec eax
mov ecx, dword [esp + 0x40]
lea edi, [ecx + esi]
cmp edi, esi
jae 0x4c99ff
mov ebp, dword [esp + 0x58]
cmp edx, ebp
ja 0x4ca0dd
mov dword [esp + 0x5c], eax
mov ecx, dword [esp + 0x90]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov ebx, dword [esp + 0x98]
mov dword [esp + 0xc], ebx
mov esi, dword [esp + 0x74]
mov dword [esp + 0x10], esi
mov edi, dword [esp + 0xd4]
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], 0
call dbg.math/big.mulAddVWW
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0xd0]
mov edx, dword [esp + 0x54]
cmp ecx, edx
jae 0x4ca0d6
mov ebx, dword [esp + 0x90]
mov dword [ebx + ecx*4], eax
mov eax, dword [esp + 0x64]
lea ebp, [eax + edx]
cmp eax, ebp
ja 0x4ca0cf
mov esi, dword [esp + 0x34]
cmp ebp, esi
ja 0x4ca0cf
sub esi, eax
mov edi, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
shl eax, 2
sar esi, 0x1f
and esi, eax
mov eax, dword [esp + 0x9c]
add esi, eax
mov ebp, dword [esp + 0x64]
mov eax, dword [esp + 0x28]
cmp ebp, eax
ja 0x4ca0cf
mov dword [esp + 0x6c], edi
mov dword [esp + 0x94], esi
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], edi
mov dword [esp + 0xc], esi
sub eax, ebp
mov dword [esp + 0x68], eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0x58]
mov dword [esp + 0x20], edx
call dbg.math/big.subVV
mov eax, dword [esp + 0x24]
test eax, eax
jne 0x4c9c88
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0x2c]
cmp ecx, edx
jae 0x4ca0c1
mov ebx, dword [esp + 0xa0]
mov dword [ebx + ecx*4], eax
lea edi, [ecx - 1]
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x28]
mov ebx, dword [esp + 0x9c]
mov ebp, dword [esp + 0x98]
mov esi, dword [esp + 0x40]
test edi, edi
jl 0x4c9d39
lea ecx, [eax + edi]
cmp ecx, edx
jae 0x4ca0f9
mov dword [esp + 0x64], edi
mov dword [esp + 0x78], ecx
mov ecx, dword [ebx + ecx*4]
cmp ecx, esi
je 0x4c9d29
lea edi, [edi + eax - 1]
cmp edi, edx
jae 0x4ca0f2
mov eax, dword [ebx + edi*4]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], esi
call dbg.math/big.divWW
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xd0]
lea ebx, [edx - 2]
mov ebp, dword [esp + 0x74]
cmp ebx, ebp
jae 0x4ca0eb
mov dword [esp + 0x5c], eax
mov dword [esp + 0x50], ecx
mov ecx, dword [esp + 0x98]
mov ebx, dword [ecx + edx*4 - 8]
mov dword [esp + 0x3c], ebx
mov dword [esp], eax
mov dword [esp + 4], ebx
call dbg.math/big.mulWW
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0xd0]
mov ebx, dword [esp + 0x64]
lea ebp, [ebx + edx - 2]
mov esi, dword [esp + 0x28]
cmp ebp, esi
jae 0x4ca0e4
mov edi, dword [esp + 0x9c]
mov ebp, dword [edi + ebp*4]
mov dword [esp + 0x38], ebp
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x7c]
jmp 0x4c9a50
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x78]
cmp eax, ecx
ja 0x4ca0c8
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov ecx, dword [esp + 0xd0]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x6c]
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov eax, dword [esp + 0x98]
mov dword [esp + 0x18], eax
mov edx, dword [esp + 0x74]
mov dword [esp + 0x1c], edx
mov ebx, dword [esp + 0xd4]
mov dword [esp + 0x20], ebx
call dbg.math/big.addVV
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x9c]
mov ebx, dword [edx + ecx*4]
add eax, ebx
mov dword [edx + ecx*4], eax
mov eax, dword [esp + 0x5c]
dec eax
jmp 0x4c9b7e
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x5c]
jmp 0x4c9a79
jne 0x4c9d22
cmp ecx, ebp
seta al
jmp 0x4c9a61
xor eax, eax
jmp 0x4c9a61
mov ecx, esi
mov edx, eax
mov ebx, edi
mov eax, 0xffffffff
jmp 0x4c9a79
mov eax, dword [esp + 0x84]
test eax, eax
jne 0x4c9e2f
mov eax, dword [esp + 0x8c]
mov dword [esp], eax
call dbg.math/big.putNat
mov eax, dword [esp + 0xa0]
mov dword [esp], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 8], eax
call dbg.math/big.nat.norm
mov eax, dword [esp + 0xc]
mov dword [esp + 0x94], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x78], ecx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x74], edx
mov ebx, dword [esp + 0x9c]
mov dword [esp], ebx
mov ebp, dword [esp + 0x28]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x34]
mov dword [esp + 8], esi
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ebp
mov dword [esp + 0x14], esi
mov edi, dword [esp + 0x4c]
mov dword [esp + 0x18], edi
call dbg.math/big.shrVU
mov eax, dword [esp + 0x9c]
mov dword [esp], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 8], eax
call dbg.math/big.nat.norm
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x94]
mov dword [esp + 0xd8], ebx
mov ebx, dword [esp + 0x78]
mov dword [esp + 0xdc], ebx
mov ebx, dword [esp + 0x74]
mov dword [esp + 0xe0], ebx
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
mov dword [esp + 0xec], ecx
add esp, 0xa4
ret
mov dword [esp], eax
call dbg.math/big.putNat
jmp 0x4c9d48
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
call dbg.math/big.getNat
mov eax, dword [esp + 4]
mov dword [esp + 0x84], eax
mov ecx, dword [eax + 8]
mov dword [esp + 0x48], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x44], edx
mov ebx, dword [eax]
mov dword [esp + 0x88], ebx
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov ebp, dword [esp + 0xcc]
mov dword [esp + 0xc], ebp
mov ebp, dword [esp + 0xd0]
mov dword [esp + 0x10], ebp
mov esi, dword [esp + 0xd4]
mov dword [esp + 0x14], esi
mov esi, dword [esp + 0x4c]
mov dword [esp + 0x18], esi
call dbg.math/big.shlVU
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x88]
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 0x84]
jmp 0x4c994e
lea eax, [0x604560]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [ebp + 5]
mov dword [esp + 8], eax
call dbg.runtime.makeslice
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
jmp 0x4c98df
test ebp, ebp
jle 0x4c9f5b
mov edx, dword [esp + 0xd4]
test edx, edx
jle 0x4c9f50
lea ebx, [ebp - 1]
cmp ebx, ebp
jae 0x4ca123
lea ebx, [edi + ebp*4 - 4]
lea ecx, [edx - 1]
cmp ecx, edx
jae 0x4ca123
mov ecx, dword [esp + 0xcc]
lea esi, [ecx + edx*4 - 4]
cmp esi, ebx
sete bl
test bl, bl
je 0x4c9f3c
mov ecx, dword [esp + 0x58]
mov esi, dword [esp + 0xc8]
jmp 0x4c98c3
mov ecx, dword [esp + 0x58]
mov esi, dword [esp + 0xc8]
mov edx, edi
mov ebx, ebp
jmp 0x4c98c7
mov ecx, dword [esp + 0xcc]
xor ebx, ebx
jmp 0x4c9f28
mov ecx, dword [esp + 0xcc]
mov edx, dword [esp + 0xd4]
xor ebx, ebx
jmp 0x4c9f28
mov eax, dword [esp + 0xc0]
mov edi, dword [esp + 0xb4]
xor edx, edx
jmp 0x4c98b7
mov eax, dword [esp + 0xc0]
mov esi, dword [esp + 0xc8]
mov edi, dword [esp + 0xb4]
xor edx, edx
jmp 0x4c98b7
lea ecx, [0x604560]
mov dword [esp], ecx
mov dword [esp + 4], esi
lea edx, [eax + 5]
mov dword [esp + 8], edx
call dbg.runtime.makeslice
mov esi, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x14]
mov ecx, dword [esp + 0xd0]
jmp 0x4c9830
test ebx, ebx
jle 0x4ca090
mov edx, dword [esp + 0xc8]
test edx, edx
jle 0x4ca08c
lea edi, [ebx - 1]
cmp edi, ebx
jae 0x4ca13f
lea edi, [esi + ebx*4 - 4]
lea ebp, [edx - 1]
cmp ebp, edx
jae 0x4ca13f
mov ebp, dword [esp + 0xc0]
lea ebp, [ebp + edx*4 - 4]
cmp ebp, edi
xchg ebp, ebx
sete bl
xchg ebp, ebx
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x4ca026
mov ebp, dword [esp + 0xbc]
jmp 0x4c9817
test ebx, ebx
jle 0x4ca081
mov ebp, dword [esp + 0xd4]
test ebp, ebp
jle 0x4ca07d
lea edi, [ebx - 1]
cmp edi, ebx
jae 0x4ca138
lea edi, [esi + ebx*4 - 4]
lea edx, [ebp - 1]
cmp edx, ebp
jae 0x4ca138
mov edx, dword [esp + 0xcc]
lea edx, [edx + ebp*4 - 4]
cmp edx, edi
sete dl
test dl, dl
je 0x4ca06f
mov ebp, dword [esp + 0xbc]
jmp 0x4c9817
mov ebp, dword [esp + 0xbc]
mov edx, esi
jmp 0x4c981b
xor edx, edx
jmp 0x4ca05f
mov ebp, dword [esp + 0xd4]
xor edx, edx
jmp 0x4ca05f
xor ebp, ebp
jmp 0x4ca014
mov edx, dword [esp + 0xc8]
xor ebp, ebp
jmp 0x4ca014
mov esi, dword [esp + 0xa8]
xor edx, edx
jmp 0x4c980f
mov ebp, dword [esp + 0xbc]
mov esi, dword [esp + 0xa8]
xor edx, edx
jmp 0x4c980f
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicslice
ud2
call dbg.runtime.panicslice
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicslice
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicslice
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicslice
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicslice
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.morestack_noctxt
jmp dbg.math/big.nat.divLarge