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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x68
mov eax, dword [0x5025d4]
xor eax, esp
mov dword [esp + 0x64], eax
push esi
mov esi, ecx
xorps xmm0, xmm0
push edi
mov edi, dword [sym.imp.OLEAUT32.dll_UnRegisterTypeLib]
movaps xmmword [esp + 0x20], xmm0
cmp dword [esi + 0x30], 0
jne 0x44f461
movsd xmm0, qword [esi + 0x28]
lea eax, [esp + 0x20]
push eax
sub esp, 8
movsd qword [esp], xmm0
call edi
cmp eax, 1
jne 0x44f461
movzx eax, word [esp + 0x20]
mov dword [0x50ad90], eax
jmp 0x44f46b
mov dword [0x50ad90], 0xffffffff
mov ecx, dword [esi + 0xd0]
mov edx, 0x50b088
call fcn.004526f0
mov eax, dword [esi + 0xc0]
xorps xmm0, xmm0
mov dword [0x50adc0], eax
mov ecx, dword [esi + 0x24]
movaps xmmword [esp + 0x20], xmm0
test ecx, ecx
jne 0x44f4b8
movsd xmm0, qword [esi + 0x1c]
lea eax, [esp + 0x20]
push eax
sub esp, 8
movsd qword [esp], xmm0
call edi
mov ecx, dword [esi + 0x24]
cmp eax, 1
jne 0x44f4b8
movzx eax, word [esp + 0x22]
jmp 0x44f4bb
or eax, 0xffffffff
xorps xmm0, xmm0
movaps xmmword [esp + 0x20], xmm0
cmp dword [0x50adc0], eax
jg 0x44f4f4
test ecx, ecx
jne 0x44f4ef
movsd xmm0, qword [esi + 0x1c]
lea eax, [esp + 0x20]
push eax
sub esp, 8
movsd qword [esp], xmm0
call edi
cmp eax, 1
jne 0x44f4ef
movzx ecx, word [esp + 0x20]
jmp 0x44f51c
or ecx, 0xffffffff
jmp 0x44f51c
test ecx, ecx
jne 0x44f518
movsd xmm0, qword [esi + 0x1c]
lea eax, [esp + 0x20]
push eax
sub esp, 8
movsd qword [esp], xmm0
call edi
cmp eax, 1
jne 0x44f518
movzx ecx, word [esp + 0x20]
jmp 0x44f51b
or ecx, 0xffffffff
dec ecx
mov eax, ecx
mov dword [0x50adbc], ecx
sub eax, dword [0x50ad90]
mov dword [0x50ada4], eax
mov eax, dword [esi + 0x70]
mov dword [0x50ae78], eax
test eax, eax
jne 0x44f58d
xorps xmm0, xmm0
movaps xmmword [esp + 0x20], xmm0
cmp dword [esi + 0x3c], eax
jne 0x44f57b
movsd xmm0, qword [esi + 0x34]
lea eax, [esp + 0x20]
push eax
sub esp, 8
movsd qword [esp], xmm0
call edi
mov ecx, dword [0x50adbc]
cmp eax, 1
jne 0x44f57b
movzx eax, word [esp + 0x20]
sub ecx, eax
mov dword [0x50ad94], eax
mov dword [0x50ada8], ecx
jmp 0x44f5b9
or eax, 0xffffffff
sub ecx, eax
mov dword [0x50ad94], eax
mov dword [0x50ada8], ecx
jmp 0x44f5b9
mov ecx, dword [0x50b088]
push dword [0x50ada4]
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
call eax
mov ecx, dword [0x50ada4]
sub ecx, eax
mov dword [0x50ada8], eax
add ecx, dword [0x50ad90]
mov dword [0x50ad94], ecx
mov eax, dword [esi + 0x40]
xorps xmm0, xmm0
mov dword [0x50ad9c], eax
dec eax
neg eax
movaps xmmword [esp + 0x20], xmm0
sbb eax, eax
add eax, 2
mov dword [0x50ada0], eax
mov eax, dword [esi + 0x24]
test eax, eax
jne 0x44f600
movsd xmm0, qword [esi + 0x1c]
lea eax, [esp + 0x20]
push eax
sub esp, 8
movsd qword [esp], xmm0
call edi
cmp eax, 1
mov eax, dword [esi + 0x24]
jne 0x44f600
movzx ecx, word [esp + 0x22]
jmp 0x44f603
or ecx, 0xffffffff
xorps xmm0, xmm0
movaps xmmword [esp + 0x20], xmm0
cmp ecx, dword [0x50adc0]
jg 0x44f64a
test eax, eax
jne 0x44f63e
movsd xmm0, qword [esi + 0x1c]
lea eax, [esp + 0x20]
push eax
sub esp, 8
movsd qword [esp], xmm0
call edi
cmp eax, 1
jne 0x44f63e
movzx ecx, word [esp + 0x22]
mov eax, dword [0x50adc0]
sub eax, ecx
jmp 0x44f67b
mov eax, dword [0x50adc0]
or ecx, 0xffffffff
sub eax, ecx
jmp 0x44f67b
test eax, eax
jne 0x44f66e
movsd xmm0, qword [esi + 0x1c]
lea eax, [esp + 0x20]
push eax
sub esp, 8
movsd qword [esp], xmm0
call edi
cmp eax, 1
jne 0x44f66e
movzx ecx, word [esp + 0x22]
jmp 0x44f671
or ecx, 0xffffffff
mov eax, dword [0x50adc0]
sub eax, ecx
add eax, 0xc
mov dword [0x50adb0], eax
xorps xmm0, xmm0
mov ecx, dword [esi + 0x6c]
movaps xmmword [esp + 0x20], xmm0
test ecx, ecx
jne 0x44f6b2
movsd xmm0, qword [esi + 0x64]
lea eax, [esp + 0x20]
push eax
sub esp, 8
movsd qword [esp], xmm0
call edi
mov ecx, dword [esi + 0x6c]
cmp eax, 1
jne 0x44f6b2
movzx eax, word [esp + 0x22]
jmp 0x44f6b5
or eax, 0xffffffff
xorps xmm0, xmm0
movaps xmmword [esp + 0x20], xmm0
cmp eax, dword [0x50adc0]
jl 0x44f6fa
test ecx, ecx
jne 0x44f6ef
movsd xmm0, qword [esi + 0x64]
lea eax, [esp + 0x20]
push eax
sub esp, 8
movsd qword [esp], xmm0
call edi
cmp eax, 1
jne 0x44f6ef
movzx eax, word [esp + 0x22]
sub eax, dword [0x50adc0]
jmp 0x44f72a
or eax, 0xffffffff
sub eax, dword [0x50adc0]
jmp 0x44f72a
test ecx, ecx
jne 0x44f71e
movsd xmm0, qword [esi + 0x64]
lea eax, [esp + 0x20]
push eax
sub esp, 8
movsd qword [esp], xmm0
call edi
cmp eax, 1
jne 0x44f71e
movzx eax, word [esp + 0x22]
jmp 0x44f721
or eax, 0xffffffff
sub eax, dword [0x50adc0]
add eax, 0xc
mov dword [0x50adb8], eax
xorps xmm0, xmm0
cmp dword [esi + 0x6c], 0
movaps xmmword [esp + 0x20], xmm0
jne 0x44f75d
movsd xmm0, qword [esi + 0x64]
lea eax, [esp + 0x20]
push eax
sub esp, 8
movsd qword [esp], xmm0
call edi
cmp eax, 1
jne 0x44f75d
movzx eax, word [esp + 0x20]
jmp 0x44f760
or eax, 0xffffffff
cmp dword [esi + 0x6c], 0
xorps xmm0, xmm0
mov dword [esp + 0x18], eax
movaps xmmword [esp + 0x40], xmm0
jne 0x44f796
movsd xmm0, qword [esi + 0x64]
lea eax, [esp + 0x40]
push eax
sub esp, 8
movsd qword [esp], xmm0
call edi
cmp eax, 1
jne 0x44f796
movzx ecx, word [esp + 0x42]
mov dword [esp + 0x10], ecx
jmp 0x44f79e
mov dword [esp + 0x10], 0xffffffff
mov eax, dword [esi + 0x24]
xorps xmm0, xmm0
movaps xmmword [esp + 0x50], xmm0
test eax, eax
jne 0x44f7d4
movsd xmm0, qword [esi + 0x1c]
lea eax, [esp + 0x50]
push eax
sub esp, 8
movsd qword [esp], xmm0
call edi
cmp eax, 1
mov eax, dword [esi + 0x24]
jne 0x44f7d4
movzx ecx, word [esp + 0x50]
mov dword [esp + 0x1c], ecx
jmp 0x44f7dc
mov dword [esp + 0x1c], 0xffffffff
xorps xmm0, xmm0
movaps xmmword [esp + 0x30], xmm0
test eax, eax
jne 0x44f808
movsd xmm0, qword [esi + 0x1c]
lea eax, [esp + 0x30]
push eax
sub esp, 8
movsd qword [esp], xmm0
call edi
cmp eax, 1
jne 0x44f808
movzx ecx, word [esp + 0x32]
jmp 0x44f80b
or ecx, 0xffffffff
mov eax, dword [esp + 0x18]
xorps xmm0, xmm0
sub eax, dword [esp + 0x1c]
movaps xmmword [esp + 0x30], xmm0
lea eax, [eax + eax*2]
shl eax, 2
sub eax, ecx
mov ecx, dword [esp + 0x10]
add ecx, eax
mov eax, 0x2aaaaaab
mov dword [0x50adac], ecx
sub ecx, dword [0x50adb8]
sub ecx, dword [0x50adb0]
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [0x50adb4], eax
mov eax, dword [esi + 0x60]
mov dword [0x50adc4], eax
mov eax, dword [esi + 0x58]
mov dword [0x50adc8], eax
mov eax, dword [esi + 0x5c]
mov dword [0x50adcc], eax
mov eax, dword [esi + 0x98]
mov dword [0x50adf8], eax
mov al, byte [esi + 0xed]
mov byte [0x50b224], al
cmp dword [esi + 0x24], 0
jne 0x44f8a4
movsd xmm0, qword [esi + 0x1c]
lea eax, [esp + 0x30]
push eax
sub esp, 8
movsd qword [esp], xmm0
call edi
cmp eax, 1
jne 0x44f8a4
movzx eax, word [esp + 0x30]
jmp 0x44f8a7
or eax, 0xffffffff
cmp byte [0x50b224], 0
mov dword [0x50ad98], eax
je 0x44f8bc
mov dword [0x50b228], eax
jmp 0x44f901
lea ecx, [esp + 0x20]
call fcn.00442c70
xorps xmm0, xmm0
movaps xmmword [esp + 0x30], xmm0
cmp dword [eax + 8], 0
jne 0x44f8f7
movsd xmm0, qword [eax]
lea ecx, [esp + 0x30]
push ecx
sub esp, 8
movsd qword [esp], xmm0
call edi
cmp eax, 1
jne 0x44f8f7
movzx eax, word [esp + 0x30]
mov dword [0x50b228], eax
jmp 0x44f901
mov dword [0x50b228], 0xffffffff
cmp dword [0x50adc8], 0
movsd xmm0, qword [esi + 0xa0]
mov ecx, dword [0x50b088]
movsd xmm3, qword [0x4e8020]
movsd qword [0x50ae00], xmm0
movsd xmm0, qword [esi + 0x90]
movsd qword [0x50ae10], xmm0
movaps xmm0, xmm3
movsd xmm1, qword [ecx + 0x10]
movsd qword [0x50add0], xmm1
addsd xmm1, xmm3
movsd xmm2, qword [ecx + 0x18]
movsd qword [0x50add8], xmm2
addsd xmm2, xmm3
mov al, byte [ecx + 0x20]
mov byte [0x50ade0], al
divsd xmm0, xmm1
movsd qword [0x50ade8], xmm0
movaps xmm0, xmm3
divsd xmm0, xmm2
movsd qword [0x50adf0], xmm0
movsd xmm0, qword [ecx + 0x60]
movsd qword [0x50ae20], xmm0
movsd xmm0, qword [ecx + 0x68]
movsd qword [0x50ae28], xmm0
jne 0x44f9d7
cmp byte [esi + 0x110], 1
jne 0x44f9c0
movsd xmm0, qword [ecx + 0x98]
movsd qword [0x50ae30], xmm0
xorps xmm0, xmm0
movsd qword [0x50ae28], xmm0
jmp 0x44fa00
movsd xmm0, qword [ecx + 0x90]
movsd qword [0x50ae30], xmm0
movsd xmm0, qword [ecx + 0x78]
jmp 0x44f9ec
movsd xmm0, qword [ecx + 0x88]
movsd qword [0x50ae30], xmm0
movsd xmm0, qword [ecx + 0x70]
movsd qword [0x50ae08], xmm0
cmp byte [esi + 0xec], 0
je 0x44fa08
xorps xmm0, xmm0
movsd qword [0x50ae08], xmm0
movsd xmm0, qword [ecx + 0xa0]
movsd qword [0x50ae38], xmm0
movsd xmm0, qword [ecx + 0xa8]
movsd qword [0x50ae40], xmm0
movsd xmm0, qword [ecx + 0xb0]
movsd qword [0x50ae48], xmm0
movsd xmm0, qword [ecx + 0xb8]
movsd qword [0x50ae50], xmm0
movsd xmm0, qword [ecx + 0xc0]
movsd qword [0x50ae58], xmm0
movsd xmm0, qword [ecx + 0xc8]
movsd qword [0x50ae60], xmm0
movsd xmm0, qword [ecx + 0xd0]
movsd qword [0x50ae68], xmm0
mov eax, dword [esi + 0x74]
mov dword [0x50b220], eax
mov eax, dword [esi + 0x78]
mov dword [0x50b21c], eax
mov eax, dword [esi + 0x88]
mov dword [0x50b218], eax
movsd xmm0, qword [esi + 0x80]
mov eax, dword [0x50ada4]
movsd qword [0x50ae70], xmm0
add eax, 0xffffffc4
movsd xmm4, qword [esi + 0xa8]
movsd qword [0x50ae80], xmm4
movsd xmm0, qword [esi + 0xb0]
movsd qword [0x50ae88], xmm0
movsd xmm0, qword [esi + 0xb8]
movsd qword [0x50ae90], xmm0
movsd xmm1, qword [esi + 0xb0]
movd xmm0, eax
movaps xmm2, xmm1
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
divsd xmm0, qword [0x4e8040]
subsd xmm2, xmm0
xorps xmm0, xmm0
maxsd xmm2, xmm0
comisd xmm2, xmm1
ja 0x44fb0e
movaps xmm1, xmm2
addsd xmm1, xmm3
movsd qword [esp + 0x10], xmm0
push ecx
lea eax, [esp + 0x14]
push eax
mulsd xmm1, xmm4
movsd qword [0x50ae98], xmm1
mov eax, dword [ecx + 0xe8]
lea ecx, [esp + 0x28]
inc eax
push eax
call fcn.0042f9f0
mov esi, eax
cmp esi, 0x50b08c
je 0x44fb7c
mov ecx, 0x50b08c
call fcn.0042f990
mov ecx, dword [esi]
mov dword [0x50b08c], ecx
mov ecx, dword [esi + 4]
mov dword [0x50b090], ecx
mov eax, dword [esi + 8]
mov dword [0x50b094], eax
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov edx, dword [esp + 0x20]
test edx, edx
je 0x44fbb5
mov ecx, dword [esp + 0x28]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffff8
cmp ecx, 0x1000
jb 0x44fbab
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x450384
push ecx
push edx
call fcn.0047696c
add esp, 8
push ecx
lea eax, [esp + 0x14]
xorps xmm0, xmm0
push eax
mov eax, dword [0x50b088]
lea ecx, [esp + 0x28]
movsd qword [esp + 0x18], xmm0
mov eax, dword [eax + 0xe8]
inc eax
push eax
call fcn.0042f9f0
mov esi, eax
cmp esi, 0x50b098
je 0x44fc1b
mov ecx, 0x50b098
call fcn.0042f990
mov ecx, dword [esi]
mov dword [0x50b098], ecx
mov ecx, dword [esi + 4]
mov dword [0x50b09c], ecx
mov eax, dword [esi + 8]
mov dword [0x50b0a0], eax
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov edx, dword [esp + 0x20]
test edx, edx
je 0x44fc54
mov ecx, dword [esp + 0x28]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffff8
cmp ecx, 0x1000
jb 0x44fc4a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x450389
push ecx
push edx
call fcn.0047696c
add esp, 8
push ecx
lea eax, [esp + 0x14]
xorps xmm0, xmm0
push eax
mov eax, dword [0x50b088]
lea ecx, [esp + 0x28]
movsd qword [esp + 0x18], xmm0
mov eax, dword [eax + 0xe8]
inc eax
push eax
call fcn.0042f9f0
mov esi, eax
cmp esi, 0x50b0a4
je 0x44fcba
mov ecx, 0x50b0a4
call fcn.0042f990
mov ecx, dword [esi]
mov dword [0x50b0a4], ecx
mov ecx, dword [esi + 4]
mov dword [0x50b0a8], ecx
mov eax, dword [esi + 8]
mov dword [0x50b0ac], eax
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov edx, dword [esp + 0x20]
test edx, edx
je 0x44fcf3
mov ecx, dword [esp + 0x28]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffff8
cmp ecx, 0x1000
jb 0x44fce9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45038e
push ecx
push edx
call fcn.0047696c
add esp, 8
push ecx
lea eax, [esp + 0x14]
xorps xmm0, xmm0
push eax
mov eax, dword [0x50b088]
lea ecx, [esp + 0x28]
movsd qword [esp + 0x18], xmm0
mov eax, dword [eax + 0xe8]
inc eax
push eax
call fcn.0042f9f0
mov esi, eax
cmp esi, 0x50b0b0
je 0x44fd59
mov ecx, 0x50b0b0
call fcn.0042f990
mov ecx, dword [esi]
mov dword [0x50b0b0], ecx
mov ecx, dword [esi + 4]
mov dword [0x50b0b4], ecx
mov eax, dword [esi + 8]
mov dword [0x50b0b8], eax
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov edx, dword [esp + 0x20]
test edx, edx
je 0x44fd92
mov ecx, dword [esp + 0x28]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffff8
cmp ecx, 0x1000
jb 0x44fd88
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x450393
push ecx
push edx
call fcn.0047696c
add esp, 8
push ecx
lea eax, [esp + 0x14]
xorps xmm0, xmm0
push eax
mov eax, dword [0x50b088]
lea ecx, [esp + 0x28]
movsd qword [esp + 0x18], xmm0
mov eax, dword [eax + 0xe8]
inc eax
push eax
call fcn.0042f9f0
mov esi, eax
cmp esi, 0x50b0bc
je 0x44fdf8
mov ecx, 0x50b0bc
call fcn.0042f990
mov ecx, dword [esi]
mov dword [0x50b0bc], ecx
mov ecx, dword [esi + 4]
mov dword [0x50b0c0], ecx
mov eax, dword [esi + 8]
mov dword [0x50b0c4], eax
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov edx, dword [esp + 0x20]
test edx, edx
je 0x44fe31
mov ecx, dword [esp + 0x28]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffff8
cmp ecx, 0x1000
jb 0x44fe27
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x450398
push ecx
push edx
call fcn.0047696c
add esp, 8
push ecx
lea eax, [esp + 0x14]
xorps xmm0, xmm0
push eax
mov eax, dword [0x50b088]
lea ecx, [esp + 0x28]
movsd qword [esp + 0x18], xmm0
mov eax, dword [eax + 0xe8]
inc eax
push eax
call fcn.0042f9f0
mov esi, eax
cmp esi, 0x50b0c8
je 0x44fe97
mov ecx, 0x50b0c8
call fcn.0042f990
mov ecx, dword [esi]
mov dword [0x50b0c8], ecx
mov ecx, dword [esi + 4]
mov dword [0x50b0cc], ecx
mov eax, dword [esi + 8]
mov dword [0x50b0d0], eax
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov edx, dword [esp + 0x20]
test edx, edx
je 0x44fed0
mov ecx, dword [esp + 0x28]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffff8
cmp ecx, 0x1000
jb 0x44fec6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45039d
push ecx
push edx
call fcn.0047696c
add esp, 8
push ecx
lea eax, [esp + 0x14]
xorps xmm0, xmm0
push eax
mov eax, dword [0x50b088]
lea ecx, [esp + 0x28]
movsd qword [esp + 0x18], xmm0
mov eax, dword [eax + 0xe8]
inc eax
push eax
call fcn.0042f9f0
mov esi, eax
cmp esi, 0x50b0d4
je 0x44ff36
mov ecx, 0x50b0d4
call fcn.0042f990
mov ecx, dword [esi]
mov dword [0x50b0d4], ecx
mov ecx, dword [esi + 4]
mov dword [0x50b0d8], ecx
mov eax, dword [esi + 8]
mov dword [0x50b0dc], eax
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov edx, dword [esp + 0x20]
test edx, edx
je 0x44ff6f
mov ecx, dword [esp + 0x28]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffff8
cmp ecx, 0x1000
jb 0x44ff65
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4503a2
push ecx
push edx
call fcn.0047696c
add esp, 8
push ecx
lea eax, [esp + 0x14]
xorps xmm0, xmm0
push eax
mov eax, dword [0x50b088]
lea ecx, [esp + 0x28]
movsd qword [esp + 0x18], xmm0
mov eax, dword [eax + 0xe8]
inc eax
push eax
call fcn.0042f9f0
mov esi, eax
cmp esi, 0x50b0e0
je 0x44ffd5
mov ecx, 0x50b0e0
call fcn.0042f990
mov ecx, dword [esi]
mov dword [0x50b0e0], ecx
mov ecx, dword [esi + 4]
mov dword [0x50b0e4], ecx
mov eax, dword [esi + 8]
mov dword [0x50b0e8], eax
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov edx, dword [esp + 0x20]
test edx, edx
je 0x45000e
mov ecx, dword [esp + 0x28]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffff8
cmp ecx, 0x1000
jb 0x450004
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4503a7
push ecx
push edx
call fcn.0047696c
add esp, 8
push ecx
lea eax, [esp + 0x14]
xorps xmm0, xmm0
push eax
mov eax, dword [0x50b088]
lea ecx, [esp + 0x28]
movsd qword [esp + 0x18], xmm0
mov eax, dword [eax + 0xe8]
inc eax
push eax
call fcn.0042f9f0
mov esi, eax
cmp esi, 0x50b0ec
je 0x450074
mov ecx, 0x50b0ec
call fcn.0042f990
mov ecx, dword [esi]
mov dword [0x50b0ec], ecx
mov ecx, dword [esi + 4]
mov dword [0x50b0f0], ecx
mov eax, dword [esi + 8]
mov dword [0x50b0f4], eax
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov edx, dword [esp + 0x20]
test edx, edx
je 0x4500ad
mov ecx, dword [esp + 0x28]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffff8
cmp ecx, 0x1000
jb 0x4500a3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4503ac
push ecx
push edx
call fcn.0047696c
add esp, 8
push ecx
lea eax, [esp + 0x14]
xorps xmm0, xmm0
push eax
mov eax, dword [0x50b088]
lea ecx, [esp + 0x28]
movsd qword [esp + 0x18], xmm0
mov eax, dword [eax + 0xec]
inc eax
push eax
call fcn.0042f9f0
mov esi, eax
cmp esi, 0x50b0f8
je 0x450113
mov ecx, 0x50b0f8
call fcn.0042f990
mov ecx, dword [esi]
mov dword [0x50b0f8], ecx
mov ecx, dword [esi + 4]
mov dword [0x50b0fc], ecx
mov eax, dword [esi + 8]
mov dword [0x50b100], eax
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov edx, dword [esp + 0x20]
test edx, edx
je 0x45014c
mov ecx, dword [esp + 0x28]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffff8
cmp ecx, 0x1000
jb 0x450142
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4503b1
push ecx
push edx
call fcn.0047696c
add esp, 8
push ecx
lea eax, [esp + 0x14]
xorps xmm0, xmm0
push eax
mov eax, dword [0x50b088]
lea ecx, [esp + 0x28]
movsd qword [esp + 0x18], xmm0
mov eax, dword [eax + 0xec]
inc eax
push eax
call fcn.0042f9f0
mov esi, eax
cmp esi, 0x50b104
je 0x4501b2
mov ecx, 0x50b104
call fcn.0042f990
mov ecx, dword [esi]
mov dword [0x50b104], ecx
mov ecx, dword [esi + 4]
mov dword [0x50b108], ecx
mov eax, dword [esi + 8]
mov dword [0x50b10c], eax
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov edx, dword [esp + 0x20]
test edx, edx
je 0x4501eb
mov ecx, dword [esp + 0x28]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffff8
cmp ecx, 0x1000
jb 0x4501e1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4503b6
push ecx
push edx
call fcn.0047696c
add esp, 8
push ecx
lea eax, [esp + 0x14]
xorps xmm0, xmm0
push eax
mov eax, dword [0x50b088]
lea ecx, [esp + 0x28]
movsd qword [esp + 0x18], xmm0
mov eax, dword [eax + 0xec]
inc eax
push eax
call fcn.0042f9f0
mov esi, eax
cmp esi, 0x50b110
je 0x450251
mov ecx, 0x50b110
call fcn.0042f990
mov ecx, dword [esi]
mov dword [0x50b110], ecx
mov ecx, dword [esi + 4]
mov dword [0x50b114], ecx
mov eax, dword [esi + 8]
mov dword [0x50b118], eax
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov edx, dword [esp + 0x20]
test edx, edx
je 0x45028a
mov ecx, dword [esp + 0x28]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffff8
cmp ecx, 0x1000
jb 0x450280
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4503bb
push ecx
push edx
call fcn.0047696c
add esp, 8
push ecx
lea eax, [esp + 0x14]
xorps xmm0, xmm0
push eax
mov eax, dword [0x50b088]
lea ecx, [esp + 0x28]
movsd qword [esp + 0x18], xmm0
mov eax, dword [eax + 0xec]
inc eax
push eax
call fcn.0042f9f0
mov esi, eax
cmp esi, 0x50b11c
je 0x4502f0
mov ecx, 0x50b11c
call fcn.0042f990
mov ecx, dword [esi]
mov dword [0x50b11c], ecx
mov ecx, dword [esi + 4]
mov dword [0x50b120], ecx
mov eax, dword [esi + 8]
mov dword [0x50b124], eax
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov edx, dword [esp + 0x20]
test edx, edx
je 0x450329
mov ecx, dword [esp + 0x28]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffff8
cmp ecx, 0x1000
jb 0x45031f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4503c0
push ecx
push edx
call fcn.0047696c
add esp, 8
mov ecx, dword [esp + 0x6c]
xorps xmm0, xmm0
pop edi
pop esi
xor ecx, esp
movsd qword [0x50aff0], xmm0
movups xmmword [0x50b188], xmm0
movups xmmword [0x50b198], xmm0
movups xmmword [0x50b1a8], xmm0
movups xmmword [0x50b1b8], xmm0
movups xmmword [0x50b1c8], xmm0
movups xmmword [0x50b1d8], xmm0
movups xmmword [0x50b1e8], xmm0
movups xmmword [0x50b1f8], xmm0
movups xmmword [0x50b208], xmm0
call fcn.004765d5
mov esp, ebp
pop ebp
ret
call fcn.0047b9ef
call fcn.0047b9ef
call fcn.0047b9ef
call fcn.0047b9ef
call fcn.0047b9ef
call fcn.0047b9ef
call fcn.0047b9ef
call fcn.0047b9ef
call fcn.0047b9ef
call fcn.0047b9ef
call fcn.0047b9ef
call fcn.0047b9ef
call fcn.0047b9ef
int3