Function at 0x407da0
Capabilities:
Check http status code
Encode data using xor
Link many functions at runtime
Resolve function by parsing pe exports

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x440f13
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
mov eax, 0x3518
call fcn.00420440
push esi
push edi
mov dword [ebp - 0xc4], 0
lea eax, [ebp - 0xac8]
movaps xmm0, xmmword [0x4435a0]
xor ecx, ecx
movups xmmword [ebp - 0xb48], xmm0
xor edx, edx
mov dword [ebp - 0xf8], ecx
movaps xmm0, xmmword [0x4435a0]
movups xmmword [ebp - 0xb38], xmm0
lea esi, [ebp - 0xb48]
mov dword [ebp - 0xf4], edx
movaps xmm0, xmmword [0x4435a0]
sub eax, esi
movups xmmword [ebp - 0xb28], xmm0
mov edi, eax
mov dword [ebp - 0xf0], ecx
movaps xmm0, xmmword [0x4435a0]
movups xmmword [ebp - 0xb18], xmm0
sar edi, 4
xorps xmm0, xmm0
mov dword [ebp - 0xc8], eax
movups xmmword [ebp - 0xb08], xmm0
movups xmmword [ebp - 0xaf8], xmm0
movups xmmword [ebp - 0xae8], xmm0
movups xmmword [ebp - 0xad8], xmm0
test edi, edi
je 0x407ea7
push edi
lea ecx, [ebp - 0xf8]
call fcn.00412bb0
push dword [ebp - 0xc8]
mov esi, dword [ebp - 0xf8]
lea eax, [ebp - 0xb48]
push eax
push esi
call fcn.00421fa0
mov ecx, dword [ebp - 0xf8]
mov edx, edi
shl edx, 4
add esp, 0xc
add edx, esi
mov dword [ebp - 0xf4], edx
sub edx, ecx
mov dword [ebp - 4], 0
sar edx, 4
lea ecx, [ebp - 0x104]
mov eax, edx
mov dword [ebp - 0xc8], edx
cdq
sub eax, edx
mov esi, eax
lea eax, [ebp - 0x3d]
sar esi, 1
push eax
push esi
mov dword [ebp - 0x2c], esi
call fcn.00404540
xor edi, edi
mov byte [ebp - 4], 1
test esi, esi
jle 0x407f4c
movd xmm1, dword [ebp - 0xc8]
xor esi, esi
movsd xmm0, qword [0x443548]
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x138]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [eax + esi - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x407f00
lea eax, [ebp - 0x104]
push eax
push dword [ebp - 0xc8]
lea eax, [ebp - 0xf8]
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x407fb9
xor esi, esi
lea eax, [ecx + esi]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x407f81
push 0x4573b0
call fcn.004032b0
xor esi, esi
add esp, 4
cmp dword [ebp - 0x2c], esi
jle 0x40803c
movd xmm1, dword [ebp - 0xc8]
xor edi, edi
movsd xmm0, qword [0x443548]
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, esi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x148]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea edi, [edi + 0x10]
inc esi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [eax + edi - 0x10], xmm0
cmp esi, dword [ebp - 0x2c]
jl 0x407ff0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x4080b0
xor esi, esi
lea eax, [ecx + esi]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x408072
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x408142
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x158]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [eax + esi - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4080f0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x4081b0
xor esi, esi
lea eax, [ecx + esi]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x408172
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x408242
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x168]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [eax + esi - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4081f0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x4082b0
xor esi, esi
lea eax, [ecx + esi]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x408272
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x408342
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x178]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [eax + esi - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4082f0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x4083b0
xor esi, esi
lea eax, [ecx + esi]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x408372
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x408442
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x188]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [eax + esi - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4083f0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x4084b0
xor esi, esi
lea eax, [ecx + esi]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x408472
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x408542
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x198]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [eax + esi - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4084f0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x4085b0
xor esi, esi
lea eax, [ecx + esi]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x408572
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x408642
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x1a8]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [eax + esi - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4085f0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x4086b0
xor esi, esi
lea eax, [ecx + esi]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x408672
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x408742
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x1b8]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [eax + esi - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4086f0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x4087b0
xor esi, esi
lea eax, [ecx + esi]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x408772
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x408842
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x1c8]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [eax + esi - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4087f0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x4088b0
xor esi, esi
lea eax, [ecx + esi]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x408872
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x408942
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x1d8]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [eax + esi - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4088f0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x4089b0
xor esi, esi
lea eax, [ecx + esi]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x408972
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x408a42
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x1e8]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [eax + esi - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4089f0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x408ab0
xor esi, esi
lea eax, [ecx + esi]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x408a72
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x408b42
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x1f8]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [eax + esi - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x408af0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x408bb0
xor esi, esi
lea eax, [ecx + esi]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x408b72
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x408c42
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x208]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [eax + esi - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x408bf0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x408cb0
xor esi, esi
lea eax, [ecx + esi]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x408c72
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x408d42
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x218]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [eax + esi - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x408cf0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x408db0
xor esi, esi
lea eax, [ecx + esi]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x408d72
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x408e42
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x228]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [eax + esi - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x408df0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x408eb0
xor esi, esi
lea eax, [ecx + esi]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x408e72
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x408f42
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x238]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [eax + esi - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x408ef0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x408fb0
xor esi, esi
lea eax, [ecx + esi]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x408f72
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x409042
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x248]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [eax + esi - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x408ff0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x4090b0
xor esi, esi
lea eax, [ecx + esi]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x409072
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x409142
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x258]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [eax + esi - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4090f0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x4091b0
xor esi, esi
lea eax, [ecx + esi]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x409172
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x409242
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x268]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [eax + esi - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4091f0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x4092b0
xor esi, esi
lea eax, [ecx + esi]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x409272
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x409342
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x278]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [eax + esi - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4092f0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x4093b0
xor esi, esi
lea eax, [esi + ecx]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x409372
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x409442
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x288]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4093f0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x4094b0
xor esi, esi
lea eax, [esi + ecx]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x409472
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x409542
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x298]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4094f0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x4095b0
xor esi, esi
lea eax, [esi + ecx]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x409572
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x409642
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x2a8]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4095f0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x4096b0
xor esi, esi
lea eax, [esi + ecx]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x409672
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x409742
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x2b8]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4096f0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x4097b0
xor esi, esi
lea eax, [esi + ecx]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x409772
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x409842
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x2c8]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4097f0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x4098b0
xor esi, esi
lea eax, [esi + ecx]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x409872
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x409942
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x2d8]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4098f0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x4099b0
xor esi, esi
lea eax, [esi + ecx]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x409972
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x409a42
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x2e8]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4099f0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x409ab0
xor esi, esi
lea eax, [esi + ecx]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x409a72
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x409b42
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x2f8]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x409af0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x409bb0
xor esi, esi
lea eax, [esi + ecx]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x409b72
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x409c42
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x308]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x409bf0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x409cb0
xor esi, esi
lea eax, [esi + ecx]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x409c72
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x409d42
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x318]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x409cf0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x409db0
xor esi, esi
lea eax, [esi + ecx]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x409d72
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x409e42
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x328]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x409df0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x409eb0
xor esi, esi
lea eax, [esi + ecx]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x409e72
mov esi, dword [ebp - 0xc8]
push 0x4573b0
call fcn.004032b0
mov eax, esi
add esp, 4
cdq
xor edi, edi
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2c], eax
test eax, eax
jle 0x409f42
movsd xmm0, qword [0x443548]
movd xmm1, esi
xor esi, esi
cvtdq2pd xmm1, xmm1
movsd qword [ebp - 0x18], xmm0
movsd qword [ebp - 0x20], xmm1
nop dword [eax]
movd xmm0, edi
lea eax, [ebp - 0x28]
cvtdq2pd xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x338]
push eax
mulsd xmm0, qword [0x443590]
divsd xmm0, xmm1
movsd qword [ebp - 0x28], xmm0
call fcn.004035e0
movsd xmm1, qword [ebp - 0x20]
lea esi, [esi + 0x10]
inc edi
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [ebp - 0x104]
movups xmmword [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x409ef0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415d80
mov eax, dword [ebp - 0xf4]
add esp, 0xc
mov ecx, dword [ebp - 0xf8]
xor edi, edi
sub eax, ecx
sar eax, 4
test eax, eax
je 0x409faa
xor esi, esi
lea eax, [esi + ecx]
push 0x442788
push eax
push 0x4573b0
call fcn.00401230
add esp, 8
push eax
call fcn.00401970
mov eax, dword [ebp - 0xf4]
lea esi, [esi + 0x10]
mov ecx, dword [ebp - 0xf8]
inc edi
sub eax, ecx
add esp, 8
sar eax, 4
cmp edi, eax
jb 0x409f72
push 0x4573b0
call fcn.004032b0
add esp, 4
lea eax, [ebp - 0x3d]
lea ecx, [ebp - 0x110]
push eax
push 0x3e8
call fcn.004044a0
mov byte [ebp - 4], 2
call fcn.0041d97a
push eax
lea ecx, [ebp - 0x21a0]
call fcn.00404400
mov edi, dword [ebp - 0x110]
xor esi, esi
nop dword [eax + eax]
lea eax, [ebp - 0x21a0]
push eax
call fcn.004033f0
fstp qword [ebp - 0x20]
movsd xmm0, qword [ebp - 0x20]
add esp, 4
mulsd xmm0, qword [0x443570]
subsd xmm0, qword [0x443568]
movsd qword [esi + edi], xmm0
add esi, 8
cmp esi, 0x1f40
jl 0x409ff0
xorps xmm1, xmm1
mov dword [ebp - 0x2c], 0
movsd qword [ebp - 0x20], xmm1
mov edx, dword [ebp - 0x110]
xor eax, eax
xor ecx, ecx
movsd qword [ebp - 0x18], xmm1
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x60], edx
mov dword [ebp - 0x64], ecx
nop
movsd xmm0, qword [edx + eax*8]
xor esi, esi
movsd qword [ebp - 0x28], xmm0
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
mov dword [ebp - 0x48], esi
mulsd xmm0, qword [0x443540]
call fcn.00428b90
movsd xmm1, qword [ebp - 0x28]
movsd qword [ebp - 0x58], xmm0
nop
mov edi, esi
mov esi, 2
and edi, 1
nop word [eax + eax]
push 0x14
sub esp, 8
movsd qword [esp], xmm1
call fcn.004144d0
add esp, 0xc
fst qword [ebp - 0x28]
test edi, edi
jne 0x40a0ce
fld qword [0x443550]
call fcn.004278f0
fstp qword [ebp - 0x28]
movsd xmm0, qword [ebp - 0x28]
call fcn.00427ad0
movaps xmm1, xmm0
subsd xmm1, qword [0x443548]
jmp 0x40a0f4
movsd xmm0, qword [ebp - 0x28]
fstp st(0)
andps xmm0, xmmword [0x4435d0]
addsd xmm0, qword [0x443548]
call fcn.00427db0
movaps xmm1, xmm0
addsd xmm1, qword [0x443548]
sub esi, 1
jne 0x40a090
mov esi, dword [ebp - 0x48]
mulsd xmm1, qword [ebp - 0x58]
inc esi
mov dword [ebp - 0x48], esi
cmp esi, 3
jl 0x40a080
mov eax, dword [ebp - 0x5c]
movaps xmm0, xmm1
mov edx, dword [ebp - 0x60]
addsd xmm0, qword [ebp - 0x18]
mov ecx, dword [ebp - 0x64]
mov esi, dword [ebp - 0x2c]
add ecx, esi
movsd qword [edx + eax*8], xmm1
inc eax
mov dword [ebp - 0x5c], eax
movsd qword [ebp - 0x18], xmm0
mov dword [ebp - 0x64], ecx
cmp eax, 0x3e8
jl 0x40a050
addsd xmm0, qword [ebp - 0x20]
mov eax, 0xcccccccd
mul esi
movaps xmm1, xmm0
movsd qword [ebp - 0x20], xmm1
movaps xmm0, xmm1
mov eax, esi
unpcklpd xmm0, xmm0
shr edx, 3
movaps xmmword [ebp - 0x90], xmm0
lea ecx, [edx + edx*4]
add ecx, ecx
sub eax, ecx
jne 0x40a209
mov esi, dword [ebp - 0x110]
lea edi, [eax + 0x7d]
add esi, 0x20
movups xmm1, xmmword [esi - 0x20]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420330
movups xmmword [esi - 0x20], xmm0
movups xmm1, xmmword [esi - 0x10]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420330
movups xmmword [esi - 0x10], xmm0
movups xmm1, xmmword [esi]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420330
movups xmmword [esi], xmm0
movups xmm1, xmmword [esi + 0x10]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420330
movups xmmword [esi + 0x10], xmm0
add esi, 0x40
movaps xmm0, xmmword [ebp - 0x90]
sub edi, 1
jne 0x40a180
mov esi, dword [ebp - 0x2c]
inc esi
xorps xmm1, xmm1
mov dword [ebp - 0x2c], esi
cmp esi, 0x32
jl 0x40a036
push 0
call fcn.00427858
push eax
call fcn.00427846
mov edi, dword fs:[0x2c]
add esp, 8
mov edx, dword [0x457698]
mov ecx, dword [edi + edx*4]
mov eax, dword [ecx + 0x4c]
test al, 1
jne 0x40a2f0
movups xmm0, xmmword [0x4424d8]
mov dword [ecx + 8], 0
or eax, 1
mov dword [ecx + 0xc], 0
movups xmmword [ebp - 0xc0], xmm0
mov word [ecx + 0x10], 0
movups xmm0, xmmword [0x4424e8]
mov dword [ecx + 0x4c], eax
mov eax, dword [0x442518]
movups xmmword [ebp - 0xb0], xmm0
mov dword [ebp - 0x80], eax
movups xmm0, xmmword [0x4424f8]
mov al, byte [ebp - 0x7e]
movups xmmword [ebp - 0xa0], xmm0
movups xmm0, xmmword [0x442508]
movups xmmword [ebp - 0x90], xmm0
movups xmm0, xmmword [ebp - 0xb6]
movups xmmword [ecx + 0x12], xmm0
movups xmm0, xmmword [ebp - 0xa6]
movups xmmword [ecx + 0x22], xmm0
movups xmm0, xmmword [ebp - 0x96]
movups xmmword [ecx + 0x32], xmm0
movq xmm0, qword [ebp - 0x86]
movq qword [ecx + 0x42], xmm0
mov byte [ecx + 0x4a], al
mov esi, dword [edi + edx*4]
cmp byte [esi + 0x11], 0
jne 0x40a310
xor edx, edx
nop
lea eax, [edx + 0x78]
xor byte [edx + esi + 0x12], al
inc edx
cmp edx, 0x39
jb 0x40a300
lea eax, [esi + 0x12]
mov byte [esi + 0x11], 1
push eax
lea ecx, [ebp - 0xac8]
call fcn.00404240
mov esi, dword [0x457698]
mov byte [ebp - 4], 3
mov ecx, dword [edi + esi*4]
mov eax, dword [ecx + 0x94]
test al, 1
jne 0x40a38c
movups xmm0, xmmword [0x442520]
sub esp, 0x44
or eax, 1
mov edx, esp
mov dword [ecx + 0x94], eax
mov eax, dword [0x442560]
lea ecx, [ecx + 0x50]
movups xmmword [edx], xmm0
movups xmm0, xmmword [0x442530]
movups xmmword [edx + 0x10], xmm0
movups xmm0, xmmword [0x442540]
movups xmmword [edx + 0x20], xmm0
movups xmm0, xmmword [0x442550]
movups xmmword [edx + 0x30], xmm0
mov dword [edx + 0x40], eax
call fcn.00404380
mov ecx, dword [edi + esi*4]
add ecx, 0x50
call fcn.00405d10
push eax
lea ecx, [ebp - 0xab0]
call fcn.00404240
mov ecx, dword [edi + esi*4]
mov byte [ebp - 4], 4
mov eax, dword [ecx + 0xdc]
test al, 1
jne 0x40a403
movups xmm0, xmmword [0x442568]
sub esp, 0x44
or eax, 1
mov edx, esp
mov dword [ecx + 0xdc], eax
mov eax, dword [0x4425a8]
lea ecx, [ecx + 0x98]
movups xmmword [edx], xmm0
movups xmm0, xmmword [0x442578]
movups xmmword [edx + 0x10], xmm0
movups xmm0, xmmword [0x442588]
movups xmmword [edx + 0x20], xmm0
movups xmm0, xmmword [0x442598]
movups xmmword [edx + 0x30], xmm0
mov dword [edx + 0x40], eax
call fcn.00404380
mov ecx, dword [edi + esi*4]
add ecx, 0x98
call fcn.00405d10
push eax
lea ecx, [ebp - 0xa98]
call fcn.00404240
mov ecx, dword [edi + esi*4]
mov byte [ebp - 4], 5
mov eax, dword [ecx + 0x124]
test al, 1
jne 0x40a4db
movups xmm0, xmmword [0x4425b0]
mov dword [ecx + 0xe0], 0
or eax, 1
mov dword [ecx + 0xe4], 0
movups xmmword [ebp - 0xc0], xmm0
mov word [ecx + 0xe8], 0
movups xmm0, xmmword [0x4425c0]
mov dword [ecx + 0x124], eax
mov eax, dword [0x4425f0]
movups xmmword [ebp - 0xb0], xmm0
mov dword [ebp - 0x80], eax
movups xmm0, xmmword [0x4425d0]
mov al, byte [ebp - 0x7e]
movups xmmword [ebp - 0xa0], xmm0
movups xmm0, xmmword [0x4425e0]
movups xmmword [ebp - 0x90], xmm0
movups xmm0, xmmword [ebp - 0xb6]
movups xmmword [ecx + 0xea], xmm0
movups xmm0, xmmword [ebp - 0xa6]
movups xmmword [ecx + 0xfa], xmm0
movups xmm0, xmmword [ebp - 0x96]
movups xmmword [ecx + 0x10a], xmm0
movq xmm0, qword [ebp - 0x86]
movq qword [ecx + 0x11a], xmm0
mov byte [ecx + 0x122], al
mov esi, dword [edi + esi*4]
cmp byte [esi + 0xe9], 0
jne 0x40a500
xor edx, edx
nop dword [eax]
lea eax, [edx + 0x79]
xor byte [edx + esi + 0xea], al
inc edx
cmp edx, 0x39
jb 0x40a4f0
lea eax, [esi + 0xea]
mov byte [esi + 0xe9], 1
push eax
lea ecx, [ebp - 0xa80]
call fcn.00404240
lea eax, [ebp - 0xac8]
mov byte [ebp - 4], 6
lea ecx, [ebp - 0xa68]
mov dword [ebp - 0x11c], 0
sub ecx, eax
mov dword [ebp - 0x118], 0
mov eax, 0x2aaaaaab
mov dword [ebp - 0x114], 0
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x40a5f5
cmp eax, 0xaaaaaaa
ja 0x412a7f
lea esi, [eax + eax*2]
shl esi, 3
push esi
call fcn.00401f00
mov edi, eax
add esp, 4
lea eax, [ebp - 0x11c]
mov dword [ebp - 0x11c], edi
mov dword [ebp - 0x118], edi
mov dword [ebp - 0x48], eax
lea ecx, [edi + esi]
mov dword [ebp - 0x114], ecx
mov dword [ebp - 0x88], edi
mov dword [ebp - 0x84], edi
mov dword [ebp - 0x80], eax
lea esi, [ebp - 0xac8]
mov byte [ebp - 4], 8
lea eax, [ebp - 0xa68]
cmp esi, eax
je 0x40a5de
nop dword [eax]
push esi
mov ecx, edi
call fcn.004040e0
add edi, 0x18
lea eax, [ebp - 0xa68]
add esi, 0x18
mov dword [ebp - 0x84], edi
cmp esi, eax
jne 0x40a5c0
lea eax, [ebp - 0x11c]
push eax
push edi
push edi
call fcn.00402190
add esp, 0xc
mov dword [ebp - 0x118], edi
push fcn.00404c50
push 4
push 0x18
lea eax, [ebp - 0xac8]
mov byte [ebp - 4], 0xa
push eax
call fcn.004201ce
mov dword [ebp - 0x48], 0
mov edx, dword [ebp - 0x110]
xor eax, eax
xorps xmm0, xmm0
mov dword [ebp - 0x64], eax
xor ecx, ecx
movsd qword [ebp - 0x18], xmm0
mov dword [ebp - 0x60], edx
mov dword [ebp - 0x5c], ecx
movsd xmm0, qword [edx + eax*8]
xor esi, esi
movsd qword [ebp - 0x28], xmm0
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
mov dword [ebp - 0x2c], esi
mulsd xmm0, qword [0x443540]
call fcn.00428b90
movsd xmm1, qword [ebp - 0x28]
movsd qword [ebp - 0x58], xmm0
nop
mov edi, esi
mov esi, 2
and edi, 1
nop word [eax + eax]
push 0x14
sub esp, 8
movsd qword [esp], xmm1
call fcn.004144d0
add esp, 0xc
fst qword [ebp - 0x28]
test edi, edi
jne 0x40a6ae
fld qword [0x443550]
call fcn.004278f0
fstp qword [ebp - 0x28]
movsd xmm0, qword [ebp - 0x28]
call fcn.00427ad0
movaps xmm1, xmm0
subsd xmm1, qword [0x443548]
jmp 0x40a6d4
movsd xmm0, qword [ebp - 0x28]
fstp st(0)
andps xmm0, xmmword [0x4435d0]
addsd xmm0, qword [0x443548]
call fcn.00427db0
movaps xmm1, xmm0
addsd xmm1, qword [0x443548]
sub esi, 1
jne 0x40a670
mov esi, dword [ebp - 0x2c]
mulsd xmm1, qword [ebp - 0x58]
inc esi
mov dword [ebp - 0x2c], esi
cmp esi, 3
jl 0x40a660
mov eax, dword [ebp - 0x64]
movaps xmm0, xmm1
mov edx, dword [ebp - 0x60]
addsd xmm0, qword [ebp - 0x18]
mov ecx, dword [ebp - 0x5c]
mov esi, dword [ebp - 0x48]
add ecx, esi
movsd qword [edx + eax*8], xmm1
inc eax
mov dword [ebp - 0x64], eax
movsd qword [ebp - 0x18], xmm0
mov dword [ebp - 0x5c], ecx
cmp eax, 0x3e8
jl 0x40a630
addsd xmm0, qword [ebp - 0x20]
mov eax, 0xcccccccd
mul esi
movsd qword [ebp - 0x20], xmm0
unpcklpd xmm0, xmm0
mov eax, esi
shr edx, 3
movups xmmword [ebp - 0x90], xmm0
lea ecx, [edx + edx*4]
add ecx, ecx
sub eax, ecx
jne 0x40a7df
mov esi, dword [ebp - 0x110]
lea edi, [eax + 0x7d]
add esi, 0x20
nop word [eax + eax]
movups xmm1, xmmword [esi - 0x20]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420330
movaps xmm1, xmmword [0x4435b0]
movups xmmword [esi - 0x20], xmm0
movups xmm0, xmmword [esi - 0x10]
addpd xmm0, xmmword [ebp - 0x90]
call fcn.00420330
movaps xmm1, xmmword [0x4435b0]
movups xmmword [esi - 0x10], xmm0
movups xmm0, xmmword [esi]
addpd xmm0, xmmword [ebp - 0x90]
call fcn.00420330
movups xmmword [esi], xmm0
movups xmm1, xmmword [esi + 0x10]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420330
movups xmmword [esi + 0x10], xmm0
add esi, 0x40
movups xmm0, xmmword [ebp - 0x90]
sub edi, 1
jne 0x40a760
mov esi, dword [ebp - 0x48]
inc esi
mov dword [ebp - 0x48], esi
cmp esi, 0x32
jl 0x40a615
cmp byte [ebx + 0xc], 0
je 0x40a8c0
mov edx, dword fs:[0x2c]
mov esi, dword [0x457698]
mov ecx, dword [edx + esi*4]
mov eax, dword [ecx + 0x14c]
test al, 1
jne 0x40a878
movups xmm0, xmmword [0x4425f4]
mov dword [ecx + 0x128], 0
or eax, 1
mov dword [ecx + 0x12c], 0
movups xmmword [ebp - 0xa0], xmm0
mov dword [ecx + 0x14c], eax
movups xmm0, xmmword [0x442604]
mov eax, dword [0x442614]
mov word [ecx + 0x130], 0
movups xmmword [ebp - 0x90], xmm0
mov dword [ebp - 0x80], eax
movups xmm0, xmmword [ebp - 0x96]
movups xmmword [ecx + 0x132], xmm0
movq xmm0, qword [ebp - 0x86]
movq qword [ecx + 0x142], xmm0
mov esi, dword [edx + esi*4]
cmp byte [esi + 0x131], 0
jne 0x40a8a0
xor edx, edx
nop word [eax + eax]
lea eax, [edx + 0x79]
xor byte [edx + esi + 0x132], al
inc edx
cmp edx, 0x18
jb 0x40a890
lea eax, [esi + 0x132]
mov byte [esi + 0x131], 1
push eax
lea ecx, [ebp - 0x9f0]
call fcn.00404240
mov ecx, 1
jmp 0x40a903
mov ecx, dword [ebp - 0x118]
mov eax, 0x2aaaaaab
sub ecx, dword [ebp - 0x11c]
imul ecx
sar edx, 2
mov esi, edx
shr esi, 0x1f
add esi, edx
call fcn.00427825
xor edx, edx
div esi
mov eax, dword [ebp - 0x11c]
lea ecx, [edx + edx*2]
lea eax, [eax + ecx*8]
push eax
lea ecx, [ebp - 0xa08]
call fcn.004040e0
mov ecx, 2
mov dword [ebp - 0x48], ecx
lea ecx, [ebp - 0xa20]
push eax
call fcn.004040a0
mov eax, dword [ebp - 0x48]
mov dword [ebp - 4], 0xc
test al, 2
je 0x40a934
and eax, 0xfffffffd
lea ecx, [ebp - 0xa08]
mov dword [ebp - 0x48], eax
call fcn.00404c50
mov eax, dword [ebp - 0x48]
mov byte [ebp - 4], 0xd
test al, 1
je 0x40a947
lea ecx, [ebp - 0x9f0]
call fcn.00404c50
mov dword [ebp - 0x48], 0
nop
mov edx, dword [ebp - 0x110]
xor eax, eax
xorps xmm0, xmm0
mov dword [ebp - 0x64], eax
xor ecx, ecx
movsd qword [ebp - 0x18], xmm0
mov dword [ebp - 0x60], edx
mov dword [ebp - 0x5c], ecx
nop dword [eax + eax]
movsd xmm0, qword [edx + eax*8]
xor esi, esi
movsd qword [ebp - 0x28], xmm0
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
mov dword [ebp - 0x2c], esi
mulsd xmm0, qword [0x443540]
call fcn.00428b90
movsd xmm1, qword [ebp - 0x28]
movsd qword [ebp - 0x58], xmm0
nop
mov edi, esi
mov esi, 2
and edi, 1
nop word [eax + eax]
push 0x14
sub esp, 8
movsd qword [esp], xmm1
call fcn.004144d0
add esp, 0xc
fst qword [ebp - 0x28]
test edi, edi
jne 0x40a9ee
fld qword [0x443550]
call fcn.004278f0
fstp qword [ebp - 0x28]
movsd xmm0, qword [ebp - 0x28]
call fcn.00427ad0
movaps xmm1, xmm0
subsd xmm1, qword [0x443548]
jmp 0x40aa14
movsd xmm0, qword [ebp - 0x28]
fstp st(0)
andps xmm0, xmmword [0x4435d0]
addsd xmm0, qword [0x443548]
call fcn.00427db0
movaps xmm1, xmm0
addsd xmm1, qword [0x443548]
sub esi, 1
jne 0x40a9b0
mov esi, dword [ebp - 0x2c]
mulsd xmm1, qword [ebp - 0x58]
inc esi
mov dword [ebp - 0x2c], esi
cmp esi, 3
jl 0x40a9a0
mov eax, dword [ebp - 0x64]
movaps xmm0, xmm1
mov edx, dword [ebp - 0x60]
addsd xmm0, qword [ebp - 0x18]
mov ecx, dword [ebp - 0x5c]
mov esi, dword [ebp - 0x48]
add ecx, esi
movsd qword [edx + eax*8], xmm1
inc eax
mov dword [ebp - 0x64], eax
movsd qword [ebp - 0x18], xmm0
mov dword [ebp - 0x5c], ecx
cmp eax, 0x3e8
jl 0x40a970
addsd xmm0, qword [ebp - 0x20]
mov eax, 0xcccccccd
mul esi
movsd qword [ebp - 0x20], xmm0
unpcklpd xmm0, xmm0
mov eax, esi
shr edx, 3
movups xmmword [ebp - 0x90], xmm0
lea ecx, [edx + edx*4]
add ecx, ecx
sub eax, ecx
jne 0x40ab22
mov esi, dword [ebp - 0x110]
lea edi, [eax + 0x7d]
add esi, 0x20
nop word [eax + eax]
movups xmm1, xmmword [esi - 0x20]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420330
movups xmmword [esi - 0x20], xmm0
movups xmm1, xmmword [esi - 0x10]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420330
movups xmmword [esi - 0x10], xmm0
movups xmm1, xmmword [esi]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420330
movaps xmm1, xmmword [0x4435b0]
movups xmmword [esi], xmm0
movups xmm0, xmmword [esi + 0x10]
addpd xmm0, xmmword [ebp - 0x90]
call fcn.00420330
movups xmmword [esi + 0x10], xmm0
add esi, 0x40
movups xmm0, xmmword [ebp - 0x90]
sub edi, 1
jne 0x40aaa0
mov esi, dword [ebp - 0x48]
inc esi
mov dword [ebp - 0x48], esi
cmp esi, 0x32
jl 0x40a950
cmp dword [ebp - 0xa0c], 0xf
lea eax, [ebp - 0xa20]
mov dword [ebp - 0x64], 0
cmova eax, dword [ebp - 0xa20]
mov dword [ebp - 0x48], eax
nop dword [eax]
mov edx, dword [ebp - 0x110]
xor eax, eax
xorps xmm0, xmm0
mov dword [ebp - 0x60], eax
xor ecx, ecx
movsd qword [ebp - 0x18], xmm0
mov dword [ebp - 0x5c], edx
mov dword [ebp - 0x2c], ecx
nop dword [eax + eax]
movsd xmm0, qword [edx + eax*8]
xor esi, esi
movsd qword [ebp - 0x28], xmm0
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
mov dword [ebp - 0xc4], esi
mulsd xmm0, qword [0x443540]
call fcn.00428b90
movsd xmm1, qword [ebp - 0x28]
movsd qword [ebp - 0x58], xmm0
mov edi, esi
mov esi, 2
and edi, 1
nop dword [eax + eax]
push 0x14
sub esp, 8
movsd qword [esp], xmm1
call fcn.004144d0
add esp, 0xc
fst qword [ebp - 0x28]
test edi, edi
jne 0x40abee
fld qword [0x443550]
call fcn.004278f0
fstp qword [ebp - 0x28]
movsd xmm0, qword [ebp - 0x28]
call fcn.00427ad0
movaps xmm1, xmm0
subsd xmm1, qword [0x443548]
jmp 0x40ac14
movsd xmm0, qword [ebp - 0x28]
fstp st(0)
andps xmm0, xmmword [0x4435d0]
addsd xmm0, qword [0x443548]
call fcn.00427db0
movaps xmm1, xmm0
addsd xmm1, qword [0x443548]
sub esi, 1
jne 0x40abb0
mov esi, dword [ebp - 0xc4]
mulsd xmm1, qword [ebp - 0x58]
inc esi
mov dword [ebp - 0xc4], esi
cmp esi, 3
jl 0x40aba1
mov eax, dword [ebp - 0x60]
movaps xmm0, xmm1
mov edx, dword [ebp - 0x5c]
addsd xmm0, qword [ebp - 0x18]
mov ecx, dword [ebp - 0x2c]
mov esi, dword [ebp - 0x64]
add ecx, esi
movsd qword [edx + eax*8], xmm1
inc eax
mov dword [ebp - 0x60], eax
movsd qword [ebp - 0x18], xmm0
mov dword [ebp - 0x2c], ecx
cmp eax, 0x3e8
jl 0x40ab70
movsd xmm2, qword [ebp - 0x20]
mov eax, 0xcccccccd
mul esi
addsd xmm2, xmm0
mov eax, esi
shr edx, 3
movaps xmm1, xmm2
unpcklpd xmm1, xmm1
movsd qword [ebp - 0x20], xmm2
movups xmmword [ebp - 0x90], xmm1
lea ecx, [edx + edx*4]
add ecx, ecx
sub eax, ecx
jne 0x40ad39
mov esi, dword [ebp - 0x110]
lea edi, [eax + 0x7d]
add esi, 0x20
nop word [eax + eax]
movups xmm0, xmmword [esi - 0x20]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420330
movups xmmword [esi - 0x20], xmm0
movups xmm1, xmmword [esi - 0x10]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420330
movups xmmword [esi - 0x10], xmm0
movups xmm1, xmmword [esi]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420330
movups xmmword [esi], xmm0
movups xmm1, xmmword [esi + 0x10]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420330
movups xmm1, xmmword [ebp - 0x90]
movups xmmword [esi + 0x10], xmm0
add esi, 0x40
sub edi, 1
jne 0x40acb0
mov esi, dword [ebp - 0x64]
inc esi
mov dword [ebp - 0x64], esi
cmp esi, 0x32
jl 0x40ab50
mov dword [ebp - 0x64], 0
nop dword [eax]
mov edx, dword [ebp - 0x110]
xor eax, eax
xorps xmm0, xmm0
mov dword [ebp - 0x60], eax
xor ecx, ecx
movsd qword [ebp - 0x18], xmm0
mov dword [ebp - 0x5c], edx
mov dword [ebp - 0x2c], ecx
nop dword [eax + eax]
movsd xmm0, qword [edx + eax*8]
xor esi, esi
movsd qword [ebp - 0x28], xmm0
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
mov dword [ebp - 0xc4], esi
mulsd xmm0, qword [0x443540]
call fcn.00428b90
movsd xmm1, qword [ebp - 0x28]
movsd qword [ebp - 0x58], xmm0
mov edi, esi
mov esi, 2
and edi, 1
nop dword [eax + eax]
push 0x14
sub esp, 8
movsd qword [esp], xmm1
call fcn.004144d0
add esp, 0xc
fst qword [ebp - 0x28]
test edi, edi
jne 0x40adee
fld qword [0x443550]
call fcn.004278f0
fstp qword [ebp - 0x28]
movsd xmm0, qword [ebp - 0x28]
call fcn.00427ad0
movaps xmm1, xmm0
subsd xmm1, qword [0x443548]
jmp 0x40ae14
movsd xmm0, qword [ebp - 0x28]
fstp st(0)
andps xmm0, xmmword [0x4435d0]
addsd xmm0, qword [0x443548]
call fcn.00427db0
movaps xmm1, xmm0
addsd xmm1, qword [0x443548]
sub esi, 1
jne 0x40adb0
mov esi, dword [ebp - 0xc4]
mulsd xmm1, qword [ebp - 0x58]
inc esi
mov dword [ebp - 0xc4], esi
cmp esi, 3
jl 0x40ada1
mov eax, dword [ebp - 0x60]
movaps xmm0, xmm1
mov edx, dword [ebp - 0x5c]
addsd xmm0, qword [ebp - 0x18]
mov ecx, dword [ebp - 0x2c]
mov esi, dword [ebp - 0x64]
add ecx, esi
movsd qword [edx + eax*8], xmm1
inc eax
mov dword [ebp - 0x60], eax
movsd qword [ebp - 0x18], xmm0
mov dword [ebp - 0x2c], ecx
cmp eax, 0x3e8
jl 0x40ad70
movsd xmm1, qword [ebp - 0x20]
mov eax, 0xcccccccd
mul esi
addsd xmm1, xmm0
mov eax, esi
shr edx, 3
movsd qword [ebp - 0x20], xmm1
unpcklpd xmm1, xmm1
movups xmmword [ebp - 0x90], xmm1
lea ecx, [edx + edx*4]
add ecx, ecx
sub eax, ecx
jne 0x40af39
mov esi, dword [ebp - 0x110]
lea edi, [eax + 0x7d]
add esi, 0x20
nop dword [eax]
nop dword [eax + eax]
movups xmm0, xmmword [esi - 0x20]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420330
movups xmmword [esi - 0x20], xmm0
movups xmm1, xmmword [esi - 0x10]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420330
movups xmmword [esi - 0x10], xmm0
movups xmm1, xmmword [esi]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420330
movups xmmword [esi], xmm0
movups xmm1, xmmword [esi + 0x10]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420330
movups xmm1, xmmword [ebp - 0x90]
movups xmmword [esi + 0x10], xmm0
add esi, 0x40
sub edi, 1
jne 0x40aeb0
mov esi, dword [ebp - 0x64]
inc esi
mov dword [ebp - 0x64], esi
cmp esi, 0x32
jl 0x40ad50
mov ecx, dword [ebx + 8]
mov eax, dword [ecx + 0x3c]
add eax, ecx
mov dword [ebp - 0x64], eax
cmp dword [eax], 0x4550
jne 0x412a35
mov edx, dword fs:[0x2c]
mov esi, dword [0x457698]
mov ecx, dword [edx + esi*4]
mov eax, dword [ecx + 0x168]
test al, 1
jne 0x40afe0
movups xmm0, xmmword [0x442618]
mov dword [ecx + 0x150], 0
or eax, 1
mov dword [ecx + 0x154], 0
movups xmmword [ebp - 0x94], xmm0
mov word [ecx + 0x158], 0
movq xmm0, qword [0x442628]
movq qword [ebp - 0x84], xmm0
movq xmm0, qword [ebp - 0x8a]
mov dword [ecx + 0x168], eax
mov eax, dword [ebp - 0x82]
movq qword [ecx + 0x15a], xmm0
mov dword [ecx + 0x162], eax
mov al, byte [ebp - 0x7e]
mov byte [ecx + 0x166], al
mov esi, dword [edx + esi*4]
cmp byte [esi + 0x159], 0
jne 0x40b000
xor edx, edx
nop
lea eax, [edx + 0x79]
xor byte [edx + esi + 0x15a], al
inc edx
cmp edx, 0xd
jb 0x40aff0
mov edi, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
lea eax, [esi + 0x15a]
push eax
mov byte [esi + 0x159], 1
call edi
mov esi, dword [0x457698]
mov dword [ebp - 0x60], eax
mov eax, dword fs:[0x2c]
mov ecx, dword [eax + esi*4]
mov edx, dword [ecx + 0x180]
test dl, 1
jne 0x40b06e
mov dword [ecx + 0x16c], 0
or edx, 1
mov dword [ecx + 0x170], 0
mov dword [ecx + 0x174], 0xf140000
mov dword [ecx + 0x178], 0x51121118
mov dword [ecx + 0x180], edx
mov dword [ecx + 0x17c], 0x83eeede4
mov esi, dword [eax + esi*4]
cmp byte [esi + 0x175], 0
jne 0x40b090
xor edx, edx
nop dword [eax]
lea eax, [edx + 0x7a]
xor byte [edx + esi + 0x176], al
inc edx
cmp edx, 0xa
jb 0x40b080
lea eax, [esi + 0x176]
mov byte [esi + 0x175], 1
push eax
call edi
cmp dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], eax
je 0x412a35
test eax, eax
je 0x412a35
lea eax, [ebp - 0x3d]
push eax
push 0x64
lea ecx, [ebp - 0x128]
call fcn.00404450
mov byte [ebp - 4], 0xe
call fcn.0041d97a
push eax
lea ecx, [ebp - 0x3528]
call fcn.00404400
xor esi, esi
lea eax, [ebp - 0x3528]
mov dword [ebp - 0x2c], eax
lea edi, [esi + 0x64]
nop dword [eax]
lea ecx, [ebp - 0x2c]
call fcn.00412d20
mul edi
cmp eax, 0x64
jae 0x40b113
cmp eax, 0x60
jae 0x40b113
lea ecx, [ebp - 0x2c]
call fcn.00412d20
mul edi
cmp eax, 0x60
jb 0x40b104
lea eax, [edx - 0x7fffffff]
cmp eax, 0x80000000
lea ecx, [eax - 0x80000000]
lea edx, [eax - 0x80000000]
mov eax, dword [ebp - 0x128]
cmovae edx, ecx
mov dword [eax + esi], edx
add esi, 4
cmp esi, 0x190
jl 0x40b0f0
mov edx, dword fs:[0x2c]
mov esi, dword [0x457698]
mov edi, dword [ebp - 0x60]
mov ecx, dword [edx + esi*4]
mov eax, dword [ecx + 0x1a0]
test al, 1
jne 0x40b1dd
movups xmm0, xmmword [0x442630]
or eax, 1
mov dword [ecx + 0x184], 0
mov dword [ecx + 0x1a0], eax
mov eax, dword [0x442648]
movups xmmword [ebp - 0x98], xmm0
mov dword [ecx + 0x188], 0
movq xmm0, qword [0x442640]
movq qword [ebp - 0x88], xmm0
movq xmm0, qword [ebp - 0x8e]
mov word [ecx + 0x18c], 0
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x86]
movq qword [ecx + 0x18e], xmm0
mov dword [ecx + 0x196], eax
mov ax, word [ebp - 0x82]
mov word [ecx + 0x19a], ax
mov al, byte [ebp - 0x80]
mov byte [ecx + 0x19c], al
mov esi, dword [edx + esi*4]
cmp byte [esi + 0x18d], 0
jne 0x40b200
xor edx, edx
nop dword [eax + eax]
lea eax, [edx + 0x7a]
xor byte [edx + esi + 0x18e], al
inc edx
cmp edx, 0xf
jb 0x40b1f0
lea eax, [esi + 0x18e]
mov byte [esi + 0x18d], 1
push eax
push edi
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
call edi
mov esi, dword fs:[0x2c]
mov dword [ebp - 0x2c], eax
mov eax, dword [0x457698]
mov ecx, dword [esi + eax*4]
mov edx, dword [ecx + 0x1c0]
test dl, 1
jne 0x40b2bc
movups xmm0, xmmword [0x44264c]
mov eax, dword [0x442664]
or edx, 1
mov dword [ecx + 0x1a4], 0
movups xmmword [ebp - 0x98], xmm0
mov dword [ecx + 0x1a8], 0
movq xmm0, qword [0x44265c]
movq qword [ebp - 0x88], xmm0
movq xmm0, qword [ebp - 0x8e]
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x86]
mov word [ecx + 0x1ac], 0
movq qword [ecx + 0x1ae], xmm0
mov dword [ecx + 0x1b6], eax
mov ax, word [ebp - 0x82]
mov word [ecx + 0x1ba], ax
mov al, byte [ebp - 0x80]
mov byte [ecx + 0x1bc], al
mov eax, dword [0x457698]
mov dword [ecx + 0x1c0], edx
mov esi, dword [esi + eax*4]
cmp byte [esi + 0x1ad], 0
jne 0x40b2e0
xor edx, edx
nop word [eax + eax]
lea eax, [edx + 0x7b]
xor byte [edx + esi + 0x1ae], al
inc edx
cmp edx, 0xf
jb 0x40b2d0
lea eax, [esi + 0x1ae]
mov byte [esi + 0x1ad], 1
push eax
push dword [ebp - 0x60]
call edi
mov esi, dword fs:[0x2c]
mov dword [ebp - 0xc4], eax
mov eax, dword [0x457698]
mov ecx, dword [esi + eax*4]
mov edx, dword [ecx + 0x1e4]
test dl, 1
jne 0x40b383
movups xmm1, xmmword [0x442678]
mov dword [ecx + 0x1c4], 0
or edx, 1
movups xmm0, xmmword [0x442668]
mov dword [ecx + 0x1c8], 0
movups xmmword [ebp - 0x8c], xmm1
mov word [ecx + 0x1cc], 0
pextrw eax, xmm1, 5
movups xmmword [ebp - 0x9c], xmm0
mov dword [ecx + 0x1e4], edx
movups xmm0, xmmword [ebp - 0x92]
psrldq xmm1, 0xc
movups xmmword [ecx + 0x1ce], xmm0
mov word [ecx + 0x1de], ax
movd eax, xmm1
mov byte [ecx + 0x1e0], al
mov eax, dword [0x457698]
mov esi, dword [esi + eax*4]
cmp byte [esi + 0x1cd], 0
jne 0x40b3a1
xor edx, edx
lea eax, [edx + 0x7b]
xor byte [edx + esi + 0x1ce], al
inc edx
cmp edx, 0x13
jb 0x40b391
lea eax, [esi + 0x1ce]
mov byte [esi + 0x1cd], 1
push eax
push dword [ebp - 0x60]
call edi
mov esi, dword fs:[0x2c]
mov dword [ebp - 0xcc], eax
mov eax, dword [0x457698]
mov ecx, dword [esi + eax*4]
mov edx, dword [ecx + 0x204]
test dl, 1
jne 0x40b43c
movups xmm0, xmmword [0x442688]
mov eax, dword [0x4426a0]
or edx, 1
mov dword [ebp - 0x80], eax
mov al, byte [ebp - 0x7e]
movups xmmword [ebp - 0x98], xmm0
mov dword [ecx + 0x1e8], 0
movq xmm0, qword [0x442698]
movq qword [ebp - 0x88], xmm0
movups xmm0, xmmword [ebp - 0x8e]
mov dword [ecx + 0x1ec], 0
mov word [ecx + 0x1f0], 0
movups xmmword [ecx + 0x1f2], xmm0
mov byte [ecx + 0x202], al
mov eax, dword [0x457698]
mov dword [ecx + 0x204], edx
mov esi, dword [esi + eax*4]
cmp byte [esi + 0x1f1], 0
jne 0x40b460
xor edx, edx
nop word [eax + eax]
lea eax, [edx + 0x7b]
xor byte [edx + esi + 0x1f2], al
inc edx
cmp edx, 0x11
jb 0x40b450
lea eax, [esi + 0x1f2]
mov byte [esi + 0x1f1], 1
push eax
push dword [ebp - 0x60]
call edi
mov esi, dword fs:[0x2c]
mov dword [ebp - 0xd0], eax
mov eax, dword [0x457698]
mov ecx, dword [esi + eax*4]
mov edx, dword [ecx + 0x224]
test dl, 1
jne 0x40b4fb
movups xmm0, xmmword [0x4426a4]
mov eax, dword [0x4426bc]
or edx, 1
mov dword [ebp - 0x80], eax
mov al, byte [ebp - 0x7e]
movups xmmword [ebp - 0x98], xmm0
mov dword [ecx + 0x208], 0
movq xmm0, qword [0x4426b4]
movq qword [ebp - 0x88], xmm0
movups xmm0, xmmword [ebp - 0x8e]
mov dword [ecx + 0x20c], 0
mov word [ecx + 0x210], 0
movups xmmword [ecx + 0x212], xmm0
mov byte [ecx + 0x222], al
mov eax, dword [0x457698]
mov dword [ecx + 0x224], edx
mov esi, dword [esi + eax*4]
cmp byte [esi + 0x211], 0
jne 0x40b520
xor edx, edx
nop dword [eax]
lea eax, [edx + 0x7c]
xor byte [edx + esi + 0x212], al
inc edx
cmp edx, 0x11
jb 0x40b510
lea eax, [esi + 0x212]
mov byte [esi + 0x211], 1
push eax
push dword [ebp - 0x60]
call edi
mov esi, dword fs:[0x2c]
mov dword [ebp - 0xd4], eax
mov eax, dword [0x457698]
mov ecx, dword [esi + eax*4]
mov edx, dword [ecx + 0x240]
test dl, 1
jne 0x40b5c1
movups xmm0, xmmword [0x4426c0]
mov dword [ecx + 0x228], 0
or edx, 1
mov dword [ecx + 0x22c], 0
movups xmmword [ebp - 0x94], xmm0
mov word [ecx + 0x230], 0
movq xmm0, qword [0x4426d0]
movq qword [ebp - 0x84], xmm0
movq xmm0, qword [ebp - 0x8a]
mov eax, dword [ebp - 0x82]
movq qword [ecx + 0x232], xmm0
mov dword [ecx + 0x23a], eax
mov al, byte [ebp - 0x7e]
mov byte [ecx + 0x23e], al
mov eax, dword [0x457698]
mov dword [ecx + 0x240], edx
mov esi, dword [esi + eax*4]
cmp byte [esi + 0x231], 0
jne 0x40b5e0
lea ecx, [ebp - 0xa20]
call fcn.00404c50
lea ecx, [ebp - 0x11c]
call fcn.00413f60
lea ecx, [ebp - 0x110]
call fcn.00404ed0
lea ecx, [ebp - 0x104]
call fcn.00404f40
lea ecx, [ebp - 0xf8]
call fcn.00404f40
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.00414100
int3