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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x448a51
sub esp, 0x74
mov ecx, dword [esp + 0x7c]
mov edx, ecx
and ecx, 0xfffff
mov ebx, edx
shr edx, 0x14
and edx, 0x7ff
test edx, edx
jne 0x448646
mov ebp, dword [esp + 0x78]
test ebp, ebp
xchg esi, ebx
setne bl
xchg esi, ebx
test ecx, ecx
xchg edi, ebx
setne bl
xchg edi, ebx
or esi, edi
xchg esi, eax
test al, al
xchg esi, eax
je 0x44863f
add edx, 0xfffffc02
mov eax, ebp
jmp 0x448a47
mov eax, ebp
jmp 0x448a32
cmp edx, 0x7ff
jne 0x448682
mov ebp, dword [esp + 0x78]
test ebp, ebp
xchg esi, ebx
setne bl
xchg esi, ebx
test ecx, ecx
xchg edi, ebx
setne bl
xchg edi, ebx
or esi, edi
xchg esi, eax
test al, al
xchg esi, eax
je 0x448677
mov eax, ebp
xor esi, esi
mov edi, 1
jmp 0x44869c
mov eax, ebp
mov esi, 1
xor edi, edi
jmp 0x44869c
or ecx, 0x100000
add edx, 0xfffffc01
mov eax, dword [esp + 0x78]
mov ebp, eax
xor esi, esi
xor edi, edi
mov eax, dword [esp + 0x78]
mov dword [esp + 0x48], edx
xchg esi, eax
mov byte [esp + 0x27], al
xchg esi, eax
mov dword [esp + 0x34], ebp
mov dword [esp + 0x3c], ecx
mov edx, dword [esp + 0x84]
and edx, 0xfffff
mov ebx, dword [esp + 0x84]
shr ebx, 0x14
and ebx, 0x7ff
test ebx, ebx
jne 0x4486fe
mov ebp, dword [esp + 0x80]
test ebp, ebp
setne cl
test edx, edx
xchg esi, ebx
setne bl
xchg esi, ebx
or ecx, esi
test cl, cl
je 0x4486f7
lea ecx, [ebx - 0x3fe]
mov ebx, ebp
jmp 0x448a1f
mov ecx, ebp
jmp 0x4489fb
cmp ebx, 0x7ff
jne 0x448797
test edx, edx
xchg ebp, ebx
setne bl
xchg ebp, ebx
mov ecx, dword [esp + 0x80]
test ecx, ecx
xchg esi, ebx
setne bl
xchg esi, ebx
or esi, ebp
xchg esi, eax
test al, al
xchg esi, eax
je 0x448761
mov ecx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x34]
movzx esi, byte [esp + 0x27]
mov ebp, dword [esp + 0x80]
mov dword [esp + 0x30], ebp
xor ebp, ebp
xchg ebp, eax
mov byte [esp + 0x26], al
xchg ebp, eax
mov esi, 1
xchg esi, eax
mov byte [esp + 0x25], al
xchg esi, eax
mov ebp, dword [esp + 0x34]
movzx esi, byte [esp + 0x27]
jmp 0x4487ca
mov ecx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x34]
movzx esi, byte [esp + 0x27]
mov ebp, dword [esp + 0x80]
mov dword [esp + 0x30], ebp
mov ebp, 1
xchg ebp, eax
mov byte [esp + 0x26], al
xchg ebp, eax
xor esi, esi
xchg esi, eax
mov byte [esp + 0x25], al
xchg esi, eax
mov ebp, dword [esp + 0x34]
movzx esi, byte [esp + 0x27]
jmp 0x4487ca
or edx, 0x100000
add ebx, 0xfffffc01
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x64], eax
xor eax, eax
mov byte [esp + 0x26], al
xor eax, eax
mov byte [esp + 0x25], al
mov eax, dword [esp + 0x64]
xchg edi, eax
test al, al
xchg edi, eax
jne 0x4487db
movzx edi, byte [esp + 0x25]
xchg edi, eax
test al, al
xchg edi, eax
je 0x4487f5
mov dword [esp + 0x8c], 0x7ff80000
mov dword [esp + 0x88], 0
add esp, 0x74
ret
mov dword [esp + 0x44], ebx
mov edi, dword [esp + 0x84]
and edi, 0x80000000
mov dword [esp + 0x2c], edi
xchg esi, eax
test al, al
xchg esi, eax
je 0x44885b
movzx ebx, byte [esp + 0x26]
test bl, bl
jne 0x448843
xchg esi, eax
test al, al
xchg esi, eax
je 0x448860
test edx, edx
xchg esi, ebx
sete bl
xchg esi, ebx
mov edi, dword [esp + 0x30]
test edi, edi
xchg edi, ebx
sete bl
xchg edi, ebx
and esi, edi
xchg esi, eax
test al, al
xchg esi, eax
jne 0x44887e
mov edi, dword [esp + 0x2c]
jmp 0x448860
mov ecx, dword [esp + 0x7c]
xor ecx, edi
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x88], eax
add esp, 0x74
ret
movzx ebx, byte [esp + 0x26]
test ecx, ecx
xchg esi, ebx
sete bl
xchg esi, ebx
test ebp, ebp
xchg edi, ebx
sete bl
xchg edi, ebx
and edi, esi
xchg edi, eax
test al, al
xchg edi, eax
je 0x4488ba
test bl, bl
je 0x448898
mov dword [esp + 0x8c], 0x7ff80000
mov dword [esp + 0x88], 0
add esp, 0x74
ret
xchg edi, eax
test al, al
xchg edi, eax
je 0x4488ba
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x2c]
xor ecx, edx
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x88], eax
add esp, 0x74
ret
test edx, edx
sete bl
mov eax, dword [esp + 0x30]
test eax, eax
xchg esi, ebx
sete bl
xchg esi, ebx
and ebx, esi
mov esi, dword [esp + 0x7c]
and esi, 0x80000000
test bl, bl
je 0x4488fe
mov eax, dword [esp + 0x84]
xor eax, esi
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x88], eax
add esp, 0x74
ret
mov dword [esp + 0x38], edx
mov ebx, edx
mov edi, eax
mul ebp
mov dword [esp + 0x60], edx
mov dword [esp + 0x40], eax
mov eax, ecx
mul edi
mov dword [esp + 0x5c], edx
mov dword [esp + 0x58], eax
mov edi, dword [esp + 0x60]
add eax, edi
mov dword [esp + 0x28], eax
mov eax, ebx
mul ebp
mov dword [esp + 0x54], edx
mov dword [esp + 0x50], eax
mov ebp, dword [esp + 0x28]
add eax, ebp
mov eax, ecx
mul ebx
mov ebx, dword [esp + 0x58]
add ebx, edi
mov ebx, dword [esp + 0x5c]
adc ebx, 0
mov dword [esp + 0x4c], ebx
add ebx, eax
mov edi, dword [esp + 0x50]
add edi, ebp
mov ebp, dword [esp + 0x54]
adc ebp, 0
mov edi, ebp
add ebp, ebx
nop
mov ecx, dword [esp + 0x2c]
xor esi, ecx
mov dword [esp + 4], esi
mov dword [esp], 0
mov ecx, dword [esp + 0x4c]
add ecx, eax
adc edx, 0
add edi, ebx
adc edx, 0
shl edx, 0xd
mov ecx, ebp
shr ebp, 0x13
or ebp, edx
mov dword [esp + 0xc], ebp
shl ecx, 0xd
mov edx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x30]
imul edx, ebx
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0x34]
imul ebx, ebp
mov ebp, dword [esp + 0x60]
add ebx, ebp
add edx, ebx
mov ebx, edx
shr edx, 0x13
or edx, ecx
mov dword [esp + 8], edx
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x44]
lea ecx, [edx + ecx - 1]
mov dword [esp + 0x10], ecx
and ebx, 0x7ffff
mov dword [esp + 0x18], ebx
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x14], ecx
call fcn.00447c20
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x88], edx
add esp, 0x74
ret
mov ecx, dword [esp + 0x3c]
movzx esi, byte [esp + 0x27]
mov dword [esp + 0x30], ebp
mov ebp, dword [esp + 0x34]
jmp 0x4487b6
shl edx, 1
mov esi, ebp
shr ebp, 0x1f
or edx, ebp
shl esi, 1
dec ecx
mov ebp, esi
cmp edx, 0x100000
jb 0x448a11
mov ebx, ecx
mov ecx, dword [esp + 0x80]
jmp 0x4489fb
mov eax, ebp
jmp 0x448692
shl ecx, 1
mov esi, ebp
shr ebp, 0x1f
or ecx, ebp
shl esi, 1
dec edx
mov ebp, esi
cmp ecx, 0x100000
jb 0x448a39
jmp 0x448a32
call fcn.0045e000
jmp fcn.004485e0