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

Disassembly:
mov ecx, dword [0x96a830]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x1c]
cmp eax, dword [ecx + 8]
jbe 0x45001e
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 0x44fa3d
test edx, edx
setne al
mov ebp, dword [esp + 0xa0]
test ebp, ebp
xchg esi, ebx
setne bl
xchg esi, ebx
or esi, eax
xchg esi, eax
test al, al
xchg esi, eax
je 0x44fa34
mov eax, ebp
mov ecx, 0xfffffc02
jmp 0x450014
mov eax, ebp
xor ecx, ecx
jmp 0x44ffff
cmp eax, 0x7ff
jne 0x44fa7b
mov ebp, dword [esp + 0xa0]
test ebp, ebp
xchg esi, ebx
setne bl
xchg esi, ebx
test edx, edx
xchg edi, ebx
setne bl
xchg edi, ebx
or esi, edi
xchg esi, eax
test al, al
xchg esi, eax
je 0x44fa70
mov ecx, ebp
xor esi, esi
mov edi, 1
jmp 0x44fa9a
mov ecx, ebp
mov esi, 1
xor edi, edi
jmp 0x44fa9a
or edx, 0x100000
add eax, 0xfffffc01
mov ecx, dword [esp + 0xa0]
mov ebp, ecx
xor esi, esi
xor edi, edi
mov ecx, dword [esp + 0xa0]
mov dword [esp + 0x58], eax
mov dword [esp + 0x34], ebp
mov dword [esp + 0x38], edx
mov eax, dword [esp + 0xac]
shr eax, 0x14
and eax, 0x7ff
mov edx, dword [esp + 0xac]
and edx, 0xfffff
test eax, eax
jne 0x44faf6
mov eax, dword [esp + 0xa8]
test eax, eax
setne cl
test edx, edx
xchg ebp, ebx
setne bl
xchg ebp, ebx
or ecx, ebp
test cl, cl
je 0x44faed
mov ecx, eax
mov ebp, 0xfffffc02
jmp 0x44fff5
mov ecx, eax
xor ebp, ebp
jmp 0x44ffcd
cmp eax, 0x7ff
jne 0x44fb99
xchg esi, eax
mov byte [esp + 0x27], al
xchg esi, eax
mov ebp, dword [esp + 0xa8]
test ebp, ebp
setne cl
test edx, edx
xchg esi, ebx
setne bl
xchg esi, ebx
or ecx, esi
test cl, cl
je 0x44fb5f
mov ecx, dword [esp + 0xa0]
mov ebp, dword [esp + 0x34]
movzx esi, byte [esp + 0x27]
mov ecx, dword [esp + 0xa8]
mov dword [esp + 0x4c], ecx
xor ecx, ecx
mov byte [esp + 0x26], cl
mov esi, 1
xchg esi, eax
mov byte [esp + 0x25], al
xchg esi, eax
mov ecx, dword [esp + 0xa0]
movzx esi, byte [esp + 0x27]
jmp 0x44fbed
mov ecx, dword [esp + 0xa0]
mov ebp, dword [esp + 0x34]
movzx esi, byte [esp + 0x27]
mov ecx, dword [esp + 0xa8]
mov dword [esp + 0x4c], ecx
mov ecx, 1
mov byte [esp + 0x26], cl
xor esi, esi
xchg esi, eax
mov byte [esp + 0x25], al
xchg esi, eax
mov ecx, dword [esp + 0xa0]
movzx esi, byte [esp + 0x27]
jmp 0x44fbed
or edx, 0x100000
add eax, 0xfffffc01
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x94]
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x84], eax
xor eax, eax
mov byte [esp + 0x26], al
xor eax, eax
mov byte [esp + 0x25], al
mov eax, dword [esp + 0x8c]
xchg edi, eax
test al, al
xchg edi, eax
jne 0x44fbfe
movzx edi, byte [esp + 0x25]
xchg edi, eax
test al, al
xchg edi, eax
je 0x44fc1b
mov dword [esp + 0xb4], 0x7ff80000
mov dword [esp + 0xb0], 0
add esp, 0x9c
ret
mov dword [esp + 0x54], eax
and ebx, 0x80000000
mov edi, dword [esp + 0xac]
and edi, 0x80000000
xchg esi, eax
test al, al
xchg esi, eax
je 0x44fc8a
movzx eax, byte [esp + 0x26]
test al, al
je 0x44fc68
cmp edi, ebx
jne 0x44fc4b
xchg esi, eax
test al, al
xchg esi, eax
jmp 0x44fc6c
mov dword [esp + 0xb4], 0x7ff80000
mov dword [esp + 0xb0], 0
add esp, 0x9c
ret
xchg esi, eax
test al, al
xchg esi, eax
je 0x44fc8f
mov eax, dword [esp + 0xa4]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb0], ecx
add esp, 0x9c
ret
movzx eax, byte [esp + 0x26]
test al, al
jne 0x44ffaa
test ebp, ebp
sete al
mov esi, dword [esp + 0x38]
test esi, esi
sete cl
and ecx, eax
test cl, cl
je 0x44fd38
test edx, edx
sete al
mov ebp, dword [esp + 0x4c]
test ebp, ebp
xchg esi, ebx
sete bl
xchg esi, ebx
and eax, esi
test al, al
je 0x44fcfa
test ebx, ebx
je 0x44fcf6
test edi, edi
jne 0x44fcd3
test cl, cl
jmp 0x44fcfc
mov eax, dword [esp + 0xa4]
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0xb0], eax
add esp, 0x9c
ret
test cl, cl
jmp 0x44fcfc
test cl, cl
je 0x44fd30
test al, al
je 0x44fd0d
mov eax, dword [esp + 0xac]
xor eax, edi
jmp 0x44fd14
mov eax, dword [esp + 0xac]
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 0xb0], eax
add esp, 0x9c
ret
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x38]
mov dword [esp + 0x2c], ebx
test edx, edx
sete al
mov ebx, dword [esp + 0x4c]
test ebx, ebx
sete cl
and eax, ecx
test al, al
jne 0x44ff87
mov eax, dword [esp + 0x54]
mov ecx, edi
mov edi, dword [esp + 0x58]
cmp eax, edi
jg 0x44fd8d
jne 0x44fdc3
mov dword [esp + 0x78], ecx
mov dword [esp + 0x50], edx
cmp edx, esi
seta al
sete cl
cmp ebx, ebp
seta dl
and ecx, edx
or ecx, eax
test cl, cl
je 0x44fd9f
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x50]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x7c]
jmp 0x44fddd
mov eax, edi
mov edi, dword [esp + 0x54]
mov ebx, ebp
mov edx, esi
mov ebp, dword [esp + 0x4c]
mov esi, dword [esp + 0x50]
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x78]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x58]
jmp 0x44fddd
mov eax, edi
mov edi, dword [esp + 0x54]
mov ebx, ebp
mov ebp, dword [esp + 0x4c]
mov esi, edx
mov dword [esp + 0x3c], ecx
mov edx, dword [esp + 0x38]
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x40], ebp
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x54], eax
mov dword [esp + 0x48], ecx
sub eax, edi
shl edx, 2
mov dword [esp + 0x78], edx
shr ebx, 0x1e
shl ebp, 2
mov dword [esp + 0x74], ebp
shl esi, 2
mov edi, dword [esp + 0x40]
shr edi, 0x1e
or edi, esi
mov dword [esp + 0x70], edi
mov ecx, eax
mov esi, 1
shl esi, cl
mov dword [esp + 0x6c], esi
lea esi, [eax - 0x20]
mov ecx, esi
mov edx, 1
shl edx, cl
mov dword [esp + 0x68], edx
neg ecx
mov dword [esp + 0x64], ecx
mov edx, 1
shr edx, cl
mov dword [esp + 0x60], edx
mov ecx, eax
shr ebp, cl
shr edi, cl
mov ecx, esi
mov edx, dword [esp + 0x70]
shr edx, cl
mov dword [esp + 0x5c], edx
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0x70]
shl edx, cl
mov dword [esp + 0x64], edx
mov edx, dword [esp + 0x78]
or ebx, edx
mov dword [esp + 0x78], ebx
mov edx, dword [esp + 0x4c]
shl edx, 2
cmp eax, 0x20
sbb eax, eax
mov ebx, dword [esp + 0x6c]
and ebx, eax
and ebp, eax
and edi, eax
mov dword [esp + 0x44], edi
mov eax, ebx
add ebx, 0xffffffff
mov edi, dword [esp + 0x74]
and ebx, edi
mov dword [esp + 0x28], ebx
cmp esi, 0x20
sbb esi, esi
mov edi, dword [esp + 0x68]
and edi, esi
mov ebx, dword [esp + 0x5c]
and ebx, esi
cmp ecx, 0x20
sbb esi, esi
mov ecx, edx
mov edx, dword [esp + 0x60]
and edx, esi
or edi, edx
add eax, 0xffffffff
adc edi, 0xffffffff
mov eax, dword [esp + 0x64]
and eax, esi
or eax, ebp
mov edx, dword [esp + 0x70]
and edi, edx
or eax, ebx
mov edx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x48]
cmp edx, ebx
sete dl
xor ebp, ebp
cmp ebp, ebp
xchg esi, ebx
sete bl
xchg esi, ebx
and esi, edx
xchg esi, eax
test al, al
xchg esi, eax
je 0x44fefb
add eax, ecx
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x78]
adc ecx, edx
mov edx, ecx
mov ecx, eax
mov eax, edx
jmp 0x44ff27
sub ecx, eax
mov eax, dword [esp + 0x78]
mov edx, dword [esp + 0x44]
sbb eax, edx
mov edx, dword [esp + 0x28]
test edx, edx
xchg esi, ebx
setne bl
xchg esi, ebx
test edi, edi
setne dl
or esi, edx
xchg esi, eax
test al, al
xchg esi, eax
je 0x44ff27
add ecx, 0xffffffff
adc eax, 0xffffffff
test ecx, ecx
sete dl
test eax, eax
xchg esi, ebx
sete bl
xchg esi, ebx
and esi, edx
xchg esi, eax
test al, al
xchg esi, eax
je 0x44ff3f
xor ebx, ebx
mov dword [esp + 4], ebx
mov dword [esp], ebp
mov dword [esp + 0xc], eax
mov dword [esp + 8], ecx
mov eax, dword [esp + 0x54]
add eax, 0xfffffffe
mov dword [esp + 0x10], eax
mov dword [esp + 0x18], edi
mov eax, dword [esp + 0x28]
mov dword [esp + 0x14], eax
call fcn.0044f6a0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb0], ecx
add esp, 0x9c
ret
mov eax, dword [esp + 0xa4]
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0xb0], eax
add esp, 0x9c
ret
mov eax, dword [esp + 0xac]
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 0xb0], eax
add esp, 0x9c
ret
mov ecx, dword [esp + 0xa0]
mov dword [esp + 0x30], eax
mov eax, ebp
mov ebp, dword [esp + 0x34]
jmp 0x44fbbd
mov dword [esp + 0x30], eax
shl edx, 1
shr eax, 0x1f
or edx, eax
mov eax, dword [esp + 0x30]
shl eax, 1
dec ebp
cmp edx, 0x100000
jb 0x44ffe3
jmp 0x44ffcd
mov eax, ecx
mov ecx, ebp
jmp 0x44fa8d
shl edx, 1
mov esi, ebp
shr esi, 0x1f
or edx, esi
shl ebp, 1
dec ecx
cmp edx, 0x100000
jb 0x450008
jmp 0x44ffff
call fcn.0046a980
jmp fcn.0044f9d0