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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x448ad1
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 0x4486c6
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 0x4486bf
add edx, 0xfffffc02
mov eax, ebp
jmp 0x448ac7
mov eax, ebp
jmp 0x448ab2
cmp edx, 0x7ff
jne 0x448702
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 0x4486f7
mov eax, ebp
xor esi, esi
mov edi, 1
jmp 0x44871c
mov eax, ebp
mov esi, 1
xor edi, edi
jmp 0x44871c
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 0x44877e
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 0x448777
lea ecx, [ebx - 0x3fe]
mov ebx, ebp
jmp 0x448a9f
mov ecx, ebp
jmp 0x448a7b
cmp ebx, 0x7ff
jne 0x448817
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 0x4487e1
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 0x44884a
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 0x44884a
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 0x44885b
movzx edi, byte [esp + 0x25]
xchg edi, eax
test al, al
xchg edi, eax
je 0x448875
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 0x4488db
movzx ebx, byte [esp + 0x26]
test bl, bl
jne 0x4488c3
xchg esi, eax
test al, al
xchg esi, eax
je 0x4488e0
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 0x4488fe
mov edi, dword [esp + 0x2c]
jmp 0x4488e0
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 0x44893a
test bl, bl
je 0x448918
mov dword [esp + 0x8c], 0x7ff80000
mov dword [esp + 0x88], 0
add esp, 0x74
ret
xchg edi, eax
test al, al
xchg edi, eax
je 0x44893a
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 0x44897e
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.00447ca0
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 0x448836
shl edx, 1
mov esi, ebp
shr ebp, 0x1f
or edx, ebp
shl esi, 1
dec ecx
mov ebp, esi
cmp edx, 0x100000
jb 0x448a91
mov ebx, ecx
mov ecx, dword [esp + 0x80]
jmp 0x448a7b
mov eax, ebp
jmp 0x448712
shl ecx, 1
mov esi, ebp
shr ebp, 0x1f
or ecx, ebp
shl esi, 1
dec edx
mov ebp, esi
cmp ecx, 0x100000
jb 0x448ab9
jmp 0x448ab2
call fcn.0045e080
jmp fcn.00448660