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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
push 0xffffffffffffffff
push 0x4dc5e6
mov eax, dword fs:[0]
push eax
sub esp, 0x68
push ebx
push esi
push edi
mov eax, dword [0x511d60]
xor eax, esp
push eax
lea eax, [esp + 0x78]
mov dword fs:[0], eax
mov esi, ecx
test esi, esi
je 0x44bcc7
cmp byte [esi + 0x208], 0
jne 0x44bcc7
call fcn.00468e70
cmp eax, 2
je 0x44b690
movsd xmm0, qword [0x4e07b8]
comisd xmm0, xmmword [esi + 0x10]
ja 0x44bcc7
mov ebx, dword [ebp + 8]
xorps xmm0, xmm0
mov edi, dword [ebp + 0xc]
movsd qword [esi + 0x10], xmm0
cmp ebx, dword [esi + 0x18]
jne 0x44b6db
cmp edi, dword [esi + 0x1c]
jne 0x44b6db
mov ecx, esi
call fcn.00468e70
cmp eax, 2
je 0x44b6db
mov ecx, esi
call fcn.00468e70
cmp eax, 9
jne 0x44ba66
mov eax, dword [esi + 4]
cmp dword [eax + 0xcc], 8
je 0x44b6d4
mov byte [eax + 0x50], 1
mov ecx, esi
jmp 0x44b80d
push 0
mov ecx, esi
call fcn.004b3660
test al, al
jne 0x44ba66
cmp byte [esi + 0x2a4], al
je 0x44b700
mov byte [esi + 0x2c0], 1
jmp 0x44ba66
cmp byte [esi + 0x288], 0
je 0x44b715
mov byte [esi + 0x290], 1
jmp 0x44ba66
mov ecx, esi
call fcn.00468e70
cmp eax, 1
je 0x44b731
mov ecx, esi
call fcn.00468e70
cmp eax, 9
jne 0x44b7b5
mov eax, dword [esi + 4]
cmp byte [eax + 0xc], 0
je 0x44b7b5
movsd xmm0, qword [0x4e0750]
sub esp, 8
mov byte [eax + 0xc], 0
mov ecx, dword [0x515bd8]
movsd qword [esp], xmm0
push 0
mov ecx, dword [ecx + 0x17e0]
call fcn.0049faa0
push 0x430
call fcn.004c0d0a
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44b779
mov byte [ecx], 0
jmp 0x44b77b
xor ecx, ecx
mov eax, dword [0x515bd8]
movups xmm0, xmmword [esi + 0x20]
add eax, 0xe54
mov dword [esp + 0x38], ecx
push eax
sub esp, 0x10
movups xmmword [esp], xmm0
call fcn.0043f710
mov ecx, dword [0x515bd8]
lea eax, [esp + 0x38]
push eax
lea ecx, [ecx + 0x3b0]
call fcn.00437a30
jmp 0x44ba66
mov ecx, esi
call fcn.00468e70
cmp eax, 9
jne 0x44b824
mov ecx, dword [esi + 4]
mov dword [esp + 0x38], ecx
mov eax, dword [ecx + 0xcc]
cmp eax, 1
je 0x44b7dd
cmp eax, 6
je 0x44b7dd
cmp eax, 8
jne 0x44b7ea
push 1
push 0
call fcn.00438a90
mov ecx, dword [esp + 0x38]
test ebx, ebx
js 0x44b812
test edi, edi
js 0x44b812
cmp dword [ecx + 0xcc], 3
jge 0x44b812
mov eax, dword [0x515bd8]
imul ecx, ebx, 0xb
add ecx, edi
mov ecx, dword [eax + ecx*4 + 4]
test ecx, ecx
je 0x44b812
call fcn.00435770
push dword [esi + 0x1c]
mov ecx, esi
push dword [esi + 0x18]
call fcn.0044b1d0
jmp 0x44ba66
mov ecx, esi
call fcn.00468e70
cmp eax, 5
jne 0x44b8ad
cmp byte [esi + 0x208], 0
jne 0x44bcc7
mov ecx, dword [esi + 4]
mov eax, dword [ecx + 0x1c4]
cmp eax, 1
je 0x44b891
cmp eax, 2
je 0x44b891
cmp eax, 5
jne 0x44b861
mov byte [ecx + 0x1c8], 1
jmp 0x44ba66
cmp eax, 3
je 0x44bcc7
cmp eax, 4
je 0x44bcc7
cmp eax, 6
jne 0x44ba66
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14
mov byte [ecx + 0x50], 1
imul ecx, dword [esi + 0x18], 0xb
mov eax, dword [0x515bd8]
add ecx, dword [esi + 0x1c]
mov eax, dword [eax + ecx*4 + 4]
mov byte [eax], 1
jmp 0x44ba66
mov ecx, esi
call fcn.00468e70
cmp eax, 3
jne 0x44b8c6
mov ecx, dword [esi + 4]
call fcn.00435560
jmp 0x44ba66
mov ecx, esi
call fcn.00468e70
cmp eax, 0xf
je 0x44bcc7
mov ecx, esi
call fcn.00468e70
cmp eax, 0xe
je 0x44bcc7
mov ecx, esi
call fcn.00468e70
cmp eax, 0x10
je 0x44bcc7
mov ecx, esi
call fcn.00468e70
cmp eax, 0xc
je 0x44bcc7
mov ecx, esi
call fcn.00468e70
cmp eax, 0xa
je 0x44bcc7
mov ecx, esi
call fcn.00468e70
cmp eax, 4
je 0x44bcc7
mov ecx, esi
call fcn.00468e70
cmp eax, 0xb
je 0x44bcc7
mov ecx, esi
call fcn.00468e70
cmp eax, 0xd
je 0x44bcc7
test ebx, ebx
js 0x44b996
test edi, edi
js 0x44b996
mov ecx, dword [0x515bd8]
imul eax, ebx, 0xb
add eax, edi
mov ecx, dword [ecx + eax*4 + 4]
call fcn.00468e70
cmp eax, 2
jne 0x44b996
mov ecx, esi
call fcn.00468e70
cmp eax, 2
jne 0x44b9a6
cmp ebx, dword [esi + 0x18]
jne 0x44bcc7
cmp edi, dword [esi + 0x1c]
je 0x44b9a6
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14
mov ecx, esi
call fcn.00468e70
cmp eax, 2
je 0x44bcc7
cmp byte [esi + 0x208], 0
jne 0x44bcc7
mov ecx, esi
call fcn.00435770
mov eax, dword [esi + 4]
test eax, eax
je 0x44b9f3
mov byte [eax + 0x50], 1
mov eax, dword [esi + 4]
mov byte [eax + 0x63], 0x42
mov ecx, dword [esi + 4]
call fcn.0046ad90
cmp eax, 1
je 0x44b9e6
mov ecx, dword [esi + 4]
call fcn.0046ad90
cmp eax, 9
jne 0x44b9f3
push dword [esi + 0x1c]
mov ecx, esi
push dword [esi + 0x18]
call fcn.0044b1d0
mov ecx, dword [esi + 8]
test ecx, ecx
je 0x44ba20
call fcn.0046ad90
cmp eax, 9
je 0x44ba20
mov ecx, dword [esi + 8]
call fcn.0046ad90
cmp eax, 4
je 0x44ba20
mov ecx, dword [esi + 8]
mov eax, dword [ecx]
call dword [eax + 8]
mov dword [esi + 8], 0
mov ecx, dword [0x515bd8]
mov eax, dword [ecx + 0x7b4]
cmp eax, dword [esi + 0x18]
jne 0x44ba49
mov eax, dword [ecx + 0x7b8]
cmp eax, dword [esi + 0x1c]
jne 0x44ba49
mov byte [ecx + 0x7b0], 0
mov ecx, dword [0x515bd8]
mov eax, dword [ecx + 0x7c0]
cmp eax, dword [esi + 0x18]
jne 0x44ba66
mov eax, dword [ecx + 0x7c4]
cmp eax, dword [esi + 0x1c]
jne 0x44ba66
mov byte [ecx + 0x7bc], 0
mov ecx, 1
mov byte [esi + 0x2d8], 1
mov dword [esp + 0x38], ecx
cmp ebx, dword [esi + 0x18]
jne 0x44ba87
xor eax, eax
cmp edi, dword [esi + 0x1c]
cmove ecx, eax
mov dword [esp + 0x38], ecx
mov eax, 0xad4
mov dword [esp + 0x34], 0
sub eax, esi
lea ebx, [esi + 0x2dc]
mov dword [esp + 0x3c], eax
mov eax, dword [ebp + 8]
test ecx, ecx
jne 0x44bb02
mov edi, dword [ebx]
test edi, edi
je 0x44bb0b
mov dword [esp + 0x40], edi
mov dword [esp + 0x80], ecx
mov ecx, edi
push 1
call fcn.00482290
mov eax, dword [edi + 0x6c]
mov dword [esp + 0x80], 0xffffffff
test eax, eax
je 0x44baf1
push eax
call fcn.004c0d5b
add esp, 4
mov dword [edi + 0x6c], 0
mov dword [edi + 0x70], 0
mov dword [edi + 0x74], 0
push edi
call fcn.004c0d5b
add esp, 4
mov dword [ebx], 0
jmp 0x44bb0b
cmp dword [ebx], 0
jne 0x44bc20
mov al, byte [ebp + 0x18]
test al, al
jne 0x44bbf9
push 0x80
call fcn.004c0d0a
add esp, 4
mov dword [esp + 0x40], eax
mov dword [esp + 0x80], 1
test eax, eax
je 0x44bb3f
mov ecx, eax
call fcn.004347e0
jmp 0x44bb41
xor eax, eax
mov dword [ebx], eax
mov eax, dword [ebp + 8]
mov dword [esp + 0x80], 0xffffffff
test eax, eax
js 0x44bb85
mov ecx, dword [ebp + 0xc]
test ecx, ecx
js 0x44bb85
imul eax, eax, 0xb
add eax, ecx
mov ecx, dword [0x515bd8]
mov ecx, dword [ecx + eax*4 + 4]
call fcn.00468e70
cmp eax, 2
jne 0x44bb85
mov edx, dword [esp + 0x3c]
mov eax, dword [0x515bd8]
add edx, ebx
push dword [edx + eax]
jmp 0x44bb9c
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x38]
lea edx, [eax + ecx*2]
mov eax, dword [0x515bd8]
push dword [eax + edx*4 + 0x1408]
mov ecx, dword [ebx]
call fcn.00480ce0
mov ecx, dword [0x515bd8]
sub esp, 8
mov eax, dword [ecx + 0x77c]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
mov eax, dword [ecx + 0x778]
cvtdq2pd xmm0, xmm0
cdq
mov ecx, dword [ebx]
sub eax, edx
sar eax, 1
addsd xmm0, qword [esi + 0x28]
cvtpd2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [esi + 0x20]
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
call fcn.00480c80
mov al, byte [ebp + 0x18]
movsd xmm0, qword [ebp + 0x10]
test al, al
mov edi, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
movsd qword [esi + 0x2f0], xmm0
je 0x44bc20
addsd xmm0, qword [0x4e0730]
movsd qword [esi + 0x2f0], xmm0
sub eax, dword [esi + 0x18]
movd xmm1, eax
mov eax, edi
sub eax, dword [esi + 0x1c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm1
mulsd xmm0, xmm0
addsd xmm0, xmm1
call fcn.004c2850
movapd xmm1, xmm0
xorps xmm2, xmm2
ucomisd xmm1, xmm2
lahf
test ah, 0x44
jp 0x44bc62
movsd xmm1, qword [0x4e09d0]
movsd xmm0, qword [esi + 0x2e8]
ucomisd xmm0, xmm2
lahf
test ah, 0x44
jnp 0x44bc82
movsd xmm0, qword [0x4e09e8]
comisd xmm0, xmm1
jbe 0x44bc92
mulsd xmm1, qword [0x4e0a00]
movsd qword [esi + 0x2e8], xmm1
mov eax, dword [ebp + 8]
test eax, eax
js 0x44bc9d
test edi, edi
jns 0x44bca5
movsd qword [esi + 0x2e8], xmm2
mov ecx, dword [esp + 0x34]
add ebx, 4
inc ecx
mov dword [esp + 0x34], ecx
cmp ecx, 2
mov ecx, dword [esp + 0x38]
jl 0x44baa3
push edi
push eax
mov ecx, esi
call fcn.0044b1d0
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14