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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x449b81
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 0x449776
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 0x44976f
add edx, 0xfffffc02
mov eax, ebp
jmp 0x449b77
mov eax, ebp
jmp 0x449b62
cmp edx, 0x7ff
jne 0x4497b2
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 0x4497a7
mov eax, ebp
xor esi, esi
mov edi, 1
jmp 0x4497cc
mov eax, ebp
mov esi, 1
xor edi, edi
jmp 0x4497cc
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 0x44982e
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 0x449827
lea ecx, [ebx - 0x3fe]
mov ebx, ebp
jmp 0x449b4f
mov ecx, ebp
jmp 0x449b2b
cmp ebx, 0x7ff
jne 0x4498c7
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 0x449891
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 0x4498fa
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 0x4498fa
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 0x44990b
movzx edi, byte [esp + 0x25]
xchg edi, eax
test al, al
xchg edi, eax
je 0x449925
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 0x44998b
movzx ebx, byte [esp + 0x26]
test bl, bl
jne 0x449973
xchg esi, eax
test al, al
xchg esi, eax
je 0x449990
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 0x4499ae
mov edi, dword [esp + 0x2c]
jmp 0x449990
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 0x4499ea
test bl, bl
je 0x4499c8
mov dword [esp + 0x8c], 0x7ff80000
mov dword [esp + 0x88], 0
add esp, 0x74
ret
xchg edi, eax
test al, al
xchg edi, eax
je 0x4499ea
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 0x449a2e
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.00448d50
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 0x4498e6
shl edx, 1
mov esi, ebp
shr ebp, 0x1f
or edx, ebp
shl esi, 1
dec ecx
mov ebp, esi
cmp edx, 0x100000
jb 0x449b41
mov ebx, ecx
mov ecx, dword [esp + 0x80]
jmp 0x449b2b
mov eax, ebp
jmp 0x4497c2
shl ecx, 1
mov esi, ebp
shr ebp, 0x1f
or ecx, ebp
shl esi, 1
dec edx
mov ebp, esi
cmp ecx, 0x100000
jb 0x449b69
jmp 0x449b62
call fcn.0045fcc0
jmp fcn.00449710