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

Disassembly:
mov ecx, dword [0x5b96c8]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x1c]
cmp eax, dword [ecx + 8]
jbe 0x44cd9e
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 0x44c7bd
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 0x44c7b4
mov eax, ebp
mov ecx, 0xfffffc02
jmp 0x44cd94
mov eax, ebp
xor ecx, ecx
jmp 0x44cd7f
cmp eax, 0x7ff
jne 0x44c7fb
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 0x44c7f0
mov ecx, ebp
xor esi, esi
mov edi, 1
jmp 0x44c81a
mov ecx, ebp
mov esi, 1
xor edi, edi
jmp 0x44c81a
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 0x44c876
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 0x44c86d
mov ecx, eax
mov ebp, 0xfffffc02
jmp 0x44cd75
mov ecx, eax
xor ebp, ebp
jmp 0x44cd4d
cmp eax, 0x7ff
jne 0x44c919
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 0x44c8df
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 0x44c96d
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 0x44c96d
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 0x44c97e
movzx edi, byte [esp + 0x25]
xchg edi, eax
test al, al
xchg edi, eax
je 0x44c99b
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 0x44ca0a
movzx eax, byte [esp + 0x26]
test al, al
je 0x44c9e8
cmp edi, ebx
jne 0x44c9cb
xchg esi, eax
test al, al
xchg esi, eax
jmp 0x44c9ec
mov dword [esp + 0xb4], 0x7ff80000
mov dword [esp + 0xb0], 0
add esp, 0x9c
ret
xchg esi, eax
test al, al
xchg esi, eax
je 0x44ca0f
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 0x44cd2a
test ebp, ebp
sete al
mov esi, dword [esp + 0x38]
test esi, esi
sete cl
and ecx, eax
test cl, cl
je 0x44cab8
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 0x44ca7a
test ebx, ebx
je 0x44ca76
test edi, edi
jne 0x44ca53
test cl, cl
jmp 0x44ca7c
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 0x44ca7c
test cl, cl
je 0x44cab0
test al, al
je 0x44ca8d
mov eax, dword [esp + 0xac]
xor eax, edi
jmp 0x44ca94
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 0x44cd07
mov eax, dword [esp + 0x54]
mov ecx, edi
mov edi, dword [esp + 0x58]
cmp eax, edi
jg 0x44cb0d
jne 0x44cb43
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 0x44cb1f
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 0x44cb5d
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 0x44cb5d
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 0x44cc7b
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 0x44cca7
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 0x44cca7
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 0x44ccbf
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.0044c420
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 0x44c93d
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 0x44cd63
jmp 0x44cd4d
mov eax, ecx
mov ecx, ebp
jmp 0x44c80d
shl edx, 1
mov esi, ebp
shr esi, 0x1f
or edx, esi
shl ebp, 1
dec ecx
cmp edx, 0x100000
jb 0x44cd88
jmp 0x44cd7f
call fcn.00465370
jmp fcn.0044c750