Function at 0x407d60
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 0x440f73
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
mov eax, 0x3518
call fcn.00420490
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 0x407e67
push edi
lea ecx, [ebp - 0xf8]
call fcn.00412c00
push dword [ebp - 0xc8]
mov esi, dword [ebp - 0xf8]
lea eax, [ebp - 0xb48]
push eax
push esi
call fcn.00421ff0
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.00404530
xor edi, edi
mov byte [ebp - 4], 1
test esi, esi
jle 0x407f0c
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 0x407ec0
lea eax, [ebp - 0x104]
push eax
push dword [ebp - 0xc8]
lea eax, [ebp - 0xf8]
push eax
call fcn.00415dd0
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 0x407f79
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 0x407f41
push 0x4573b0
call fcn.004032b0
xor esi, esi
add esp, 4
cmp dword [ebp - 0x2c], esi
jle 0x407ffc
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 0x407fb0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x408070
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 0x408032
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 0x408102
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 0x4080b0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x408170
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 0x408132
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 0x408202
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 0x4081b0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x408270
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 0x408232
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 0x408302
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 0x4082b0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x408370
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 0x408332
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 0x408402
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 0x4083b0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x408470
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 0x408432
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 0x408502
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 0x4084b0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x408570
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 0x408532
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 0x408602
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 0x4085b0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x408670
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 0x408632
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 0x408702
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 [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4086b0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x408770
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 0x408732
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 0x408802
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 [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4087b0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x408870
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 0x408832
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 0x408902
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 [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4088b0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x408970
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 0x408932
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 0x408a02
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 [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4089b0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x408a70
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 0x408a32
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 0x408b02
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 [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x408ab0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x408b70
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 0x408b32
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 0x408c02
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 [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x408bb0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x408c70
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 0x408c32
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 0x408d02
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 [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x408cb0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x408d70
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 0x408d32
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 0x408e02
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 [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x408db0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x408e70
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 0x408e32
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 0x408f02
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 [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x408eb0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x408f70
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 0x408f32
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 0x409002
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 [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x408fb0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x409070
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 0x409032
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 0x409102
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 [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4090b0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x409170
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 0x409132
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 0x409202
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 [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4091b0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x409270
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 0x409232
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 0x409302
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 [esi + eax - 0x10], xmm0
cmp edi, dword [ebp - 0x2c]
jl 0x4092b0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x409370
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 0x409332
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 0x409402
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 0x4093b0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x409470
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 0x409432
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 0x409502
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 0x4094b0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x409570
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 0x409532
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 0x409602
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 0x4095b0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x409670
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 0x409632
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 0x409702
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 0x4096b0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x409770
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 0x409732
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 0x409802
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 0x4097b0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x409870
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 0x409832
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 0x409902
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 0x4098b0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x409970
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 0x409932
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 0x409a02
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 0x4099b0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x409a70
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 0x409a32
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 0x409b02
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 0x409ab0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x409b70
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 0x409b32
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 0x409c02
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 0x409bb0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x409c70
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 0x409c32
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 0x409d02
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 0x409cb0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x409d70
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 0x409d32
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 0x409e02
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 0x409db0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x409e70
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 0x409e32
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 0x409f02
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 0x409eb0
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0xf8]
push esi
push eax
call fcn.00415dd0
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 0x409f6a
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 0x409f32
push 0x4573b0
call fcn.004032b0
add esp, 4
lea eax, [ebp - 0x3d]
lea ecx, [ebp - 0x110]
push eax
push 0x3e8
call fcn.00404490
mov byte [ebp - 4], 2
call fcn.0041d9ca
push eax
lea ecx, [ebp - 0x21a0]
call fcn.004043f0
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 [edi + esi], xmm0
add esi, 8
cmp esi, 0x1f40
jl 0x409fb0
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.00428be0
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.00414520
add esp, 0xc
fst qword [ebp - 0x28]
test edi, edi
jne 0x40a08e
fld qword [0x443550]
call fcn.00427940
fstp qword [ebp - 0x28]
movsd xmm0, qword [ebp - 0x28]
call fcn.00427b20
movaps xmm1, xmm0
subsd xmm1, qword [0x443548]
jmp 0x40a0b4
movsd xmm0, qword [ebp - 0x28]
fstp st(0)
andps xmm0, xmmword [0x4435d0]
addsd xmm0, qword [0x443548]
call fcn.00427e00
movaps xmm1, xmm0
addsd xmm1, qword [0x443548]
sub esi, 1
jne 0x40a050
mov esi, dword [ebp - 0x48]
mulsd xmm1, qword [ebp - 0x58]
inc esi
mov dword [ebp - 0x48], esi
cmp esi, 3
jl 0x40a040
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 0x40a010
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 0x40a1c9
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.00420380
movups xmmword [esi - 0x20], xmm0
movups xmm1, xmmword [esi - 0x10]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420380
movups xmmword [esi - 0x10], xmm0
movups xmm1, xmmword [esi]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420380
movups xmmword [esi], xmm0
movups xmm1, xmmword [esi + 0x10]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420380
movups xmmword [esi + 0x10], xmm0
add esi, 0x40
movaps xmm0, xmmword [ebp - 0x90]
sub edi, 1
jne 0x40a140
mov esi, dword [ebp - 0x2c]
inc esi
xorps xmm1, xmm1
mov dword [ebp - 0x2c], esi
cmp esi, 0x32
jl 0x409ff6
push 0
call fcn.004278a8
push eax
call fcn.00427896
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 0x40a2b0
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 0x40a2d0
xor edx, edx
nop
lea eax, [edx + 0x76]
xor byte [edx + esi + 0x12], al
inc edx
cmp edx, 0x39
jb 0x40a2c0
lea eax, [esi + 0x12]
mov byte [esi + 0x11], 1
push eax
lea ecx, [ebp - 0xac8]
call fcn.00404240
mov edx, dword [0x457698]
mov byte [ebp - 4], 3
mov ecx, dword [edi + edx*4]
mov eax, dword [ecx + 0x94]
test al, 1
jne 0x40a3af
movups xmm0, xmmword [0x442520]
mov dword [ecx + 0x50], 0
or eax, 1
mov dword [ecx + 0x54], 0
movups xmmword [ebp - 0xc0], xmm0
mov word [ecx + 0x58], 0
movups xmm0, xmmword [0x442530]
mov dword [ecx + 0x94], eax
mov eax, dword [0x442560]
movups xmmword [ebp - 0xb0], xmm0
mov dword [ebp - 0x80], eax
movups xmm0, xmmword [0x442540]
mov ax, word [ebp - 0x7e]
movups xmmword [ebp - 0xa0], xmm0
movups xmm0, xmmword [0x442550]
movups xmmword [ebp - 0x90], xmm0
movups xmm0, xmmword [ebp - 0xb6]
movups xmmword [ecx + 0x5a], xmm0
movups xmm0, xmmword [ebp - 0xa6]
movups xmmword [ecx + 0x6a], xmm0
movups xmm0, xmmword [ebp - 0x96]
movups xmmword [ecx + 0x7a], xmm0
movq xmm0, qword [ebp - 0x86]
movq qword [ecx + 0x8a], xmm0
mov word [ecx + 0x92], ax
mov esi, dword [edi + edx*4]
cmp byte [esi + 0x59], 0
jne 0x40a3d0
xor edx, edx
nop dword [eax]
lea eax, [edx + 0x76]
xor byte [edx + esi + 0x5a], al
inc edx
cmp edx, 0x3a
jb 0x40a3c0
lea eax, [esi + 0x5a]
mov byte [esi + 0x59], 1
push eax
lea ecx, [ebp - 0xab0]
call fcn.00404240
mov edx, dword [0x457698]
mov byte [ebp - 4], 4
mov ecx, dword [edi + edx*4]
mov eax, dword [ecx + 0xdc]
test al, 1
jne 0x40a4af
movups xmm0, xmmword [0x442568]
mov dword [ecx + 0x98], 0
or eax, 1
mov dword [ecx + 0x9c], 0
movups xmmword [ebp - 0xc0], xmm0
mov word [ecx + 0xa0], 0
movups xmm0, xmmword [0x442578]
mov dword [ecx + 0xdc], eax
mov eax, dword [0x4425a8]
movups xmmword [ebp - 0xb0], xmm0
mov dword [ebp - 0x80], eax
movups xmm0, xmmword [0x442588]
mov ax, word [ebp - 0x7e]
movups xmmword [ebp - 0xa0], xmm0
movups xmm0, xmmword [0x442598]
movups xmmword [ebp - 0x90], xmm0
movups xmm0, xmmword [ebp - 0xb6]
movups xmmword [ecx + 0xa2], xmm0
movups xmm0, xmmword [ebp - 0xa6]
movups xmmword [ecx + 0xb2], xmm0
movups xmm0, xmmword [ebp - 0x96]
movups xmmword [ecx + 0xc2], xmm0
movq xmm0, qword [ebp - 0x86]
movq qword [ecx + 0xd2], xmm0
mov word [ecx + 0xda], ax
mov esi, dword [edi + edx*4]
cmp byte [esi + 0xa1], 0
jne 0x40a4d0
xor edx, edx
nop dword [eax]
lea eax, [edx + 0x77]
xor byte [edx + esi + 0xa2], al
inc edx
cmp edx, 0x3a
jb 0x40a4c0
lea eax, [esi + 0xa2]
mov byte [esi + 0xa1], 1
push eax
lea ecx, [ebp - 0xa98]
call fcn.00404240
mov edx, dword [0x457698]
mov byte [ebp - 4], 5
mov ecx, dword [edi + edx*4]
mov eax, dword [ecx + 0x124]
test al, 1
jne 0x40a5ad
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 + edx*4]
cmp byte [esi + 0xe9], 0
jne 0x40a5d0
xor edx, edx
nop dword [eax + eax]
lea eax, [edx + 0x77]
xor byte [edx + esi + 0xea], al
inc edx
cmp edx, 0x39
jb 0x40a5c0
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 0x40a6c5
cmp eax, 0xaaaaaaa
ja 0x412acf
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 0x40a6ae
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 0x40a690
lea eax, [ebp - 0x11c]
push eax
push edi
push edi
call fcn.00402190
add esp, 0xc
mov dword [ebp - 0x118], edi
push fcn.00404c40
push 4
push 0x18
lea eax, [ebp - 0xac8]
mov byte [ebp - 4], 0xa
push eax
call fcn.0042021e
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.00428be0
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.00414520
add esp, 0xc
fst qword [ebp - 0x28]
test edi, edi
jne 0x40a77e
fld qword [0x443550]
call fcn.00427940
fstp qword [ebp - 0x28]
movsd xmm0, qword [ebp - 0x28]
call fcn.00427b20
movaps xmm1, xmm0
subsd xmm1, qword [0x443548]
jmp 0x40a7a4
movsd xmm0, qword [ebp - 0x28]
fstp st(0)
andps xmm0, xmmword [0x4435d0]
addsd xmm0, qword [0x443548]
call fcn.00427e00
movaps xmm1, xmm0
addsd xmm1, qword [0x443548]
sub esi, 1
jne 0x40a740
mov esi, dword [ebp - 0x2c]
mulsd xmm1, qword [ebp - 0x58]
inc esi
mov dword [ebp - 0x2c], esi
cmp esi, 3
jl 0x40a730
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 0x40a700
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 0x40a8af
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.00420380
movaps xmm1, xmmword [0x4435b0]
movups xmmword [esi - 0x20], xmm0
movups xmm0, xmmword [esi - 0x10]
addpd xmm0, xmmword [ebp - 0x90]
call fcn.00420380
movaps xmm1, xmmword [0x4435b0]
movups xmmword [esi - 0x10], xmm0
movups xmm0, xmmword [esi]
addpd xmm0, xmmword [ebp - 0x90]
call fcn.00420380
movups xmmword [esi], xmm0
movups xmm1, xmmword [esi + 0x10]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420380
movups xmmword [esi + 0x10], xmm0
add esi, 0x40
movups xmm0, xmmword [ebp - 0x90]
sub edi, 1
jne 0x40a830
mov esi, dword [ebp - 0x48]
inc esi
mov dword [ebp - 0x48], esi
cmp esi, 0x32
jl 0x40a6e5
cmp byte [ebx + 0xc], 0
je 0x40a990
mov edx, dword fs:[0x2c]
mov esi, dword [0x457698]
mov ecx, dword [edx + esi*4]
mov eax, dword [ecx + 0x14c]
test al, 1
jne 0x40a94c
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 0x40a970
xor edx, edx
nop word [eax + eax]
lea eax, [edx + 0x78]
xor byte [edx + esi + 0x132], al
inc edx
cmp edx, 0x18
jb 0x40a960
lea eax, [esi + 0x132]
mov byte [esi + 0x131], 1
push eax
lea ecx, [ebp - 0x9f0]
call fcn.00404240
mov ecx, 1
jmp 0x40a9d3
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.00427875
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 0x40aa04
and eax, 0xfffffffd
lea ecx, [ebp - 0xa08]
mov dword [ebp - 0x48], eax
call fcn.00404c40
mov eax, dword [ebp - 0x48]
mov byte [ebp - 4], 0xd
test al, 1
je 0x40aa17
lea ecx, [ebp - 0x9f0]
call fcn.00404c40
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.00428be0
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.00414520
add esp, 0xc
fst qword [ebp - 0x28]
test edi, edi
jne 0x40aabe
fld qword [0x443550]
call fcn.00427940
fstp qword [ebp - 0x28]
movsd xmm0, qword [ebp - 0x28]
call fcn.00427b20
movaps xmm1, xmm0
subsd xmm1, qword [0x443548]
jmp 0x40aae4
movsd xmm0, qword [ebp - 0x28]
fstp st(0)
andps xmm0, xmmword [0x4435d0]
addsd xmm0, qword [0x443548]
call fcn.00427e00
movaps xmm1, xmm0
addsd xmm1, qword [0x443548]
sub esi, 1
jne 0x40aa80
mov esi, dword [ebp - 0x2c]
mulsd xmm1, qword [ebp - 0x58]
inc esi
mov dword [ebp - 0x2c], esi
cmp esi, 3
jl 0x40aa70
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 0x40aa40
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 0x40abf2
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.00420380
movups xmmword [esi - 0x20], xmm0
movups xmm1, xmmword [esi - 0x10]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420380
movups xmmword [esi - 0x10], xmm0
movups xmm1, xmmword [esi]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420380
movaps xmm1, xmmword [0x4435b0]
movups xmmword [esi], xmm0
movups xmm0, xmmword [esi + 0x10]
addpd xmm0, xmmword [ebp - 0x90]
call fcn.00420380
movups xmmword [esi + 0x10], xmm0
add esi, 0x40
movups xmm0, xmmword [ebp - 0x90]
sub edi, 1
jne 0x40ab70
mov esi, dword [ebp - 0x48]
inc esi
mov dword [ebp - 0x48], esi
cmp esi, 0x32
jl 0x40aa20
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.00428be0
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.00414520
add esp, 0xc
fst qword [ebp - 0x28]
test edi, edi
jne 0x40acbe
fld qword [0x443550]
call fcn.00427940
fstp qword [ebp - 0x28]
movsd xmm0, qword [ebp - 0x28]
call fcn.00427b20
movaps xmm1, xmm0
subsd xmm1, qword [0x443548]
jmp 0x40ace4
movsd xmm0, qword [ebp - 0x28]
fstp st(0)
andps xmm0, xmmword [0x4435d0]
addsd xmm0, qword [0x443548]
call fcn.00427e00
movaps xmm1, xmm0
addsd xmm1, qword [0x443548]
sub esi, 1
jne 0x40ac80
mov esi, dword [ebp - 0xc4]
mulsd xmm1, qword [ebp - 0x58]
inc esi
mov dword [ebp - 0xc4], esi
cmp esi, 3
jl 0x40ac71
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 0x40ac40
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 0x40ae09
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.00420380
movups xmmword [esi - 0x20], xmm0
movups xmm1, xmmword [esi - 0x10]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420380
movups xmmword [esi - 0x10], xmm0
movups xmm1, xmmword [esi]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420380
movups xmmword [esi], xmm0
movups xmm1, xmmword [esi + 0x10]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420380
movups xmm1, xmmword [ebp - 0x90]
movups xmmword [esi + 0x10], xmm0
add esi, 0x40
sub edi, 1
jne 0x40ad80
mov esi, dword [ebp - 0x64]
inc esi
mov dword [ebp - 0x64], esi
cmp esi, 0x32
jl 0x40ac20
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.00428be0
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.00414520
add esp, 0xc
fst qword [ebp - 0x28]
test edi, edi
jne 0x40aebe
fld qword [0x443550]
call fcn.00427940
fstp qword [ebp - 0x28]
movsd xmm0, qword [ebp - 0x28]
call fcn.00427b20
movaps xmm1, xmm0
subsd xmm1, qword [0x443548]
jmp 0x40aee4
movsd xmm0, qword [ebp - 0x28]
fstp st(0)
andps xmm0, xmmword [0x4435d0]
addsd xmm0, qword [0x443548]
call fcn.00427e00
movaps xmm1, xmm0
addsd xmm1, qword [0x443548]
sub esi, 1
jne 0x40ae80
mov esi, dword [ebp - 0xc4]
mulsd xmm1, qword [ebp - 0x58]
inc esi
mov dword [ebp - 0xc4], esi
cmp esi, 3
jl 0x40ae71
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 0x40ae40
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 0x40b009
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.00420380
movups xmmword [esi - 0x20], xmm0
movups xmm1, xmmword [esi - 0x10]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420380
movups xmmword [esi - 0x10], xmm0
movups xmm1, xmmword [esi]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420380
movups xmmword [esi], xmm0
movups xmm1, xmmword [esi + 0x10]
movaps xmm0, xmmword [ebp - 0x90]
addpd xmm0, xmm1
movaps xmm1, xmmword [0x4435b0]
call fcn.00420380
movups xmm1, xmmword [ebp - 0x90]
movups xmmword [esi + 0x10], xmm0
add esi, 0x40
sub edi, 1
jne 0x40af80
mov esi, dword [ebp - 0x64]
inc esi
mov dword [ebp - 0x64], esi
cmp esi, 0x32
jl 0x40ae20
mov ecx, dword [ebx + 8]
mov eax, dword [ecx + 0x3c]
add eax, ecx
mov dword [ebp - 0x64], eax
cmp dword [eax], 0x4550
jne 0x412a85
mov edx, dword fs:[0x2c]
mov esi, dword [0x457698]
mov ecx, dword [edx + esi*4]
mov eax, dword [ecx + 0x168]
test al, 1
jne 0x40b0b0
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 0x40b0d0
xor edx, edx
nop
lea eax, [edx + 0x78]
xor byte [edx + esi + 0x15a], al
inc edx
cmp edx, 0xd
jb 0x40b0c0
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 0x40b13e
mov dword [ecx + 0x16c], 0
or edx, 1
mov dword [ecx + 0x170], 0
mov dword [ecx + 0x174], 0xd160000
mov dword [ecx + 0x178], 0x5310171e
mov dword [ecx + 0x180], edx
mov dword [ecx + 0x17c], 0x81ec131a
mov esi, dword [eax + esi*4]
cmp byte [esi + 0x175], 0
jne 0x40b160
xor edx, edx
nop dword [eax]
lea eax, [edx + 0x78]
xor byte [edx + esi + 0x176], al
inc edx
cmp edx, 0xa
jb 0x40b150
lea eax, [esi + 0x176]
mov byte [esi + 0x175], 1
push eax
call edi
cmp dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], eax
je 0x412a85
test eax, eax
je 0x412a85
lea eax, [ebp - 0x3d]
push eax
push 0x64
lea ecx, [ebp - 0x128]
call fcn.00404440
mov byte [ebp - 4], 0xe
call fcn.0041d9ca
push eax
lea ecx, [ebp - 0x3528]
call fcn.004043f0
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.00412d70
mul edi
cmp eax, 0x64
jae 0x40b1e3
cmp eax, 0x60
jae 0x40b1e3
lea ecx, [ebp - 0x2c]
call fcn.00412d70
mul edi
cmp eax, 0x60
jb 0x40b1d4
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 0x40b1c0
mov esi, dword fs:[0x2c]
mov edx, dword [0x457698]
mov edi, dword [ebp - 0x60]
mov edx, dword [esi + edx*4]
mov eax, dword [edx + 0x1a0]
test al, 1
jne 0x40b266
movups xmm0, xmmword [0x442630]
sub esp, 0x1c
or eax, 1
mov ecx, esp
mov dword [edx + 0x1a0], eax
mov eax, dword [0x442648]
movups xmmword [ecx], xmm0
movq xmm0, qword [0x442640]
movq qword [ecx + 0x10], xmm0
mov dword [ecx + 0x18], eax
lea ecx, [edx + 0x184]
call fcn.00404380
mov eax, dword [0x457698]
mov esi, dword [esi + eax*4]
cmp byte [esi + 0x18d], 0
jne 0x40b290
xor edx, edx
nop dword [eax]
lea eax, [edx + 0x79]
xor byte [edx + esi + 0x18e], al
inc edx
cmp edx, 0xf
jb 0x40b280
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 edx, dword [esi + eax*4]
mov ecx, dword [edx + 0x1c0]
test cl, 1
jne 0x40b301
movups xmm0, xmmword [0x44264c]
mov eax, dword [0x442664]
or ecx, 1
mov dword [edx + 0x1c0], ecx
sub esp, 0x1c
mov ecx, esp
movups xmmword [ecx], xmm0
movq xmm0, qword [0x44265c]
movq qword [ecx + 0x10], xmm0
mov dword [ecx + 0x18], eax
lea ecx, [edx + 0x1a4]
call fcn.00404380
mov eax, dword [0x457698]
mov esi, dword [esi + eax*4]
cmp byte [esi + 0x1ad], 0
jne 0x40b320
xor edx, edx
nop
lea eax, [edx + 0x79]
xor byte [edx + esi + 0x1ae], al
inc edx
cmp edx, 0xf
jb 0x40b310
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 0x40b3c3
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 0x40b3e1
xor edx, edx
lea eax, [edx + 0x79]
xor byte [edx + esi + 0x1ce], al
inc edx
cmp edx, 0x13
jb 0x40b3d1
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 0x40b47c
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 0x40b4a0
xor edx, edx
nop word [eax + eax]
lea eax, [edx + 0x7a]
xor byte [edx + esi + 0x1f2], al
inc edx
cmp edx, 0x11
jb 0x40b490
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 0x40b53b
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 0x40b560
lea ecx, [ebp - 0xa20]
call fcn.00404c40
lea ecx, [ebp - 0x11c]
call fcn.00413fb0
lea ecx, [ebp - 0x110]
call fcn.00404ec0
lea ecx, [ebp - 0x104]
call fcn.00404f30
lea ecx, [ebp - 0xf8]
call fcn.00404f30
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.00414150
int3