Function at 0x414de0
Capabilities:
Encode data using xor

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x440c30
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x4a8
push esi
push edi
mov dword [ebp - 0x8c], ecx
lea ecx, [ebp - 0x70]
push 0xa
mov dword [ebp - 0x88], edx
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0
call fcn.0041f540
mov esi, dword [ebp - 0x70]
push 0x50
push 0
push esi
call fcn.004244a0
lea eax, [esi + 0x50]
mov dword [ebp - 0x6c], eax
add esp, 8
mov dword [ebp - 4], 0
lea eax, [ebp - 0x70]
push eax
push ecx
lea ecx, [ebp - 0x7c]
call fcn.0041bc40
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x70]
test ecx, ecx
je 0x414eab
mov eax, dword [ebp - 0x68]
sub eax, ecx
sar eax, 3
lea edx, [eax*8]
mov eax, ecx
cmp edx, 0x1000
jb 0x414ea1
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41898a
push edx
push ecx
call fcn.00422a66
add esp, 8
xor ecx, ecx
mov dword [ebp - 0x20], 0xa
mov edx, 1
mov dword [ebp - 0x80], ecx
mov dword [ebp - 0x84], edx
mov eax, dword [ebp - 0x7c]
mov edi, 0xa
mov dword [ebp - 0x1c], edi
mov eax, dword [ecx + eax]
mov ecx, 1
mov dword [ebp - 0x60], eax
xor eax, eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x58], ecx
xor esi, esi
xorps xmm0, xmm0
movsd qword [ebp - 0x30], xmm0
mov dword [ebp - 0x14], esi
test edx, edx
jle 0x414fc8
xor edi, edi
lea eax, [esi + 1]
mov dword [ebp - 0x54], eax
test ecx, ecx
jle 0x414fb5
lea edx, [edi + 3]
mov ecx, esi
call fcn.0041d8c0
xor eax, eax
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x34], eax
nop dword [eax]
mov ecx, eax
add esi, edi
call fcn.0041d850
movaps xmm1, xmm0
mov ecx, esi
movsd qword [ebp - 0x48], xmm1
call fcn.0041d870
movsd xmm1, qword [ebp - 0x48]
mov ecx, esi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x30]
movsd qword [ebp - 0x48], xmm1
call fcn.0041d890
movd xmm1, dword [ebp - 0x54]
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, edi
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x48]
subsd xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x50]
inc edi
mov eax, dword [ebp - 0x34]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x48]
mov esi, dword [ebp - 0x14]
add eax, esi
mov ecx, dword [ebp - 0x58]
mov dword [ebp - 0x34], eax
addsd xmm0, xmm1
movsd qword [ebp - 0x30], xmm0
cmp edi, ecx
jl 0x414f20
mov esi, dword [ebp - 0x54]
mov edx, dword [ebp - 0x84]
mov dword [ebp - 0x14], esi
jmp 0x414fba
mov esi, eax
mov dword [ebp - 0x14], eax
cmp esi, edx
jl 0x414ef5
mov eax, dword [ebp - 0x18]
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x60]
inc ecx
mov dword [ebp - 0x58], ecx
movsd qword [eax + esi], xmm0
add eax, 8
sub edi, 1
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], edi
jne 0x414ee0
mov ecx, dword [ebp - 0x80]
inc edx
add ecx, 0xc
mov dword [ebp - 0x84], edx
sub dword [ebp - 0x20], 1
mov dword [ebp - 0x80], ecx
jne 0x414ec2
xor ecx, ecx
mov dword [ebp - 0x80], 0xa
mov edx, 1
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x7c]
xor esi, esi
mov edi, 0xa
mov dword [ebp - 0x54], esi
mov dword [ebp - 0x58], edi
mov eax, dword [ecx + eax]
mov ecx, 1
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x84], ecx
xor eax, eax
xorps xmm0, xmm0
movsd qword [ebp - 0x30], xmm0
mov dword [ebp - 0x14], eax
test edx, edx
jle 0x41511d
nop word [eax + eax]
xor edi, edi
mov dword [ebp - 0x20], edi
test ecx, ecx
jle 0x41510b
lea edx, [edi + 3]
mov ecx, eax
lea esi, [eax + 1]
call fcn.0041d8c0
mov eax, dword [ebp - 0x14]
xor ecx, ecx
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x34], ecx
add edi, eax
call fcn.0041d850
movaps xmm1, xmm0
mov ecx, edi
movsd qword [ebp - 0x48], xmm1
call fcn.0041d870
movsd xmm1, qword [ebp - 0x48]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x30]
movsd qword [ebp - 0x48], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov edi, dword [ebp - 0x20]
mov ecx, edi
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x48]
subsd xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x50]
inc edi
mov ecx, dword [ebp - 0x34]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x48]
mov eax, dword [ebp - 0x14]
add ecx, eax
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x34], ecx
addsd xmm0, xmm1
movsd qword [ebp - 0x30], xmm0
cmp edi, dword [ebp - 0x84]
jl 0x415077
mov ecx, dword [ebp - 0x84]
mov edx, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x14], eax
cmp eax, edx
jl 0x415050
mov esi, dword [ebp - 0x54]
mov edi, dword [ebp - 0x58]
mov eax, dword [ebp - 0x60]
inc ecx
mov dword [ebp - 0x84], ecx
movsd qword [esi + eax], xmm0
add esi, 8
sub edi, 1
mov dword [ebp - 0x54], esi
mov dword [ebp - 0x58], edi
jne 0x415035
mov ecx, dword [ebp - 0x1c]
inc edx
add ecx, 0xc
mov dword [ebp - 0x18], edx
sub dword [ebp - 0x80], 1
mov dword [ebp - 0x1c], ecx
jne 0x415014
mov eax, dword fs:[0x2c]
mov esi, dword [eax]
mov dword [ebp - 0x84], esi
mov eax, dword [esi + 0x9c]
test al, 1
jne 0x4151cd
movups xmm0, xmmword [0x449f88]
or eax, 1
mov dword [esi + 0x70], 0
mov dword [esi + 0x74], 0
movups xmmword [ebp - 0xa4], xmm0
mov word [esi + 0x78], 0
movq xmm0, qword [0x449f98]
movq qword [ebp - 0x94], xmm0
movq xmm0, qword [ebp - 0x9a]
mov dword [esi + 0x9c], eax
mov eax, dword [ebp - 0x92]
movq qword [esi + 0x7a], xmm0
mov dword [esi + 0x82], eax
cmp byte [esi + 0x79], 0
jne 0x4151f0
xor edx, edx
nop dword [eax + eax]
lea eax, [edx - 0x7e]
xor byte [edx + esi + 0x7a], al
inc edx
cmp edx, 0xc
jb 0x4151e0
lea eax, [esi + 0x7a]
mov byte [esi + 0x79], 1
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [ebp - 0x80], eax
test eax, eax
je 0x4185a1
xor ecx, ecx
mov dword [ebp - 0x28], 0xa
mov edx, 1
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x7c]
xor esi, esi
mov edi, 0xa
mov dword [ebp - 0x54], esi
mov dword [ebp - 0x58], edi
mov eax, dword [eax + ecx]
mov ecx, 1
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x34], ecx
xor eax, eax
xorps xmm0, xmm0
movsd qword [ebp - 0x30], xmm0
mov dword [ebp - 0x1c], eax
test edx, edx
jle 0x41531d
xor edi, edi
mov dword [ebp - 0x20], edi
test ecx, ecx
jle 0x41530b
lea edx, [edi + 3]
mov ecx, eax
lea esi, [eax + 1]
call fcn.0041d8c0
mov eax, dword [ebp - 0x1c]
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x14], edi
nop dword [eax + eax]
add edi, eax
mov ecx, edi
call fcn.0041d870
mov ecx, dword [ebp - 0x14]
movaps xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d850
movsd xmm1, qword [ebp - 0x48]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x30]
movsd qword [ebp - 0x48], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov edi, dword [ebp - 0x20]
mov ecx, edi
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x48]
subsd xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x50]
inc edi
mov eax, dword [ebp - 0x1c]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x48]
add dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x20], edi
addsd xmm0, xmm1
movsd qword [ebp - 0x30], xmm0
cmp edi, ecx
jl 0x415280
mov edx, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x1c], eax
cmp eax, edx
jl 0x415256
mov esi, dword [ebp - 0x54]
mov edi, dword [ebp - 0x58]
mov eax, dword [ebp - 0x60]
inc ecx
mov dword [ebp - 0x34], ecx
movsd qword [esi + eax], xmm0
add esi, 8
sub edi, 1
mov dword [ebp - 0x54], esi
mov dword [ebp - 0x58], edi
jne 0x415241
mov ecx, dword [ebp - 0x24]
inc edx
add ecx, 0xc
mov dword [ebp - 0x18], edx
sub dword [ebp - 0x28], 1
mov dword [ebp - 0x24], ecx
jne 0x415223
xor ecx, ecx
mov dword [ebp - 0x18], 0xa
mov edx, 1
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x54], edx
mov eax, dword [ebp - 0x7c]
xor esi, esi
mov edi, 0xa
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x34], edi
mov eax, dword [ecx + eax]
mov ecx, 1
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x24], ecx
xor eax, eax
xorps xmm0, xmm0
movsd qword [ebp - 0x30], xmm0
mov dword [ebp - 0x14], eax
test edx, edx
jle 0x415462
nop dword [eax]
xor edi, edi
mov dword [ebp - 0x28], edi
test ecx, ecx
jle 0x415450
lea edx, [edi + 3]
mov ecx, eax
lea esi, [eax + 1]
call fcn.0041d8c0
mov eax, dword [ebp - 0x14]
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x1c], edi
add edi, eax
mov ecx, edi
call fcn.0041d870
mov ecx, dword [ebp - 0x1c]
movaps xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d850
movsd xmm1, qword [ebp - 0x48]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x30]
movsd qword [ebp - 0x48], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov edi, dword [ebp - 0x28]
mov ecx, edi
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x48]
subsd xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x50]
inc edi
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x48]
add dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x28], edi
addsd xmm0, xmm1
movsd qword [ebp - 0x30], xmm0
cmp edi, ecx
jl 0x4153c5
mov edx, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x14], eax
cmp eax, edx
jl 0x4153a0
mov esi, dword [ebp - 0x20]
mov edi, dword [ebp - 0x34]
mov eax, dword [ebp - 0x60]
inc ecx
mov dword [ebp - 0x24], ecx
movsd qword [esi + eax], xmm0
add esi, 8
sub edi, 1
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x34], edi
jne 0x415384
mov ecx, dword [ebp - 0x58]
inc edx
add ecx, 0xc
mov dword [ebp - 0x54], edx
sub dword [ebp - 0x18], 1
mov dword [ebp - 0x58], ecx
jne 0x415366
mov esi, dword [ebp - 0x84]
mov eax, dword [esi + 0x13c]
test al, 1
jne 0x415515
movups xmm0, xmmword [0x449ed4]
or eax, 1
mov dword [esi + 0x1bc], 0
mov dword [esi + 0x1c0], 0
movups xmmword [ebp - 0xa4], xmm0
mov word [esi + 0x1c4], 0
movq xmm0, qword [0x449ee4]
movq qword [ebp - 0x94], xmm0
movq xmm0, qword [ebp - 0x9a]
mov dword [esi + 0x13c], eax
mov eax, dword [ebp - 0x92]
movq qword [esi + 0x1c6], xmm0
mov dword [esi + 0x1ce], eax
mov ax, word [ebp - 0x8e]
mov word [esi + 0x1d2], ax
cmp byte [esi + 0x1c5], 0
jne 0x415530
xor edx, edx
lea eax, [edx - 0x7d]
xor byte [edx + esi + 0x1c6], al
inc edx
cmp edx, 0xe
jb 0x415520
lea eax, [esi + 0x1c6]
mov byte [esi + 0x1c5], 1
push eax
push dword [ebp - 0x80]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x5c], eax
mov edx, 1
xor eax, eax
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x58], 0xa
nop
mov ecx, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x20], esi
mov eax, dword [eax + ecx]
xor ecx, ecx
mov dword [ebp - 0x60], eax
mov eax, 1
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x18], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x30], xmm0
mov dword [ebp - 0x28], edi
test edx, edx
jle 0x41565f
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x41564d
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
mov eax, dword [ebp - 0x14]
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x1c], 0
nop
add edi, eax
mov ecx, edi
call fcn.0041d870
mov ecx, dword [ebp - 0x1c]
movaps xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d850
movsd xmm1, qword [ebp - 0x48]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x30]
movsd qword [ebp - 0x48], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x48]
subsd xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x50]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x48]
inc eax
mov edi, dword [ebp - 0x28]
add dword [ebp - 0x1c], edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
movsd qword [ebp - 0x30], xmm0
cmp eax, dword [ebp - 0x18]
jl 0x4155c0
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x34]
inc edi
mov dword [ebp - 0x28], edi
cmp edi, edx
jl 0x415595
mov ecx, dword [ebp - 0x24]
mov esi, dword [ebp - 0x20]
mov edi, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x18], eax
movsd qword [ecx + edi], xmm0
add ecx, 8
sub esi, 1
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], esi
jne 0x415580
mov eax, dword [ebp - 0x54]
inc edx
add eax, 0xc
mov dword [ebp - 0x34], edx
sub dword [ebp - 0x58], 1
mov dword [ebp - 0x54], eax
jne 0x415560
xor edx, edx
mov dword [ebp - 0x1c], 0xa
mov ecx, 1
mov dword [ebp - 0x58], edx
mov dword [ebp - 0x54], ecx
nop dword [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x34], esi
mov eax, dword [edx + eax]
xor edx, edx
mov dword [ebp - 0x60], eax
mov eax, 1
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x18], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x30], xmm0
mov dword [ebp - 0x24], edi
test ecx, ecx
jle 0x4157b1
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x41579c
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
xor ecx, ecx
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x28], ecx
mov eax, ecx
nop dword [eax + eax]
add edi, eax
call fcn.0041d850
movaps xmm1, xmm0
mov ecx, edi
movsd qword [ebp - 0x48], xmm1
call fcn.0041d870
movsd xmm1, qword [ebp - 0x48]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x30]
movsd qword [ebp - 0x48], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x48]
subsd xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x50]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x48]
inc eax
mov ecx, dword [ebp - 0x28]
mov edi, dword [ebp - 0x24]
add ecx, edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
mov dword [ebp - 0x28], ecx
movsd qword [ebp - 0x30], xmm0
cmp eax, dword [ebp - 0x18]
jl 0x415710
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x54]
inc edi
mov dword [ebp - 0x24], edi
cmp edi, ecx
jl 0x4156e5
mov edx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x34]
mov edi, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x18], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x34], esi
jne 0x4156d0
mov edx, dword [ebp - 0x58]
inc ecx
add edx, 0xc
mov dword [ebp - 0x54], ecx
sub dword [ebp - 0x1c], 1
mov dword [ebp - 0x58], edx
jne 0x4156b0
mov edi, dword [ebp - 0x84]
mov eax, dword [edi + 0x124]
test al, 1
jne 0x41585f
movups xmm0, xmmword [0x449e9c]
or eax, 1
mov dword [edi + 0x108], 0
mov dword [edi + 0x124], eax
mov eax, dword [0x449eb4]
movups xmmword [ebp - 0xa8], xmm0
mov dword [ebp - 0x90], eax
movq xmm0, qword [0x449eac]
mov al, byte [ebp - 0x8e]
movq qword [ebp - 0x98], xmm0
movups xmm0, xmmword [ebp - 0x9e]
mov dword [edi + 0x10c], 0
mov word [edi + 0x110], 0
movups xmmword [edi + 0x112], xmm0
mov byte [edi + 0x122], al
cmp byte [edi + 0x111], 0
jne 0x415880
xor edx, edx
nop word [eax + eax]
lea eax, [edx - 0x7d]
xor byte [edx + edi + 0x112], al
inc edx
cmp edx, 0x11
jb 0x415870
lea eax, [edi + 0x112]
mov byte [edi + 0x111], 1
push eax
push dword [ebp - 0x80]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x60], eax
mov edx, 1
xor eax, eax
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x58], 0xa
nop
mov ecx, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x20], esi
mov eax, dword [eax + ecx]
xor ecx, ecx
mov dword [ebp - 0x38], eax
mov eax, 1
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x1c], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x30], xmm0
mov dword [ebp - 0x28], edi
test edx, edx
jle 0x4159af
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x41599d
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
mov eax, dword [ebp - 0x14]
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x18], 0
nop
add edi, eax
mov ecx, edi
call fcn.0041d870
mov ecx, dword [ebp - 0x18]
movaps xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d850
movsd xmm1, qword [ebp - 0x48]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x30]
movsd qword [ebp - 0x48], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x48]
subsd xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x50]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x48]
inc eax
mov edi, dword [ebp - 0x28]
add dword [ebp - 0x18], edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
movsd qword [ebp - 0x30], xmm0
cmp eax, dword [ebp - 0x1c]
jl 0x415910
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x34]
inc edi
mov dword [ebp - 0x28], edi
cmp edi, edx
jl 0x4158e5
mov ecx, dword [ebp - 0x24]
mov esi, dword [ebp - 0x20]
mov edi, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x1c], eax
movsd qword [ecx + edi], xmm0
add ecx, 8
sub esi, 1
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], esi
jne 0x4158d0
mov eax, dword [ebp - 0x54]
inc edx
add eax, 0xc
mov dword [ebp - 0x34], edx
sub dword [ebp - 0x58], 1
mov dword [ebp - 0x54], eax
jne 0x4158b0
xor edx, edx
mov dword [ebp - 0x1c], 0xa
mov ecx, 1
mov dword [ebp - 0x58], edx
mov dword [ebp - 0x54], ecx
nop dword [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x34], esi
mov eax, dword [edx + eax]
xor edx, edx
mov dword [ebp - 0x38], eax
mov eax, 1
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x18], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x30], xmm0
mov dword [ebp - 0x24], edi
test ecx, ecx
jle 0x415b01
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x415aec
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
xor ecx, ecx
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x28], ecx
mov eax, ecx
nop dword [eax + eax]
add edi, eax
call fcn.0041d850
movaps xmm1, xmm0
mov ecx, edi
movsd qword [ebp - 0x48], xmm1
call fcn.0041d870
movsd xmm1, qword [ebp - 0x48]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x30]
movsd qword [ebp - 0x48], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x48]
subsd xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x50]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x48]
inc eax
mov ecx, dword [ebp - 0x28]
mov edi, dword [ebp - 0x24]
add ecx, edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
mov dword [ebp - 0x28], ecx
movsd qword [ebp - 0x30], xmm0
cmp eax, dword [ebp - 0x18]
jl 0x415a60
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x54]
inc edi
mov dword [ebp - 0x24], edi
cmp edi, ecx
jl 0x415a35
mov edx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x34]
mov edi, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x18], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x34], esi
jne 0x415a20
mov edx, dword [ebp - 0x58]
inc ecx
add edx, 0xc
mov dword [ebp - 0x54], ecx
sub dword [ebp - 0x1c], 1
mov dword [ebp - 0x58], edx
jne 0x415a00
xor edx, edx
mov dword [ebp - 0x1c], 0xa
mov ecx, 1
mov dword [ebp - 0x58], edx
mov dword [ebp - 0x54], ecx
nop word [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x34], esi
mov eax, dword [edx + eax]
xor edx, edx
mov dword [ebp - 0x38], eax
mov eax, 1
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x18], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x30], xmm0
mov dword [ebp - 0x24], edi
test ecx, ecx
jle 0x415c51
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x415c3c
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
xor ecx, ecx
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x28], ecx
mov eax, ecx
nop dword [eax + eax]
add edi, eax
call fcn.0041d850
movaps xmm1, xmm0
mov ecx, edi
movsd qword [ebp - 0x48], xmm1
call fcn.0041d870
movsd xmm1, qword [ebp - 0x48]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x30]
movsd qword [ebp - 0x48], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x48]
subsd xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x50]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x48]
inc eax
mov ecx, dword [ebp - 0x28]
mov edi, dword [ebp - 0x24]
add ecx, edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
mov dword [ebp - 0x28], ecx
movsd qword [ebp - 0x30], xmm0
cmp eax, dword [ebp - 0x18]
jl 0x415bb0
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x54]
inc edi
mov dword [ebp - 0x24], edi
cmp edi, ecx
jl 0x415b85
mov edx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x34]
mov edi, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x18], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x34], esi
jne 0x415b70
mov edx, dword [ebp - 0x58]
inc ecx
add edx, 0xc
mov dword [ebp - 0x54], ecx
sub dword [ebp - 0x1c], 1
mov dword [ebp - 0x58], edx
jne 0x415b50
xor edx, edx
mov dword [ebp - 0x1c], 0xa
mov ecx, 1
mov dword [ebp - 0x58], edx
mov dword [ebp - 0x54], ecx
nop word [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x34], esi
mov eax, dword [eax + edx]
xor edx, edx
mov dword [ebp - 0x38], eax
mov eax, 1
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x18], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x30], xmm0
mov dword [ebp - 0x24], edi
test ecx, ecx
jle 0x415da1
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x415d8c
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
xor ecx, ecx
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x28], ecx
mov eax, ecx
nop dword [eax + eax]
add edi, eax
call fcn.0041d850
movaps xmm1, xmm0
mov ecx, edi
movsd qword [ebp - 0x48], xmm1
call fcn.0041d870
movsd xmm1, qword [ebp - 0x48]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x30]
movsd qword [ebp - 0x48], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x48]
subsd xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x50]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x48]
inc eax
mov ecx, dword [ebp - 0x28]
mov edi, dword [ebp - 0x24]
add ecx, edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
mov dword [ebp - 0x28], ecx
movsd qword [ebp - 0x30], xmm0
cmp eax, dword [ebp - 0x18]
jl 0x415d00
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x54]
inc edi
mov dword [ebp - 0x24], edi
cmp edi, ecx
jl 0x415cd5
mov edx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x34]
mov edi, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x18], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x34], esi
jne 0x415cc0
mov edx, dword [ebp - 0x58]
inc ecx
add edx, 0xc
mov dword [ebp - 0x54], ecx
sub dword [ebp - 0x1c], 1
mov dword [ebp - 0x58], edx
jne 0x415ca0
xor edx, edx
mov dword [ebp - 0x58], 0xa
mov ecx, 1
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x34], ecx
nop word [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x20], esi
mov eax, dword [edx + eax]
xor edx, edx
mov dword [ebp - 0x38], eax
mov eax, 1
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x1c], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x30], xmm0
mov dword [ebp - 0x28], edi
test ecx, ecx
jle 0x415eef
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x415eda
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
mov eax, dword [ebp - 0x14]
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x18], 0
nop
add edi, eax
mov ecx, edi
call fcn.0041d870
mov ecx, dword [ebp - 0x18]
movaps xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d850
movsd xmm1, qword [ebp - 0x48]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x30]
movsd qword [ebp - 0x48], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x48]
subsd xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x50]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x48]
inc eax
mov edi, dword [ebp - 0x28]
add dword [ebp - 0x18], edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
movsd qword [ebp - 0x30], xmm0
cmp eax, dword [ebp - 0x1c]
jl 0x415e50
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x34]
inc edi
mov dword [ebp - 0x28], edi
cmp edi, ecx
jl 0x415e25
mov edx, dword [ebp - 0x24]
mov esi, dword [ebp - 0x20]
mov edi, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x1c], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x20], esi
jne 0x415e10
mov edx, dword [ebp - 0x54]
inc ecx
add edx, 0xc
mov dword [ebp - 0x34], ecx
sub dword [ebp - 0x58], 1
mov dword [ebp - 0x54], edx
jne 0x415df0
mov esi, dword [ebp - 0x84]
mov eax, dword [esi + 0xc]
test al, 1
jne 0x415f9d
movups xmm0, xmmword [0x449fe8]
or eax, 1
mov dword [esi + 0xe4], 0
mov dword [esi + 0xc], eax
mov eax, dword [0x44a000]
movups xmmword [ebp - 0xa8], xmm0
mov dword [ebp - 0x90], eax
movq xmm0, qword [0x449ff8]
mov al, byte [ebp - 0x8e]
movq qword [ebp - 0x98], xmm0
movups xmm0, xmmword [ebp - 0x9e]
mov dword [esi + 0xe8], 0
mov word [esi + 0xec], 0
movups xmmword [esi + 0xee], xmm0
mov byte [esi + 0xfe], al
cmp byte [esi + 0xed], 0
jne 0x415fc0
xor edx, edx
nop dword [eax + eax]
lea eax, [edx - 0x7d]
xor byte [edx + esi + 0xee], al
inc edx
cmp edx, 0x11
jb 0x415fb0
lea eax, [esi + 0xee]
mov byte [esi + 0xed], 1
push eax
push dword [ebp - 0x80]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x58], eax
mov edx, 1
xor eax, eax
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x3c], 0xa
nop
mov ecx, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x20], esi
mov eax, dword [eax + ecx]
xor ecx, ecx
mov dword [ebp - 0x38], eax
mov eax, 1
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x1c], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x30], xmm0
mov dword [ebp - 0x28], edi
test edx, edx
jle 0x4160ef
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x4160dd
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
mov eax, dword [ebp - 0x14]
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x18], 0
nop
add edi, eax
mov ecx, edi
call fcn.0041d870
mov ecx, dword [ebp - 0x18]
movaps xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d850
movsd xmm1, qword [ebp - 0x48]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x30]
movsd qword [ebp - 0x48], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x48]
subsd xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x50]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x48]
inc eax
mov edi, dword [ebp - 0x28]
add dword [ebp - 0x18], edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
movsd qword [ebp - 0x30], xmm0
cmp eax, dword [ebp - 0x1c]
jl 0x416050
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x34]
inc edi
mov dword [ebp - 0x28], edi
cmp edi, edx
jl 0x416025
mov ecx, dword [ebp - 0x24]
mov esi, dword [ebp - 0x20]
mov edi, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x1c], eax
movsd qword [ecx + edi], xmm0
add ecx, 8
sub esi, 1
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], esi
jne 0x416010
mov eax, dword [ebp - 0x54]
inc edx
add eax, 0xc
mov dword [ebp - 0x34], edx
sub dword [ebp - 0x3c], 1
mov dword [ebp - 0x54], eax
jne 0x415ff0
xor edx, edx
mov dword [ebp - 0x54], 0xa
mov ecx, 1
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x20], ecx
nop dword [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x24], esi
mov eax, dword [edx + eax]
xor edx, edx
mov dword [ebp - 0x38], eax
mov eax, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x1c], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x30], xmm0
mov dword [ebp - 0x3c], edi
test ecx, ecx
jle 0x41623f
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x41622a
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
mov eax, dword [ebp - 0x14]
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x18], 0
nop
add edi, eax
mov ecx, edi
call fcn.0041d870
mov ecx, dword [ebp - 0x18]
movaps xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d850
movsd xmm1, qword [ebp - 0x48]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x30]
movsd qword [ebp - 0x48], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x48]
subsd xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x50]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x48]
inc eax
mov edi, dword [ebp - 0x3c]
add dword [ebp - 0x18], edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
movsd qword [ebp - 0x30], xmm0
cmp eax, dword [ebp - 0x1c]
jl 0x4161a0
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
inc edi
mov dword [ebp - 0x3c], edi
cmp edi, ecx
jl 0x416175
mov edx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
mov edi, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x1c], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], esi
jne 0x416160
mov edx, dword [ebp - 0x34]
inc ecx
add edx, 0xc
mov dword [ebp - 0x20], ecx
sub dword [ebp - 0x54], 1
mov dword [ebp - 0x34], edx
jne 0x416140
xor edx, edx
mov dword [ebp - 0x54], 0xa
mov ecx, 1
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x20], ecx
nop dword [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x24], esi
mov eax, dword [eax + edx]
xor edx, edx
mov dword [ebp - 0x38], eax
mov eax, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x1c], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x30], xmm0
mov dword [ebp - 0x3c], edi
test ecx, ecx
jle 0x41638f
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x41637a
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
mov eax, dword [ebp - 0x14]
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x18], 0
nop
add edi, eax
mov ecx, edi
call fcn.0041d870
mov ecx, dword [ebp - 0x18]
movaps xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d850
movsd xmm1, qword [ebp - 0x48]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x30]
movsd qword [ebp - 0x48], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x48]
subsd xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x50]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x48]
inc eax
mov edi, dword [ebp - 0x3c]
add dword [ebp - 0x18], edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
movsd qword [ebp - 0x30], xmm0
cmp eax, dword [ebp - 0x1c]
jl 0x4162f0
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
inc edi
mov dword [ebp - 0x3c], edi
cmp edi, ecx
jl 0x4162c5
mov edx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
mov edi, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x1c], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], esi
jne 0x4162b0
mov edx, dword [ebp - 0x34]
inc ecx
add edx, 0xc
mov dword [ebp - 0x20], ecx
sub dword [ebp - 0x54], 1
mov dword [ebp - 0x34], edx
jne 0x416290
xor edx, edx
mov dword [ebp - 0x54], 0xa
mov ecx, 1
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x20], ecx
nop dword [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x24], esi
mov eax, dword [edx + eax]
xor edx, edx
mov dword [ebp - 0x38], eax
mov eax, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x1c], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x30], xmm0
mov dword [ebp - 0x3c], edi
test ecx, ecx
jle 0x4164df
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x4164ca
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
mov eax, dword [ebp - 0x14]
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x18], 0
nop
add edi, eax
mov ecx, edi
call fcn.0041d870
mov ecx, dword [ebp - 0x18]
movaps xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d850
movsd xmm1, qword [ebp - 0x48]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x30]
movsd qword [ebp - 0x48], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x48]
subsd xmm1, xmm0
movsd qword [ebp - 0x48], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x50]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x48]
inc eax
mov edi, dword [ebp - 0x3c]
add dword [ebp - 0x18], edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
movsd qword [ebp - 0x30], xmm0
cmp eax, dword [ebp - 0x1c]
jl 0x416440
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
inc edi
mov dword [ebp - 0x3c], edi
cmp edi, ecx
jl 0x416415
mov edx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
mov edi, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x1c], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], esi
jne 0x416400
mov edx, dword [ebp - 0x34]
inc ecx
add edx, 0xc
mov dword [ebp - 0x20], ecx
sub dword [ebp - 0x54], 1
mov dword [ebp - 0x34], edx
jne 0x4163e0
mov esi, dword [ebp - 0x84]
mov eax, dword [esi + 0x104]
test al, 1
jne 0x416580
movups xmm0, xmmword [0x449fc8]
or eax, 1
mov dword [esi + 0xa4], 0
mov dword [esi + 0xa8], 0
movups xmmword [ebp - 0xac], xmm0
mov word [esi + 0xac], 0
movups xmm0, xmmword [0x449fd8]
mov dword [esi + 0x104], eax
movups xmmword [ebp - 0x9c], xmm0
mov eax, dword [ebp - 0x92]
movups xmm0, xmmword [ebp - 0xa2]
movups xmmword [esi + 0xae], xmm0
mov dword [esi + 0xbe], eax
cmp byte [esi + 0xad], 0
jne 0x4165a0
xor edx, edx
nop dword [eax + eax]
lea eax, [edx - 0x7c]
xor byte [edx + esi + 0xae], al
inc edx
cmp edx, 0x14
jb 0x416590
lea eax, [esi + 0xae]
mov byte [esi + 0xad], 1
push eax
push dword [ebp - 0x80]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x54], eax
mov edx, 1
xor eax, eax
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x38], 0xa
nop
mov ecx, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x24], esi
mov eax, dword [eax + ecx]
xor ecx, ecx
mov dword [ebp - 0x44], eax
mov eax, 1
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x1c], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x3c], edi
test edx, edx
jle 0x4166cf
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x4166bd
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
mov eax, dword [ebp - 0x14]
movsd qword [ebp - 0x70], xmm0
mov dword [ebp - 0x18], 0
nop
add edi, eax
mov ecx, edi
call fcn.0041d870
mov ecx, dword [ebp - 0x18]
movaps xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d850
movsd xmm1, qword [ebp - 0x30]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x50]
movsd qword [ebp - 0x30], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x30]
subsd xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x70]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x30]
inc eax
mov edi, dword [ebp - 0x3c]
add dword [ebp - 0x18], edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
movsd qword [ebp - 0x50], xmm0
cmp eax, dword [ebp - 0x1c]
jl 0x416630
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
inc edi
mov dword [ebp - 0x3c], edi
cmp edi, edx
jl 0x416605
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
mov edi, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x1c], eax
movsd qword [ecx + edi], xmm0
add ecx, 8
sub esi, 1
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], esi
jne 0x4165f0
mov eax, dword [ebp - 0x34]
inc edx
add eax, 0xc
mov dword [ebp - 0x20], edx
sub dword [ebp - 0x38], 1
mov dword [ebp - 0x34], eax
jne 0x4165d0
xor edx, edx
mov dword [ebp - 0x1c], 0xa
mov ecx, 1
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x20], ecx
nop dword [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x24], esi
mov eax, dword [eax + edx]
xor edx, edx
mov dword [ebp - 0x44], eax
mov eax, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x18], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x3c], edi
test ecx, ecx
jle 0x416821
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x41680c
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
xor ecx, ecx
movsd qword [ebp - 0x70], xmm0
mov dword [ebp - 0x38], ecx
mov eax, ecx
nop dword [eax + eax]
add edi, eax
call fcn.0041d850
movaps xmm1, xmm0
mov ecx, edi
movsd qword [ebp - 0x30], xmm1
call fcn.0041d870
movsd xmm1, qword [ebp - 0x30]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x50]
movsd qword [ebp - 0x30], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x30]
subsd xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x70]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x30]
inc eax
mov ecx, dword [ebp - 0x38]
mov edi, dword [ebp - 0x3c]
add ecx, edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
mov dword [ebp - 0x38], ecx
movsd qword [ebp - 0x50], xmm0
cmp eax, dword [ebp - 0x18]
jl 0x416780
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x20]
inc edi
mov dword [ebp - 0x3c], edi
cmp edi, ecx
jl 0x416755
mov edx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
mov edi, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x18], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], esi
jne 0x416740
mov edx, dword [ebp - 0x34]
inc ecx
add edx, 0xc
mov dword [ebp - 0x20], ecx
sub dword [ebp - 0x1c], 1
mov dword [ebp - 0x34], edx
jne 0x416720
xor edx, edx
mov dword [ebp - 0x1c], 0xa
mov ecx, 1
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x20], ecx
nop word [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x24], esi
mov eax, dword [edx + eax]
xor edx, edx
mov dword [ebp - 0x44], eax
mov eax, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x18], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x3c], edi
test ecx, ecx
jle 0x416971
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x41695c
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
xor ecx, ecx
movsd qword [ebp - 0x70], xmm0
mov dword [ebp - 0x38], ecx
mov eax, ecx
nop dword [eax + eax]
add edi, eax
call fcn.0041d850
movaps xmm1, xmm0
mov ecx, edi
movsd qword [ebp - 0x30], xmm1
call fcn.0041d870
movsd xmm1, qword [ebp - 0x30]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x50]
movsd qword [ebp - 0x30], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x30]
subsd xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x70]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x30]
inc eax
mov ecx, dword [ebp - 0x38]
mov edi, dword [ebp - 0x3c]
add ecx, edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
mov dword [ebp - 0x38], ecx
movsd qword [ebp - 0x50], xmm0
cmp eax, dword [ebp - 0x18]
jl 0x4168d0
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x20]
inc edi
mov dword [ebp - 0x3c], edi
cmp edi, ecx
jl 0x4168a5
mov edx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
mov edi, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x18], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], esi
jne 0x416890
mov edx, dword [ebp - 0x34]
inc ecx
add edx, 0xc
mov dword [ebp - 0x20], ecx
sub dword [ebp - 0x1c], 1
mov dword [ebp - 0x34], edx
jne 0x416870
xor edx, edx
mov dword [ebp - 0x1c], 0xa
mov ecx, 1
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x20], ecx
nop word [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x24], esi
mov eax, dword [edx + eax]
xor edx, edx
mov dword [ebp - 0x44], eax
mov eax, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x18], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x3c], edi
test ecx, ecx
jle 0x416ac1
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x416aac
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
xor ecx, ecx
movsd qword [ebp - 0x70], xmm0
mov dword [ebp - 0x38], ecx
mov eax, ecx
nop dword [eax + eax]
add edi, eax
call fcn.0041d850
movaps xmm1, xmm0
mov ecx, edi
movsd qword [ebp - 0x30], xmm1
call fcn.0041d870
movsd xmm1, qword [ebp - 0x30]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x50]
movsd qword [ebp - 0x30], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x30]
subsd xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x70]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x30]
inc eax
mov ecx, dword [ebp - 0x38]
mov edi, dword [ebp - 0x3c]
add ecx, edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
mov dword [ebp - 0x38], ecx
movsd qword [ebp - 0x50], xmm0
cmp eax, dword [ebp - 0x18]
jl 0x416a20
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x20]
inc edi
mov dword [ebp - 0x3c], edi
cmp edi, ecx
jl 0x4169f5
mov edx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
mov edi, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x18], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], esi
jne 0x4169e0
mov edx, dword [ebp - 0x34]
inc ecx
add edx, 0xc
mov dword [ebp - 0x20], ecx
sub dword [ebp - 0x1c], 1
mov dword [ebp - 0x34], edx
jne 0x4169c0
xor edx, edx
mov dword [ebp - 0x34], 0xa
mov ecx, 1
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x24], ecx
nop word [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x28], esi
mov eax, dword [edx + eax]
xor edx, edx
mov dword [ebp - 0x44], eax
mov eax, 1
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x1c], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x38], edi
test ecx, ecx
jle 0x416c0f
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x416bfa
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
mov eax, dword [ebp - 0x14]
movsd qword [ebp - 0x70], xmm0
mov dword [ebp - 0x18], 0
nop
add edi, eax
mov ecx, edi
call fcn.0041d870
mov ecx, dword [ebp - 0x18]
movaps xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d850
movsd xmm1, qword [ebp - 0x30]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x50]
movsd qword [ebp - 0x30], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x30]
subsd xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x70]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x30]
inc eax
mov edi, dword [ebp - 0x38]
add dword [ebp - 0x18], edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
movsd qword [ebp - 0x50], xmm0
cmp eax, dword [ebp - 0x1c]
jl 0x416b70
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x24]
inc edi
mov dword [ebp - 0x38], edi
cmp edi, ecx
jl 0x416b45
mov edx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x28]
mov edi, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x1c], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x28], esi
jne 0x416b30
mov edx, dword [ebp - 0x20]
inc ecx
add edx, 0xc
mov dword [ebp - 0x24], ecx
sub dword [ebp - 0x34], 1
mov dword [ebp - 0x20], edx
jne 0x416b10
cmp dword [ebp - 0x5c], 0
je 0x418598
cmp dword [ebp - 0x60], 0
je 0x418598
cmp dword [ebp - 0x58], 0
je 0x418598
cmp dword [ebp - 0x54], 0
je 0x418598
xor edx, edx
mov dword [ebp - 0x1c], 0xa
mov ecx, 1
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x24], esi
mov eax, dword [eax + edx]
xor edx, edx
mov dword [ebp - 0x44], eax
mov eax, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x18], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x3c], edi
test ecx, ecx
jle 0x416d81
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x416d6c
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
xor ecx, ecx
movsd qword [ebp - 0x70], xmm0
mov dword [ebp - 0x38], ecx
mov eax, ecx
nop dword [eax + eax]
add edi, eax
call fcn.0041d850
movaps xmm1, xmm0
mov ecx, edi
movsd qword [ebp - 0x30], xmm1
call fcn.0041d870
movsd xmm1, qword [ebp - 0x30]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x50]
movsd qword [ebp - 0x30], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x30]
subsd xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x70]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x30]
inc eax
mov ecx, dword [ebp - 0x38]
mov edi, dword [ebp - 0x3c]
add ecx, edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
mov dword [ebp - 0x38], ecx
movsd qword [ebp - 0x50], xmm0
cmp eax, dword [ebp - 0x18]
jl 0x416ce0
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x20]
inc edi
mov dword [ebp - 0x3c], edi
cmp edi, ecx
jl 0x416cb5
mov edx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
mov edi, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x18], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], esi
jne 0x416ca0
mov edx, dword [ebp - 0x34]
inc ecx
add edx, 0xc
mov dword [ebp - 0x20], ecx
sub dword [ebp - 0x1c], 1
mov dword [ebp - 0x34], edx
jne 0x416c80
xor edx, edx
mov dword [ebp - 0x34], 0xa
mov ecx, 1
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x24], ecx
nop word [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x28], esi
mov eax, dword [edx + eax]
xor edx, edx
mov dword [ebp - 0x44], eax
mov eax, 1
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x1c], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x38], edi
test ecx, ecx
jle 0x416ecf
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x416eba
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
mov eax, dword [ebp - 0x14]
movsd qword [ebp - 0x70], xmm0
mov dword [ebp - 0x18], 0
nop
add edi, eax
mov ecx, edi
call fcn.0041d870
mov ecx, dword [ebp - 0x18]
movaps xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d850
movsd xmm1, qword [ebp - 0x30]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x50]
movsd qword [ebp - 0x30], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x30]
subsd xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x70]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x30]
inc eax
mov edi, dword [ebp - 0x38]
add dword [ebp - 0x18], edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
movsd qword [ebp - 0x50], xmm0
cmp eax, dword [ebp - 0x1c]
jl 0x416e30
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x24]
inc edi
mov dword [ebp - 0x38], edi
cmp edi, ecx
jl 0x416e05
mov edx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x28]
mov edi, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x1c], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x28], esi
jne 0x416df0
mov edx, dword [ebp - 0x20]
inc ecx
add edx, 0xc
mov dword [ebp - 0x24], ecx
sub dword [ebp - 0x34], 1
mov dword [ebp - 0x20], edx
jne 0x416dd0
xor edx, edx
mov dword [ebp - 0x1c], 0xa
mov ecx, 1
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x20], ecx
nop dword [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x24], esi
mov eax, dword [edx + eax]
xor edx, edx
mov dword [ebp - 0x44], eax
mov eax, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x18], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x3c], edi
test ecx, ecx
jle 0x417021
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x41700c
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
xor ecx, ecx
movsd qword [ebp - 0x70], xmm0
mov dword [ebp - 0x38], ecx
mov eax, ecx
nop dword [eax + eax]
add edi, eax
call fcn.0041d850
movaps xmm1, xmm0
mov ecx, edi
movsd qword [ebp - 0x30], xmm1
call fcn.0041d870
movsd xmm1, qword [ebp - 0x30]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x50]
movsd qword [ebp - 0x30], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x30]
subsd xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x70]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x30]
inc eax
mov ecx, dword [ebp - 0x38]
mov edi, dword [ebp - 0x3c]
add ecx, edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
mov dword [ebp - 0x38], ecx
movsd qword [ebp - 0x50], xmm0
cmp eax, dword [ebp - 0x18]
jl 0x416f80
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x20]
inc edi
mov dword [ebp - 0x3c], edi
cmp edi, ecx
jl 0x416f55
mov edx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
mov edi, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x18], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], esi
jne 0x416f40
mov edx, dword [ebp - 0x34]
inc ecx
add edx, 0xc
mov dword [ebp - 0x20], ecx
sub dword [ebp - 0x1c], 1
mov dword [ebp - 0x34], edx
jne 0x416f20
xor edx, edx
mov dword [ebp - 0x34], 0xa
mov ecx, 1
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x24], ecx
nop word [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x28], esi
mov eax, dword [edx + eax]
xor edx, edx
mov dword [ebp - 0x44], eax
mov eax, 1
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x1c], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x38], edi
test ecx, ecx
jle 0x41716f
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x41715a
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
mov eax, dword [ebp - 0x14]
movsd qword [ebp - 0x70], xmm0
mov dword [ebp - 0x18], 0
nop
add edi, eax
mov ecx, edi
call fcn.0041d870
mov ecx, dword [ebp - 0x18]
movaps xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d850
movsd xmm1, qword [ebp - 0x30]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x50]
movsd qword [ebp - 0x30], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x30]
subsd xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x70]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x30]
inc eax
mov edi, dword [ebp - 0x38]
add dword [ebp - 0x18], edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
movsd qword [ebp - 0x50], xmm0
cmp eax, dword [ebp - 0x1c]
jl 0x4170d0
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x24]
inc edi
mov dword [ebp - 0x38], edi
cmp edi, ecx
jl 0x4170a5
mov edx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x28]
mov edi, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x1c], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x28], esi
jne 0x417090
mov edx, dword [ebp - 0x20]
inc ecx
add edx, 0xc
mov dword [ebp - 0x24], ecx
sub dword [ebp - 0x34], 1
mov dword [ebp - 0x20], edx
jne 0x417070
xor edx, edx
mov dword [ebp - 0x1c], 0xa
mov ecx, 1
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x20], ecx
nop dword [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x24], esi
mov eax, dword [eax + edx]
xor edx, edx
mov dword [ebp - 0x44], eax
mov eax, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x18], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x3c], edi
test ecx, ecx
jle 0x4172c1
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x4172ac
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
xor ecx, ecx
movsd qword [ebp - 0x70], xmm0
mov dword [ebp - 0x38], ecx
mov eax, ecx
nop dword [eax + eax]
add edi, eax
call fcn.0041d850
movaps xmm1, xmm0
mov ecx, edi
movsd qword [ebp - 0x30], xmm1
call fcn.0041d870
movsd xmm1, qword [ebp - 0x30]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x50]
movsd qword [ebp - 0x30], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x30]
subsd xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x70]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x30]
inc eax
mov ecx, dword [ebp - 0x38]
mov edi, dword [ebp - 0x3c]
add ecx, edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
mov dword [ebp - 0x38], ecx
movsd qword [ebp - 0x50], xmm0
cmp eax, dword [ebp - 0x18]
jl 0x417220
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x20]
inc edi
mov dword [ebp - 0x3c], edi
cmp edi, ecx
jl 0x4171f5
mov edx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
mov edi, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x18], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], esi
jne 0x4171e0
mov edx, dword [ebp - 0x34]
inc ecx
add edx, 0xc
mov dword [ebp - 0x20], ecx
sub dword [ebp - 0x1c], 1
mov dword [ebp - 0x34], edx
jne 0x4171c0
xor edx, edx
mov dword [ebp - 0x34], 0xa
mov ecx, 1
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x24], ecx
nop word [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x28], esi
mov eax, dword [edx + eax]
xor edx, edx
mov dword [ebp - 0x44], eax
mov eax, 1
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x1c], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x38], edi
test ecx, ecx
jle 0x41740f
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x4173fa
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
mov eax, dword [ebp - 0x14]
movsd qword [ebp - 0x70], xmm0
mov dword [ebp - 0x18], 0
nop
add edi, eax
mov ecx, edi
call fcn.0041d870
mov ecx, dword [ebp - 0x18]
movaps xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d850
movsd xmm1, qword [ebp - 0x30]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x50]
movsd qword [ebp - 0x30], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x30]
subsd xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x70]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x30]
inc eax
mov edi, dword [ebp - 0x38]
add dword [ebp - 0x18], edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
movsd qword [ebp - 0x50], xmm0
cmp eax, dword [ebp - 0x1c]
jl 0x417370
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x24]
inc edi
mov dword [ebp - 0x38], edi
cmp edi, ecx
jl 0x417345
mov edx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x28]
mov edi, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x1c], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x28], esi
jne 0x417330
mov edx, dword [ebp - 0x20]
inc ecx
add edx, 0xc
mov dword [ebp - 0x24], ecx
sub dword [ebp - 0x34], 1
mov dword [ebp - 0x20], edx
jne 0x417310
mov edi, dword [ebp - 0x84]
mov eax, dword [edi + 0x130]
test al, 1
jne 0x4174b1
movups xmm0, xmmword [0x449eb8]
or eax, 1
mov dword [edi + 0x20], 0
mov dword [edi + 0x130], eax
mov eax, dword [0x449ed0]
movups xmmword [ebp - 0xa8], xmm0
mov dword [ebp - 0x90], eax
movq xmm0, qword [0x449ec8]
movq qword [ebp - 0x98], xmm0
movups xmm0, xmmword [ebp - 0x9e]
mov dword [edi + 0x24], 0
mov word [edi + 0x28], 0
movups xmmword [edi + 0x2a], xmm0
cmp byte [edi + 0x29], 0
jne 0x4174d0
xor edx, edx
nop dword [eax]
lea eax, [edx - 0x7c]
xor byte [edx + edi + 0x2a], al
inc edx
cmp edx, 0x10
jb 0x4174c0
xor edx, edx
mov byte [edi + 0x29], 1
mov ecx, 1
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x34], 0xa
nop dword [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x28], esi
mov eax, dword [edx + eax]
xor edx, edx
mov dword [ebp - 0x44], eax
mov eax, 1
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x1c], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x38], edi
test ecx, ecx
jle 0x4175ef
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x4175da
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
mov eax, dword [ebp - 0x14]
movsd qword [ebp - 0x70], xmm0
mov dword [ebp - 0x18], 0
nop
add edi, eax
mov ecx, edi
call fcn.0041d870
mov ecx, dword [ebp - 0x18]
movaps xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d850
movsd xmm1, qword [ebp - 0x30]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x50]
movsd qword [ebp - 0x30], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x30]
subsd xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x70]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x30]
inc eax
mov edi, dword [ebp - 0x38]
add dword [ebp - 0x18], edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
movsd qword [ebp - 0x50], xmm0
cmp eax, dword [ebp - 0x1c]
jl 0x417550
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x24]
inc edi
mov dword [ebp - 0x38], edi
cmp edi, ecx
jl 0x417525
mov edx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x28]
mov edi, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x1c], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x28], esi
jne 0x417510
mov edx, dword [ebp - 0x20]
inc ecx
add edx, 0xc
mov dword [ebp - 0x24], ecx
sub dword [ebp - 0x34], 1
mov dword [ebp - 0x20], edx
jne 0x4174f0
xor edx, edx
mov dword [ebp - 0x34], 0xa
mov ecx, 1
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x24], ecx
nop dword [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x28], esi
mov eax, dword [edx + eax]
xor edx, edx
mov dword [ebp - 0x44], eax
mov eax, 1
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x1c], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x38], edi
test ecx, ecx
jle 0x41773f
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x41772a
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
mov eax, dword [ebp - 0x14]
movsd qword [ebp - 0x70], xmm0
mov dword [ebp - 0x18], 0
nop
add edi, eax
mov ecx, edi
call fcn.0041d870
mov ecx, dword [ebp - 0x18]
movaps xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d850
movsd xmm1, qword [ebp - 0x30]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x50]
movsd qword [ebp - 0x30], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x30]
subsd xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x70]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x30]
inc eax
mov edi, dword [ebp - 0x38]
add dword [ebp - 0x18], edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
movsd qword [ebp - 0x50], xmm0
cmp eax, dword [ebp - 0x1c]
jl 0x4176a0
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x24]
inc edi
mov dword [ebp - 0x38], edi
cmp edi, ecx
jl 0x417675
mov edx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x28]
mov edi, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x1c], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x28], esi
jne 0x417660
mov edx, dword [ebp - 0x20]
inc ecx
add edx, 0xc
mov dword [ebp - 0x24], ecx
sub dword [ebp - 0x34], 1
mov dword [ebp - 0x20], edx
jne 0x417640
xor edx, edx
mov dword [ebp - 0x1c], 0xa
mov ecx, 1
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x20], ecx
nop dword [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x24], esi
mov eax, dword [eax + edx]
xor edx, edx
mov dword [ebp - 0x44], eax
mov eax, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x18], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x3c], edi
test ecx, ecx
jle 0x417891
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x41787c
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
xor ecx, ecx
movsd qword [ebp - 0x70], xmm0
mov dword [ebp - 0x38], ecx
mov eax, ecx
nop dword [eax + eax]
add edi, eax
call fcn.0041d850
movaps xmm1, xmm0
mov ecx, edi
movsd qword [ebp - 0x30], xmm1
call fcn.0041d870
movsd xmm1, qword [ebp - 0x30]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x50]
movsd qword [ebp - 0x30], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x30]
subsd xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x70]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x30]
inc eax
mov ecx, dword [ebp - 0x38]
mov edi, dword [ebp - 0x3c]
add ecx, edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
mov dword [ebp - 0x38], ecx
movsd qword [ebp - 0x50], xmm0
cmp eax, dword [ebp - 0x18]
jl 0x4177f0
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x20]
inc edi
mov dword [ebp - 0x3c], edi
cmp edi, ecx
jl 0x4177c5
mov edx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
mov edi, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x18], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], esi
jne 0x4177b0
mov edx, dword [ebp - 0x34]
inc ecx
add edx, 0xc
mov dword [ebp - 0x20], ecx
sub dword [ebp - 0x1c], 1
mov dword [ebp - 0x34], edx
jne 0x417790
xor edx, edx
mov dword [ebp - 0x1c], 0xa
mov ecx, 1
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x20], ecx
nop word [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x24], esi
mov eax, dword [edx + eax]
xor edx, edx
mov dword [ebp - 0x44], eax
mov eax, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x18], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x3c], edi
test ecx, ecx
jle 0x4179e1
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x4179cc
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
xor ecx, ecx
movsd qword [ebp - 0x70], xmm0
mov dword [ebp - 0x38], ecx
mov eax, ecx
nop dword [eax + eax]
add edi, eax
call fcn.0041d850
movaps xmm1, xmm0
mov ecx, edi
movsd qword [ebp - 0x30], xmm1
call fcn.0041d870
movsd xmm1, qword [ebp - 0x30]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x50]
movsd qword [ebp - 0x30], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x30]
subsd xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x70]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x30]
inc eax
mov ecx, dword [ebp - 0x38]
mov edi, dword [ebp - 0x3c]
add ecx, edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
mov dword [ebp - 0x38], ecx
movsd qword [ebp - 0x50], xmm0
cmp eax, dword [ebp - 0x18]
jl 0x417940
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x20]
inc edi
mov dword [ebp - 0x3c], edi
cmp edi, ecx
jl 0x417915
mov edx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
mov edi, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x18], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], esi
jne 0x417900
mov edx, dword [ebp - 0x34]
inc ecx
add edx, 0xc
mov dword [ebp - 0x20], ecx
sub dword [ebp - 0x1c], 1
mov dword [ebp - 0x34], edx
jne 0x4178e0
mov esi, dword [ebp - 0x84]
mov eax, dword [esi + 0x10]
test al, 1
jne 0x417a82
movups xmm0, xmmword [0x44a004]
or eax, 1
mov dword [esi + 0xc4], 0
mov dword [esi + 0xc8], 0
movups xmmword [ebp - 0xac], xmm0
mov word [esi + 0xcc], 0
movups xmm0, xmmword [0x44a014]
mov dword [esi + 0x10], eax
movups xmmword [ebp - 0x9c], xmm0
mov eax, dword [ebp - 0x92]
movups xmm0, xmmword [ebp - 0xa2]
movups xmmword [esi + 0xce], xmm0
mov dword [esi + 0xde], eax
cmp byte [esi + 0xcd], 0
jne 0x417aa0
xor edx, edx
nop dword [eax]
lea eax, [edx - 0x7b]
xor byte [edx + esi + 0xce], al
inc edx
cmp edx, 0x14
jb 0x417a90
push 0
push 0
push 0
push 1
lea eax, [esi + 0xce]
mov byte [esi + 0xcd], 1
push eax
call dword [ebp - 0x5c]
mov dword [ebp - 0x34], eax
mov edx, 1
xor eax, eax
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], 0xa
mov ecx, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x3c], esi
mov eax, dword [eax + ecx]
xor ecx, ecx
mov dword [ebp - 0x44], eax
mov eax, 1
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x1c], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x5c], edi
test edx, edx
jle 0x417bcf
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x417bbd
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
mov eax, dword [ebp - 0x14]
movsd qword [ebp - 0x70], xmm0
mov dword [ebp - 0x18], 0
nop
add edi, eax
mov ecx, edi
call fcn.0041d870
mov ecx, dword [ebp - 0x18]
movaps xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d850
movsd xmm1, qword [ebp - 0x30]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x50]
movsd qword [ebp - 0x30], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x30]
subsd xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x70]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x30]
inc eax
mov edi, dword [ebp - 0x5c]
add dword [ebp - 0x18], edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
movsd qword [ebp - 0x50], xmm0
cmp eax, dword [ebp - 0x1c]
jl 0x417b30
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
inc edi
mov dword [ebp - 0x5c], edi
cmp edi, edx
jl 0x417b05
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x3c]
mov edi, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x1c], eax
movsd qword [ecx + edi], xmm0
add ecx, 8
sub esi, 1
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x3c], esi
jne 0x417af0
mov eax, dword [ebp - 0x24]
inc edx
add eax, 0xc
mov dword [ebp - 0x28], edx
sub dword [ebp - 0x20], 1
mov dword [ebp - 0x24], eax
jne 0x417ad0
xor edx, edx
mov dword [ebp - 0x1c], 0xa
mov ecx, 1
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x24], ecx
nop dword [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x28], esi
mov eax, dword [eax + edx]
xor edx, edx
mov dword [ebp - 0x44], eax
mov eax, 1
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x18], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x38], edi
test ecx, ecx
jle 0x417d21
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x417d0c
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
xor ecx, ecx
movsd qword [ebp - 0x70], xmm0
mov dword [ebp - 0x5c], ecx
mov eax, ecx
nop dword [eax + eax]
add edi, eax
call fcn.0041d850
movaps xmm1, xmm0
mov ecx, edi
movsd qword [ebp - 0x30], xmm1
call fcn.0041d870
movsd xmm1, qword [ebp - 0x30]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x50]
movsd qword [ebp - 0x30], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x30]
subsd xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x70]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x30]
inc eax
mov ecx, dword [ebp - 0x5c]
mov edi, dword [ebp - 0x38]
add ecx, edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
mov dword [ebp - 0x5c], ecx
movsd qword [ebp - 0x50], xmm0
cmp eax, dword [ebp - 0x18]
jl 0x417c80
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x24]
inc edi
mov dword [ebp - 0x38], edi
cmp edi, ecx
jl 0x417c55
mov edx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x28]
mov edi, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x18], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x28], esi
jne 0x417c40
mov edx, dword [ebp - 0x20]
inc ecx
add edx, 0xc
mov dword [ebp - 0x24], ecx
sub dword [ebp - 0x1c], 1
mov dword [ebp - 0x20], edx
jne 0x417c20
xor edx, edx
mov dword [ebp - 0x20], 0xa
mov ecx, 1
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x28], ecx
nop word [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x3c], esi
mov eax, dword [edx + eax]
xor edx, edx
mov dword [ebp - 0x44], eax
mov eax, 1
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x1c], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x5c], edi
test ecx, ecx
jle 0x417e6f
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x417e5a
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
mov eax, dword [ebp - 0x14]
movsd qword [ebp - 0x70], xmm0
mov dword [ebp - 0x18], 0
nop
add edi, eax
mov ecx, edi
call fcn.0041d870
mov ecx, dword [ebp - 0x18]
movaps xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d850
movsd xmm1, qword [ebp - 0x30]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x50]
movsd qword [ebp - 0x30], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x30]
subsd xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x70]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x30]
inc eax
mov edi, dword [ebp - 0x5c]
add dword [ebp - 0x18], edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
movsd qword [ebp - 0x50], xmm0
cmp eax, dword [ebp - 0x1c]
jl 0x417dd0
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x28]
inc edi
mov dword [ebp - 0x5c], edi
cmp edi, ecx
jl 0x417da5
mov edx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x3c]
mov edi, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x1c], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x3c], esi
jne 0x417d90
mov edx, dword [ebp - 0x24]
inc ecx
add edx, 0xc
mov dword [ebp - 0x28], ecx
sub dword [ebp - 0x20], 1
mov dword [ebp - 0x24], edx
jne 0x417d70
cmp dword [ebp - 0x34], 0
je 0x418598
xor edx, edx
mov dword [ebp - 0x1c], 0xa
mov ecx, 1
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x24], ecx
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x28], esi
mov eax, dword [edx + eax]
xor edx, edx
mov dword [ebp - 0x44], eax
mov eax, 1
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x18], eax
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x38], edi
test ecx, ecx
jle 0x417fc1
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x417fac
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
xor ecx, ecx
movsd qword [ebp - 0x70], xmm0
mov dword [ebp - 0x5c], ecx
mov eax, ecx
nop dword [eax + eax]
add edi, eax
call fcn.0041d850
movaps xmm1, xmm0
mov ecx, edi
movsd qword [ebp - 0x30], xmm1
call fcn.0041d870
movsd xmm1, qword [ebp - 0x30]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x50]
movsd qword [ebp - 0x30], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x30]
subsd xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x70]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x30]
inc eax
mov ecx, dword [ebp - 0x5c]
mov edi, dword [ebp - 0x38]
add ecx, edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
mov dword [ebp - 0x5c], ecx
movsd qword [ebp - 0x50], xmm0
cmp eax, dword [ebp - 0x18]
jl 0x417f20
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x24]
inc edi
mov dword [ebp - 0x38], edi
cmp edi, ecx
jl 0x417ef5
mov edx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x28]
mov edi, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x18], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x28], esi
jne 0x417ee0
mov edx, dword [ebp - 0x20]
inc ecx
add edx, 0xc
mov dword [ebp - 0x24], ecx
sub dword [ebp - 0x1c], 1
mov dword [ebp - 0x20], edx
jne 0x417ec2
xor edx, edx
mov dword [ebp - 0x20], 0xa
mov ecx, 1
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x28], ecx
nop word [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x3c], esi
mov eax, dword [edx + eax]
xor edx, edx
mov dword [ebp - 0x44], eax
mov eax, 1
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x1c], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x5c], edi
test ecx, ecx
jle 0x41810f
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x4180fa
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
mov eax, dword [ebp - 0x14]
movsd qword [ebp - 0x70], xmm0
mov dword [ebp - 0x18], 0
nop
add edi, eax
mov ecx, edi
call fcn.0041d870
mov ecx, dword [ebp - 0x18]
movaps xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d850
movsd xmm1, qword [ebp - 0x30]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x50]
movsd qword [ebp - 0x30], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x30]
subsd xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x70]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x30]
inc eax
mov edi, dword [ebp - 0x5c]
add dword [ebp - 0x18], edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
movsd qword [ebp - 0x50], xmm0
cmp eax, dword [ebp - 0x1c]
jl 0x418070
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x28]
inc edi
mov dword [ebp - 0x5c], edi
cmp edi, ecx
jl 0x418045
mov edx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x3c]
mov edi, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x1c], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x3c], esi
jne 0x418030
mov edx, dword [ebp - 0x24]
inc ecx
add edx, 0xc
mov dword [ebp - 0x28], ecx
sub dword [ebp - 0x20], 1
mov dword [ebp - 0x24], edx
jne 0x418010
xor edx, edx
mov dword [ebp - 0x1c], 0xa
mov ecx, 1
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x24], ecx
nop dword [eax + eax]
mov eax, dword [ebp - 0x7c]
mov esi, 0xa
mov dword [ebp - 0x28], esi
mov eax, dword [eax + edx]
xor edx, edx
mov dword [ebp - 0x44], eax
mov eax, 1
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x18], eax
nop
xor edi, edi
xorps xmm0, xmm0
movsd qword [ebp - 0x50], xmm0
mov dword [ebp - 0x38], edi
test ecx, ecx
jle 0x418261
xor ecx, ecx
mov dword [ebp - 0x14], ecx
test eax, eax
jle 0x41824c
lea edx, [ecx + 3]
mov ecx, edi
lea esi, [edi + 1]
call fcn.0041d8c0
xor ecx, ecx
movsd qword [ebp - 0x70], xmm0
mov dword [ebp - 0x5c], ecx
mov eax, ecx
nop dword [eax + eax]
add edi, eax
call fcn.0041d850
movaps xmm1, xmm0
mov ecx, edi
movsd qword [ebp - 0x30], xmm1
call fcn.0041d870
movsd xmm1, qword [ebp - 0x30]
mov ecx, edi
mulsd xmm1, xmm0
addsd xmm1, qword [ebp - 0x50]
movsd qword [ebp - 0x30], xmm1
call fcn.0041d890
movd xmm1, esi
mov edx, 2
cvtdq2pd xmm1, xmm1
mov ecx, dword [ebp - 0x14]
divsd xmm0, xmm1
movsd xmm1, qword [ebp - 0x30]
subsd xmm1, xmm0
movsd qword [ebp - 0x30], xmm1
call fcn.0041d8c0
movsd xmm1, qword [ebp - 0x70]
mov eax, dword [ebp - 0x14]
subsd xmm1, xmm0
movsd xmm0, qword [ebp - 0x30]
inc eax
mov ecx, dword [ebp - 0x5c]
mov edi, dword [ebp - 0x38]
add ecx, edi
mov dword [ebp - 0x14], eax
addsd xmm0, xmm1
mov dword [ebp - 0x5c], ecx
movsd qword [ebp - 0x50], xmm0
cmp eax, dword [ebp - 0x18]
jl 0x4181c0
mov ecx, dword [ebp - 0x24]
inc edi
mov dword [ebp - 0x38], edi
cmp edi, ecx
jl 0x418195
mov edi, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x18], eax
movsd qword [edx + edi], xmm0
add edx, 8
sub esi, 1
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x28], esi
jne 0x418180
mov edx, dword [ebp - 0x20]
inc ecx
add edx, 0xc
mov dword [ebp - 0x24], ecx
sub dword [ebp - 0x1c], 1
mov dword [ebp - 0x20], edx
jne 0x418160
push dword [ebp - 0x80]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov esi, dword [ebp - 0x8c]
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
lea ecx, [ebp - 0x7c]
call fcn.0041bbc0
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.00429403
int3