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

Disassembly:
mov ecx, dword [0x52054c]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x1c]
cmp eax, dword [ecx + 8]
jbe 0x4489ed
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 0x4483eb
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 0x4483e2
mov eax, ebp
mov ecx, 0xfffffc02
jmp 0x4489e3
mov eax, ebp
xor ecx, ecx
jmp 0x4489ce
cmp eax, 0x7ff
jne 0x448429
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 0x44841e
mov ecx, esi
xor ebp, ebp
mov edi, 1
jmp 0x448448
mov ecx, esi
mov ebp, 1
xor edi, edi
jmp 0x448448
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 0x4484a6
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 0x44849d
mov ecx, eax
mov esi, 0xfffffc02
jmp 0x4489c4
mov ecx, eax
xor esi, esi
jmp 0x44899c
cmp eax, 0x7ff
jne 0x448548
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 0x44850e
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 0x44858a
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 0x44858a
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 0x44859b
movzx edi, byte [esp + 0x25]
xchg edi, eax
test al, al
xchg edi, eax
je 0x4485b8
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 0x44862a
movzx eax, byte [esp + 0x27]
test al, al
je 0x448608
cmp edi, ebx
jne 0x4485eb
xchg ebp, eax
test al, al
xchg ebp, eax
jmp 0x44860c
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0x7ff80000
add esp, 0x9c
ret
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x44862f
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 0x448979
test esi, esi
sete al
mov ebp, dword [esp + 0x34]
test ebp, ebp
sete cl
and ecx, eax
test cl, cl
je 0x4486e0
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 0x4486a0
test ebx, ebx
je 0x44869c
test edi, edi
jne 0x448679
test cl, cl
jmp 0x4486a2
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 0x4486a2
test cl, cl
je 0x4486d8
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x4486b5
mov eax, dword [esp + 0xac]
xor eax, edi
jmp 0x4486bc
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 0x448956
mov eax, dword [esp + 0x98]
mov ecx, edi
mov edi, dword [esp + 0x44]
cmp eax, edi
jg 0x448741
jne 0x44877d
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 0x448753
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 0x44879a
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 0x44879a
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 0x4488c6
mov eax, dword [esp + 0x4c]
add ebp, eax
mov eax, dword [esp + 0x40]
adc eax, ecx
mov ecx, eax
mov eax, ebp
jmp 0x4488f2
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 0x4488f2
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 0x44890e
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 0x448566
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 0x4489b2
jmp 0x44899c
mov eax, ecx
mov ecx, ebp
jmp 0x44843b
shl edx, 1
mov esi, ebp
shr esi, 0x1f
or edx, esi
shl ebp, 1
dec ecx
cmp edx, 0x100000
jb 0x4489d7
jmp 0x4489ce
call sym.runtime.morestack_noctxt
jmp sym.runtime.fadd64