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

Disassembly:
mov ecx, dword [0x8993fc]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x1c]
cmp eax, dword [ecx + 8]
jbe 0x45262d
sub esp, 0x9c
mov eax, dword [esp + 0xa4]
mov edx, eax
shr eax, 0x14
and eax, 0x7ff
mov ebx, edx
and edx, 0xfffff
test eax, eax
jne 0x45202b
test edx, edx
setne al
mov ebp, dword [esp + 0xa0]
test ebp, ebp
xchg esi, ebx
setne bl
xchg esi, ebx
or eax, esi
test al, al
je 0x452022
mov eax, ebp
mov ecx, 0xfffffc02
jmp 0x452623
mov eax, ebp
xor ecx, ecx
jmp 0x45260e
cmp eax, 0x7ff
jne 0x452069
test edx, edx
xchg ebp, ebx
setne bl
xchg ebp, ebx
mov esi, dword [esp + 0xa0]
test esi, esi
xchg edi, ebx
setne bl
xchg edi, ebx
or ebp, edi
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x45205e
mov ecx, esi
xor ebp, ebp
mov edi, 1
jmp 0x452088
mov ecx, esi
mov ebp, 1
xor edi, edi
jmp 0x452088
or edx, 0x100000
add eax, 0xfffffc01
mov ecx, dword [esp + 0xa0]
mov esi, ecx
xor ebp, ebp
xor edi, edi
mov ecx, dword [esp + 0xa0]
mov dword [esp + 0x44], eax
mov dword [esp + 0x30], esi
mov dword [esp + 0x34], edx
mov eax, dword [esp + 0xac]
shr eax, 0x14
and eax, 0x7ff
mov edx, dword [esp + 0xac]
and edx, 0xfffff
test eax, eax
jne 0x4520e6
mov eax, dword [esp + 0xa8]
test eax, eax
setne cl
test edx, edx
xchg esi, ebx
setne bl
xchg esi, ebx
or esi, ecx
xchg esi, eax
test al, al
xchg esi, eax
je 0x4520dd
mov ecx, eax
mov esi, 0xfffffc02
jmp 0x452604
mov ecx, eax
xor esi, esi
jmp 0x4525dc
cmp eax, 0x7ff
jne 0x452188
xchg ebp, eax
mov byte [esp + 0x26], al
xchg ebp, eax
mov esi, dword [esp + 0xa8]
test esi, esi
setne cl
test edx, edx
xchg ebp, ebx
setne bl
xchg ebp, ebx
or ebp, ecx
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x45214e
mov ecx, dword [esp + 0xa0]
movzx ebp, byte [esp + 0x26]
mov esi, dword [esp + 0x30]
mov ecx, dword [esp + 0xa8]
mov dword [esp + 0x4c], ecx
xor ecx, ecx
mov byte [esp + 0x27], cl
mov ebp, 1
xchg ebp, eax
mov byte [esp + 0x25], al
xchg ebp, eax
mov ecx, dword [esp + 0xa0]
movzx ebp, byte [esp + 0x26]
jmp 0x4521ca
mov ecx, dword [esp + 0xa0]
movzx ebp, byte [esp + 0x26]
mov esi, dword [esp + 0x30]
mov ecx, dword [esp + 0xa8]
mov dword [esp + 0x4c], ecx
mov ecx, 1
mov byte [esp + 0x27], cl
xor ebp, ebp
xchg ebp, eax
mov byte [esp + 0x25], al
xchg ebp, eax
mov ecx, dword [esp + 0xa0]
movzx ebp, byte [esp + 0x26]
jmp 0x4521ca
or edx, 0x100000
add eax, 0xfffffc01
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x60], eax
xor eax, eax
mov byte [esp + 0x27], al
xor eax, eax
mov byte [esp + 0x25], al
mov eax, dword [esp + 0x68]
xchg edi, eax
test al, al
xchg edi, eax
jne 0x4521db
movzx edi, byte [esp + 0x25]
xchg edi, eax
test al, al
xchg edi, eax
je 0x4521f8
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0x7ff80000
add esp, 0x9c
ret
mov dword [esp + 0x98], eax
and ebx, 0x80000000
mov edi, dword [esp + 0xac]
and edi, 0x80000000
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x45226a
movzx eax, byte [esp + 0x27]
test al, al
je 0x452248
cmp edi, ebx
jne 0x45222b
xchg ebp, eax
test al, al
xchg ebp, eax
jmp 0x45224c
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0x7ff80000
add esp, 0x9c
ret
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x45226f
mov dword [esp + 0xb0], ecx
mov eax, dword [esp + 0xa4]
mov dword [esp + 0xb4], eax
add esp, 0x9c
ret
movzx eax, byte [esp + 0x27]
test al, al
jne 0x4525b9
test esi, esi
sete al
mov ebp, dword [esp + 0x34]
test ebp, ebp
sete cl
and ecx, eax
test cl, cl
je 0x452320
mov eax, dword [esp + 0x4c]
test eax, eax
xchg esi, ebx
sete bl
xchg esi, ebx
test edx, edx
xchg ebp, ebx
sete bl
xchg ebp, ebx
and ebp, esi
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x4522e0
test ebx, ebx
je 0x4522dc
test edi, edi
jne 0x4522b9
test cl, cl
jmp 0x4522e2
mov eax, dword [esp + 0xa0]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 0xb4], eax
add esp, 0x9c
ret
test cl, cl
jmp 0x4522e2
test cl, cl
je 0x452318
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x4522f5
mov eax, dword [esp + 0xac]
xor eax, edi
jmp 0x4522fc
mov eax, dword [esp + 0xac]
mov ecx, dword [esp + 0xa8]
mov dword [esp + 0xb0], ecx
mov dword [esp + 0xb4], eax
add esp, 0x9c
ret
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x30]
mov dword [esp + 0x28], ebx
test edx, edx
sete al
mov ebx, dword [esp + 0x4c]
test ebx, ebx
sete cl
and eax, ecx
test al, al
jne 0x452596
mov eax, dword [esp + 0x98]
mov ecx, edi
mov edi, dword [esp + 0x44]
cmp eax, edi
jg 0x452381
jne 0x4523bd
mov dword [esp + 0x50], edx
mov dword [esp + 0x94], ecx
cmp edx, ebp
seta al
sete cl
cmp ebx, esi
seta dl
and ecx, edx
or ecx, eax
test cl, cl
je 0x452393
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x50]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x58]
jmp 0x4523da
mov eax, edi
mov edi, dword [esp + 0x98]
mov ebx, esi
mov edx, ebp
mov esi, dword [esp + 0x4c]
mov ebp, dword [esp + 0x50]
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x94]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x44]
jmp 0x4523da
mov eax, edi
mov edi, dword [esp + 0x98]
mov ebx, esi
mov esi, dword [esp + 0x4c]
mov ebp, edx
mov dword [esp + 0x38], ecx
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x3c], esi
mov dword [esp + 0x54], eax
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x48], ecx
sub eax, edi
shl edx, 2
shr ebx, 0x1e
shl esi, 2
mov dword [esp + 0x94], esi
shl ebp, 2
mov edi, dword [esp + 0x3c]
shr edi, 0x1e
or edi, ebp
mov dword [esp + 0x90], edi
mov ecx, eax
mov ebp, 1
shl ebp, cl
mov dword [esp + 0x8c], ebp
shr esi, cl
mov dword [esp + 0x88], esi
shr edi, cl
mov dword [esp + 0x84], edi
lea edi, [eax - 0x20]
mov ecx, edi
mov esi, 1
shl esi, cl
mov dword [esp + 0x80], esi
neg ecx
mov dword [esp + 0x7c], ecx
mov esi, 1
shr esi, cl
mov ecx, edi
mov ebp, dword [esp + 0x90]
shr ebp, cl
mov dword [esp + 0x78], ebp
mov ecx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x90]
shl ebp, cl
or ebx, edx
mov edx, dword [esp + 0x4c]
shl edx, 2
mov dword [esp + 0x4c], edx
cmp ecx, 0x20
sbb ecx, ecx
and esi, ecx
and ebp, ecx
cmp eax, 0x20
sbb eax, eax
mov ecx, ebx
mov ebx, dword [esp + 0x8c]
and ebx, eax
mov edx, dword [esp + 0x88]
and edx, eax
or ebp, edx
mov edx, dword [esp + 0x84]
and edx, eax
mov dword [esp + 0x40], edx
mov eax, ebx
add ebx, 0xffffffff
mov edx, dword [esp + 0x94]
and ebx, edx
cmp edi, 0x20
sbb edx, edx
mov edi, dword [esp + 0x80]
and edi, edx
or edi, esi
add eax, 0xffffffff
adc edi, 0xffffffff
mov eax, dword [esp + 0x78]
and eax, edx
mov edx, dword [esp + 0x90]
and edi, edx
or ebp, eax
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x48]
cmp eax, edx
sete al
and eax, 1
test al, al
je 0x452506
mov eax, dword [esp + 0x4c]
add ebp, eax
mov eax, dword [esp + 0x40]
adc eax, ecx
mov ecx, eax
mov eax, ebp
jmp 0x452532
mov eax, dword [esp + 0x4c]
sub eax, ebp
mov ebp, dword [esp + 0x40]
sbb ecx, ebp
test ebx, ebx
xchg ebp, ebx
setne bl
xchg ebp, ebx
test edi, edi
xchg esi, ebx
setne bl
xchg esi, ebx
or ebp, esi
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x452532
add eax, 0xffffffff
adc ecx, 0xffffffff
test eax, eax
xchg ebp, ebx
sete bl
xchg ebp, ebx
test ecx, ecx
xchg esi, ebx
sete bl
xchg esi, ebx
and esi, ebp
xchg esi, eax
test al, al
xchg esi, eax
je 0x45254e
xor edx, edx
mov dword [esp], 0
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov eax, dword [esp + 0x54]
add eax, 0xfffffffe
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], edi
call sym.runtime.fpack64
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], ecx
add esp, 0x9c
ret
mov eax, dword [esp + 0xa0]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 0xb4], eax
add esp, 0x9c
ret
mov eax, dword [esp + 0xa8]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0xb4], eax
add esp, 0x9c
ret
mov ecx, dword [esp + 0xa0]
mov dword [esp + 0x2c], eax
mov eax, esi
mov esi, dword [esp + 0x30]
jmp 0x4521a6
mov dword [esp + 0x2c], eax
shl edx, 1
shr eax, 0x1f
or edx, eax
mov eax, dword [esp + 0x2c]
shl eax, 1
dec esi
cmp edx, 0x100000
jb 0x4525f2
jmp 0x4525dc
mov eax, ecx
mov ecx, ebp
jmp 0x45207b
shl edx, 1
mov esi, ebp
shr esi, 0x1f
or edx, esi
shl ebp, 1
dec ecx
cmp edx, 0x100000
jb 0x452617
jmp 0x45260e
call sym.runtime.morestack_noctxt
jmp sym.runtime.fadd64