Function at 0x516a52
Capabilities:
Get file size

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x7c4
mov eax, dword [0xb04008]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov dword [ebp - 0x4ac], edx
mov dword [ebp - 0x7a8], ecx
mov byte [ebp - 0x2c9], 0
push 0x208
push 0
lea eax, [ebp - 0x224]
push eax
call fcn.00a9dbd0
add esp, 0xc
mov eax, dword [ebp - 0x7a8]
mov dword [ebp - 0x4b0], eax
lea eax, [ebp - 0x224]
mov dword [ebp - 0x45c], eax
mov eax, dword [ebp - 0x45c]
mov dword [ebp - 0x7bc], eax
mov eax, dword [ebp - 0x4b0]
mov ax, word [eax]
mov word [ebp - 0x3f2], ax
mov eax, dword [ebp - 0x45c]
mov cx, word [ebp - 0x3f2]
mov word [eax], cx
mov eax, dword [ebp - 0x4b0]
inc eax
inc eax
mov dword [ebp - 0x4b0], eax
mov eax, dword [ebp - 0x45c]
inc eax
inc eax
mov dword [ebp - 0x45c], eax
cmp word [ebp - 0x3f2], 0
jne 0x516ab5
mov eax, dword [ebp - 0x4ac]
mov eax, dword [eax + 0x28]
mov dword [ebp - 0x3f8], eax
mov eax, dword [ebp - 0x3f8]
mov dword [ebp - 0x5f0], eax
mov eax, dword [ebp - 0x3f8]
mov ax, word [eax]
mov word [ebp - 0x4a2], ax
add dword [ebp - 0x3f8], 2
cmp word [ebp - 0x4a2], 0
jne 0x516b16
mov eax, dword [ebp - 0x3f8]
sub eax, dword [ebp - 0x5f0]
mov ecx, dword [ebp - 0x5f0]
mov dword [ebp - 0x78c], ecx
mov dword [ebp - 0x788], eax
lea eax, [ebp - 0x224]
dec eax
dec eax
mov dword [ebp - 0x478], eax
mov eax, dword [ebp - 0x478]
mov ax, word [eax + 2]
mov word [ebp - 0x4a4], ax
add dword [ebp - 0x478], 2
cmp word [ebp - 0x4a4], 0
jne 0x516b63
mov edi, dword [ebp - 0x478]
mov esi, dword [ebp - 0x78c]
mov eax, dword [ebp - 0x788]
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
and dword [ebp - 0x4a8], 0
jmp 0x516bbb
mov eax, dword [ebp - 0x4a8]
inc eax
mov dword [ebp - 0x4a8], eax
cmp dword [ebp - 0x4a8], 0x3c
jge 0x51c500
and dword [ebp - 0x238], 0
and dword [ebp - 0x22c], 0
xorps xmm0, xmm0
movsd qword [ebp - 0x438], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x3f0], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x3f0], xmm0
jmp 0x516c11
movsd xmm0, qword [ebp - 0x3f0]
addsd xmm0, qword [0xae0fe0]
movsd qword [ebp - 0x3f0], xmm0
movsd xmm0, qword [0xae5f78]
comisd xmm0, xmmword [ebp - 0x3f0]
jbe 0x516cc2
movsd xmm0, qword [0xae3890]
mulsd xmm0, qword [ebp - 0x3f0]
mulsd xmm0, qword [ebp - 0x3f0]
movsd xmm1, qword [ebp - 0x3f0]
mulsd xmm1, qword [ebp - 0x3f0]
subsd xmm0, xmm1
movsd xmm1, qword [0xae1090]
mulsd xmm1, qword [ebp - 0x3f0]
mulsd xmm1, qword [ebp - 0x3f0]
addsd xmm1, qword [0xae1d18]
divsd xmm0, xmm1
addsd xmm0, qword [ebp - 0x438]
movsd qword [ebp - 0x438], xmm0
movsd xmm0, qword [ebp - 0x438]
comisd xmm0, xmmword [0xae3100]
jbe 0x516cbd
movsd xmm0, qword [0xae0e90]
mulsd xmm0, qword [ebp - 0x3f0]
movsd xmm1, qword [ebp - 0x438]
subsd xmm1, xmm0
movsd qword [ebp - 0x438], xmm1
jmp 0x516bf9
xorps xmm0, xmm0
comisd xmm0, xmmword [ebp - 0x438]
jbe 0x516d07
jb 0x516d0b
push 0x49
jne 0x516cf7
and dword [eax], edi
push edx
cmp al, 0x6c
das
jge 0x516d43
push eax
imul esp, dword [eax], 0x54
dec edi
cmp eax, 0x60343232
xor eax, 0xe2466335
inc ebx
invalid
jecxz 0x516d30
loope 0x516d3d
in eax, 0x38
in eax, 0x43
fadd qword [esi - 0x26]
jmp 0x519b3e
mov dword [ebp - 0x238], 0x516cea
mov dword [ebp - 0x22c], 0x516ccf
mov eax, dword [ebp - 0x238]
mov dword [ebp - 0x278], eax
mov eax, dword [ebp - 0x22c]
mov dword [ebp - 0x77c], eax
mov byte [ebp - 0x2f1], 0x1f
and dword [ebp - 0x290], 0
jmp 0x516d50
invalid
clc
invalid
std
invalid
mov eax, dword [ebp - 0x290]
inc eax
mov dword [ebp - 0x290], eax
cmp dword [ebp - 0x290], 0x100
jae 0x516d71
mov eax, dword [ebp - 0x290]
mov cl, byte [ebp - 0x290]
mov byte [ebp + eax - 0x5ec], cl
jmp 0x516d43
and dword [ebp - 0x3a8], 0
mov byte [ebp - 0x24f], 0
mov dword [ebp - 0x290], 0xff
jmp 0x516d98
mov eax, dword [ebp - 0x290]
dec eax
mov dword [ebp - 0x290], eax
cmp dword [ebp - 0x290], 0
jbe 0x51701d
and dword [ebp - 0x4ec], 0
mov dword [ebp - 0x47c], 1
mov eax, dword [ebp - 0x47c]
cmp eax, dword [ebp - 0x290]
jae 0x516dd6
mov eax, dword [ebp - 0x47c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x47c], eax
jmp 0x516db6
mov eax, dword [ebp - 0x3a8]
mov dword [ebp - 0x780], eax
mov eax, dword [ebp - 0x780]
mov dword [ebp - 0x2e4], eax
cmp dword [ebp - 0x2e4], 0
je 0x516e1b
sub dword [ebp - 0x2e4], 1
je 0x516e49
sub dword [ebp - 0x2e4], 1
je 0x516e7a
sub dword [ebp - 0x2e4], 1
je 0x516ea8
jmp 0x516ed6
movzx eax, byte [ebp - 0x24f]
movzx ebx, byte [ebp + eax - 0x5ec]
movsd xmm0, qword [ebp - 0x438]
call fcn.00ac0df0
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x24f], bl
jmp 0x516efd
movzx eax, byte [ebp - 0x24f]
movzx ebx, byte [ebp + eax - 0x5ec]
movsd xmm0, qword [ebp - 0x438]
call fcn.00ac0df0
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x24f], bl
jmp 0x516efd
movzx eax, byte [ebp - 0x24f]
movzx ebx, byte [ebp + eax - 0x5ec]
movsd xmm0, qword [ebp - 0x438]
call fcn.00ac0df0
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x24f], bl
jmp 0x516efd
movzx eax, byte [ebp - 0x24f]
movzx ebx, byte [ebp + eax - 0x5ec]
movsd xmm0, qword [ebp - 0x438]
call fcn.00ac0df0
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x24f], bl
jmp 0x516efd
movzx eax, byte [ebp - 0x24f]
movzx eax, byte [ebp + eax - 0x5ec]
mov ecx, dword [ebp - 0x77c]
add ecx, dword [ebp - 0x3a8]
movzx ecx, byte [ecx - 4]
add eax, ecx
mov byte [ebp - 0x24f], al
mov eax, dword [ebp - 0x3a8]
inc eax
mov dword [ebp - 0x3a8], eax
movzx eax, byte [ebp - 0x2f1]
cmp dword [ebp - 0x3a8], eax
jb 0x516f36
and dword [ebp - 0x3a8], 0
movzx eax, byte [ebp - 0x2f1]
movzx ecx, byte [ebp - 0x24f]
add ecx, eax
mov byte [ebp - 0x24f], cl
movzx eax, byte [ebp - 0x24f]
and eax, dword [ebp - 0x47c]
mov dword [ebp - 0x370], eax
mov eax, dword [ebp - 0x4ec]
inc eax
mov dword [ebp - 0x4ec], eax
cmp dword [ebp - 0x4ec], 0xb
jbe 0x516f73
mov eax, dword [ebp - 0x370]
xor edx, edx
div dword [ebp - 0x290]
mov dword [ebp - 0x370], edx
mov eax, dword [ebp - 0x370]
cmp eax, dword [ebp - 0x290]
ja 0x516dd6
mov eax, dword [ebp - 0x290]
cmp eax, dword [ebp - 0x370]
je 0x517018
mov eax, dword [ebp - 0x370]
movzx eax, byte [ebp + eax - 0x5ec]
mov ecx, dword [ebp - 0x290]
movzx ecx, byte [ebp + ecx - 0x5ec]
xor ecx, eax
mov eax, dword [ebp - 0x290]
mov byte [ebp + eax - 0x5ec], cl
mov eax, dword [ebp - 0x290]
movzx eax, byte [ebp + eax - 0x5ec]
mov ecx, dword [ebp - 0x370]
movzx ecx, byte [ebp + ecx - 0x5ec]
xor ecx, eax
mov eax, dword [ebp - 0x370]
mov byte [ebp + eax - 0x5ec], cl
mov eax, dword [ebp - 0x370]
movzx eax, byte [ebp + eax - 0x5ec]
mov ecx, dword [ebp - 0x290]
movzx ecx, byte [ebp + ecx - 0x5ec]
xor ecx, eax
mov eax, dword [ebp - 0x290]
mov byte [ebp + eax - 0x5ec], cl
jmp 0x516d8b
xor eax, eax
inc eax
shl eax, 0
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp - 0x239], al
xor eax, eax
inc eax
imul eax, eax, 3
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp - 0x23a], al
xor eax, eax
inc eax
imul eax, eax, 5
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp - 0x241], al
xor eax, eax
inc eax
imul eax, eax, 7
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp - 0x23b], al
movzx eax, byte [ebp - 0x24f]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp - 0x23c], al
mov dword [ebp - 0x5f4], 0x18
cmp dword [ebp - 0x5f4], 2
jle 0x519af6
mov eax, dword [ebp - 0x5f4]
and eax, 1
jne 0x519af6
and dword [ebp - 0x24c], 0
and dword [ebp - 0x258], 0
mov eax, dword [ebp - 0x258]
inc eax
mov dword [ebp - 0x258], eax
and dword [ebp - 0x274], 0
mov eax, dword [ebp - 0x24c]
shl eax, 1
mov dword [ebp - 0x274], eax
and dword [ebp - 0x25c], 0
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x274]
movzx eax, byte [eax]
add eax, dword [ebp - 0x25c]
mov dword [ebp - 0x25c], eax
and dword [ebp - 0x260], 0
mov eax, dword [ebp - 0x260]
add eax, 0x37
mov dword [ebp - 0x260], eax
and dword [ebp - 0x27c], 0
mov eax, dword [ebp - 0x24c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x27c], eax
and dword [ebp - 0x264], 0
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x27c]
movzx eax, byte [eax]
add eax, dword [ebp - 0x264]
mov dword [ebp - 0x264], eax
and dword [ebp - 0x268], 0
mov eax, dword [ebp - 0x268]
add eax, 0xd7
mov dword [ebp - 0x268], eax
and dword [ebp - 0x26c], 0
mov eax, dword [ebp - 0x25c]
sub eax, dword [ebp - 0x260]
add eax, dword [ebp - 0x26c]
mov dword [ebp - 0x26c], eax
and dword [ebp - 0x270], 0
mov eax, dword [ebp - 0x264]
sub eax, dword [ebp - 0x268]
add eax, dword [ebp - 0x270]
mov dword [ebp - 0x270], eax
and dword [ebp - 0x280], 0
mov eax, dword [ebp - 0x26c]
shl eax, 4
mov dword [ebp - 0x280], eax
and dword [ebp - 0x284], 0
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0x284], eax
and dword [ebp - 0x288], 0
mov eax, dword [ebp - 0x280]
or eax, dword [ebp - 0x284]
mov dword [ebp - 0x288], eax
mov byte [ebp - 0x242], 0
mov al, byte [ebp - 0x288]
mov byte [ebp - 0x242], al
mov byte [ebp - 0x240], 0
movzx eax, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp - 0x240], al
movsd xmm0, qword [0xaf2ce8]
movsd qword [ebp - 0x490], xmm0
movsd xmm0, qword [0xaf1868]
movsd qword [ebp - 0x3e8], xmm0
movsd xmm0, qword [0xaef080]
movsd qword [ebp - 0x488], xmm0
movsd xmm0, qword [0xaeb750]
movsd qword [ebp - 0x458], xmm0
movsd xmm0, qword [0xae7648]
movsd qword [ebp - 0x420], xmm0
movsd xmm0, qword [ebp - 0x3e8]
addsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x3e8], xmm0
movsd xmm0, qword [ebp - 0x490]
subsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x490], xmm0
movsd xmm0, qword [ebp - 0x458]
mulsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x458], xmm0
movsd xmm0, qword [ebp - 0x3e8]
mulsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x3e8], xmm0
movsd xmm0, qword [ebp - 0x458]
mulsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x458], xmm0
movsd xmm0, qword [ebp - 0x458]
comisd xmm0, xmmword [ebp - 0x420]
jbe 0x517398
movsd xmm0, qword [ebp - 0x3e8]
addsd xmm0, qword [ebp - 0x488]
movsd qword [ebp - 0x3e8], xmm0
movsd xmm0, qword [ebp - 0x3e8]
subsd xmm0, qword [ebp - 0x488]
movsd qword [ebp - 0x3e8], xmm0
movsd xmm0, qword [ebp - 0x458]
addsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x458], xmm0
movsd xmm0, qword [ebp - 0x458]
mulsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x458], xmm0
movsd xmm0, qword [ebp - 0x3e8]
subsd xmm0, qword [ebp - 0x488]
movsd qword [ebp - 0x3e8], xmm0
movzx eax, byte [ebp - 0x239]
movzx eax, byte [ebp + eax - 0x5ec]
mov dword [ebp - 0x778], eax
mov al, byte [ebp - 0x239]
add al, 1
mov byte [ebp - 0x239], al
movzx eax, byte [ebp - 0x23a]
add eax, dword [ebp - 0x778]
mov byte [ebp - 0x23a], al
jmp 0x517410
movsd xmm0, qword [ebp - 0x488]
subsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x488], xmm0
movsd xmm0, qword [ebp - 0x490]
addsd xmm0, qword [ebp - 0x488]
movsd qword [ebp - 0x490], xmm0
movsd xmm0, qword [ebp - 0x490]
subsd xmm0, qword [ebp - 0x488]
movsd qword [ebp - 0x490], xmm0
movsd xmm0, qword [ebp - 0x420]
mulsd xmm0, qword [ebp - 0x3e8]
movsd qword [ebp - 0x420], xmm0
movsd xmm0, qword [ebp - 0x490]
divsd xmm0, qword [ebp - 0x488]
movsd qword [ebp - 0x490], xmm0
movzx eax, byte [ebp - 0x23a]
movzx ecx, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x23b]
movzx ecx, byte [ebp - 0x23a]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x239]
movzx ecx, byte [ebp - 0x23b]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movss xmm0, dword [0xaf8cc8]
movss dword [ebp - 0x338], xmm0
movss xmm0, dword [0xaf82e0]
movss dword [ebp - 0x308], xmm0
movss xmm0, dword [0xaf74e0]
movss dword [ebp - 0x394], xmm0
movss xmm0, dword [0xaf642c]
movss dword [ebp - 0x310], xmm0
movss xmm0, dword [0xaf546c]
movss dword [ebp - 0x398], xmm0
movss xmm0, dword [0xaf43d4]
movss dword [ebp - 0x374], xmm0
movss xmm0, dword [0xaf3250]
movss dword [ebp - 0x2d0], xmm0
movss xmm0, dword [ebp - 0x308]
subss xmm0, dword [ebp - 0x2d0]
movss dword [ebp - 0x308], xmm0
movss xmm0, dword [ebp - 0x338]
addss xmm0, dword [ebp - 0x2d0]
movss dword [ebp - 0x338], xmm0
movss xmm0, dword [ebp - 0x310]
mulss xmm0, dword [ebp - 0x2d0]
movss dword [ebp - 0x310], xmm0
movss xmm0, dword [ebp - 0x338]
addss xmm0, dword [ebp - 0x2d0]
movss dword [ebp - 0x338], xmm0
movss xmm0, dword [ebp - 0x394]
addss xmm0, dword [ebp - 0x2d0]
movss dword [ebp - 0x394], xmm0
movss xmm0, dword [ebp - 0x338]
subss xmm0, dword [ebp - 0x2d0]
movss dword [ebp - 0x338], xmm0
movss xmm0, dword [ebp - 0x374]
mulss xmm0, dword [ebp - 0x2d0]
movss dword [ebp - 0x374], xmm0
movss xmm0, dword [ebp - 0x2d0]
comiss xmm0, dword [ebp - 0x310]
jbe 0x51763e
movss xmm0, dword [ebp - 0x394]
mulss xmm0, dword [ebp - 0x310]
movss dword [ebp - 0x394], xmm0
movss xmm0, dword [ebp - 0x308]
subss xmm0, dword [ebp - 0x394]
movss dword [ebp - 0x308], xmm0
movss xmm0, dword [ebp - 0x338]
divss xmm0, dword [ebp - 0x308]
movss dword [ebp - 0x338], xmm0
movss xmm0, dword [ebp - 0x310]
mulss xmm0, dword [ebp - 0x398]
movss dword [ebp - 0x310], xmm0
movss xmm0, dword [ebp - 0x310]
addss xmm0, dword [ebp - 0x398]
movss dword [ebp - 0x310], xmm0
movss xmm0, dword [ebp - 0x374]
subss xmm0, dword [ebp - 0x2d0]
movss dword [ebp - 0x374], xmm0
movss xmm0, dword [ebp - 0x374]
addss xmm0, dword [ebp - 0x2d0]
movss dword [ebp - 0x374], xmm0
jmp 0x5176fa
movss xmm0, dword [ebp - 0x374]
mulss xmm0, dword [ebp - 0x338]
movss dword [ebp - 0x374], xmm0
movss xmm0, dword [ebp - 0x2d0]
mulss xmm0, dword [ebp - 0x308]
movss dword [ebp - 0x2d0], xmm0
movss xmm0, dword [ebp - 0x398]
mulss xmm0, dword [ebp - 0x2d0]
movss dword [ebp - 0x398], xmm0
movss xmm0, dword [ebp - 0x308]
subss xmm0, dword [ebp - 0x310]
movss dword [ebp - 0x308], xmm0
movss xmm0, dword [ebp - 0x308]
subss xmm0, dword [ebp - 0x310]
movss dword [ebp - 0x308], xmm0
movss xmm0, dword [ebp - 0x394]
mulss xmm0, dword [ebp - 0x398]
movss dword [ebp - 0x394], xmm0
movss xmm0, dword [ebp - 0x398]
addss xmm0, dword [ebp - 0x2d0]
movss dword [ebp - 0x398], xmm0
movzx eax, byte [ebp - 0x239]
mov cl, byte [ebp - 0x240]
mov byte [ebp + eax - 0x5ec], cl
movzx eax, byte [ebp - 0x240]
movzx eax, byte [ebp + eax - 0x5ec]
movzx ecx, byte [ebp - 0x241]
add ecx, eax
mov byte [ebp - 0x241], cl
movzx eax, byte [ebp - 0x242]
movzx ecx, byte [ebp - 0x23a]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x239]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
movzx ecx, byte [ebp - 0x23b]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x23c]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
movzx edx, byte [ebp - 0x241]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
mov byte [ebp - 0x23b], al
mov al, byte [ebp - 0x242]
mov byte [ebp - 0x23c], al
mov al, byte [ebp - 0x23b]
mov byte [ebp - 0x247], al
cmp dword [ebp - 0x24c], 0
jle 0x5177cf
mov eax, dword [ebp - 0x24c]
mov cl, byte [ebp - 0x247]
mov byte [ebp + eax - 0x11], cl
mov eax, dword [ebp - 0x24c]
inc eax
mov dword [ebp - 0x24c], eax
mov eax, dword [ebp - 0x258]
inc eax
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x24c]
shl eax, 1
mov dword [ebp - 0x274], eax
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x274]
movzx eax, byte [eax]
mov dword [ebp - 0x25c], eax
mov dword [ebp - 0x260], 0x37
mov eax, dword [ebp - 0x24c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x27c], eax
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x27c]
movzx eax, byte [eax]
mov dword [ebp - 0x264], eax
mov dword [ebp - 0x268], 0xd7
mov eax, dword [ebp - 0x25c]
sub eax, dword [ebp - 0x260]
mov dword [ebp - 0x26c], eax
mov eax, dword [ebp - 0x264]
sub eax, dword [ebp - 0x268]
mov dword [ebp - 0x270], eax
mov eax, dword [ebp - 0x26c]
shl eax, 4
mov dword [ebp - 0x280], eax
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0x284], eax
mov eax, dword [ebp - 0x280]
or eax, dword [ebp - 0x284]
mov dword [ebp - 0x288], eax
mov al, byte [ebp - 0x288]
mov byte [ebp - 0x242], al
movzx eax, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp - 0x240], al
movzx eax, byte [ebp - 0x239]
movzx eax, byte [ebp + eax - 0x5ec]
mov dword [ebp - 0x774], eax
mov al, byte [ebp - 0x239]
add al, 1
mov byte [ebp - 0x239], al
movzx eax, byte [ebp - 0x23a]
add eax, dword [ebp - 0x774]
mov byte [ebp - 0x23a], al
movzx eax, byte [ebp - 0x23a]
movzx ecx, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x23b]
movzx ecx, byte [ebp - 0x23a]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x239]
movzx ecx, byte [ebp - 0x23b]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x239]
mov cl, byte [ebp - 0x240]
mov byte [ebp + eax - 0x5ec], cl
movzx eax, byte [ebp - 0x240]
movzx eax, byte [ebp + eax - 0x5ec]
movzx ecx, byte [ebp - 0x241]
add ecx, eax
mov byte [ebp - 0x241], cl
movzx eax, byte [ebp - 0x242]
movzx ecx, byte [ebp - 0x23a]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x239]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
movzx ecx, byte [ebp - 0x23b]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x23c]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
movzx edx, byte [ebp - 0x241]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
mov byte [ebp - 0x23b], al
mov al, byte [ebp - 0x242]
mov byte [ebp - 0x23c], al
mov al, byte [ebp - 0x23b]
mov byte [ebp - 0x247], al
cmp dword [ebp - 0x24c], 0
jle 0x517a29
mov eax, dword [ebp - 0x24c]
mov cl, byte [ebp - 0x247]
mov byte [ebp + eax - 0x11], cl
mov eax, dword [ebp - 0x24c]
inc eax
mov dword [ebp - 0x24c], eax
mov eax, dword [ebp - 0x258]
inc eax
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x24c]
shl eax, 1
mov dword [ebp - 0x274], eax
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x274]
movzx eax, byte [eax]
mov dword [ebp - 0x25c], eax
mov dword [ebp - 0x260], 0x37
mov eax, dword [ebp - 0x24c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x27c], eax
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x27c]
movzx eax, byte [eax]
mov dword [ebp - 0x264], eax
mov dword [ebp - 0x268], 0xd7
mov eax, dword [ebp - 0x25c]
sub eax, dword [ebp - 0x260]
mov dword [ebp - 0x26c], eax
mov eax, dword [ebp - 0x264]
sub eax, dword [ebp - 0x268]
mov dword [ebp - 0x270], eax
mov eax, dword [ebp - 0x26c]
shl eax, 4
mov dword [ebp - 0x280], eax
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0x284], eax
mov eax, dword [ebp - 0x280]
or eax, dword [ebp - 0x284]
mov dword [ebp - 0x288], eax
mov al, byte [ebp - 0x288]
mov byte [ebp - 0x242], al
movzx eax, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp - 0x240], al
movzx eax, byte [ebp - 0x239]
movzx eax, byte [ebp + eax - 0x5ec]
mov dword [ebp - 0x770], eax
mov al, byte [ebp - 0x239]
add al, 1
mov byte [ebp - 0x239], al
movzx eax, byte [ebp - 0x23a]
add eax, dword [ebp - 0x770]
mov byte [ebp - 0x23a], al
movzx eax, byte [ebp - 0x23a]
movzx ecx, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x23b]
movzx ecx, byte [ebp - 0x23a]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x239]
movzx ecx, byte [ebp - 0x23b]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x239]
mov cl, byte [ebp - 0x240]
mov byte [ebp + eax - 0x5ec], cl
movzx eax, byte [ebp - 0x240]
movzx eax, byte [ebp + eax - 0x5ec]
movzx ecx, byte [ebp - 0x241]
add ecx, eax
mov byte [ebp - 0x241], cl
movzx eax, byte [ebp - 0x242]
movzx ecx, byte [ebp - 0x23a]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x239]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
movzx ecx, byte [ebp - 0x23b]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x23c]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
movzx edx, byte [ebp - 0x241]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
mov byte [ebp - 0x23b], al
mov al, byte [ebp - 0x242]
mov byte [ebp - 0x23c], al
mov al, byte [ebp - 0x23b]
mov byte [ebp - 0x247], al
cmp dword [ebp - 0x24c], 0
jle 0x517c83
mov eax, dword [ebp - 0x24c]
mov cl, byte [ebp - 0x247]
mov byte [ebp + eax - 0x11], cl
mov eax, dword [ebp - 0x258]
inc eax
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x24c]
inc eax
mov dword [ebp - 0x4e8], eax
jmp 0x517cac
mov eax, dword [ebp - 0x4e8]
inc eax
mov dword [ebp - 0x4e8], eax
mov eax, dword [ebp - 0x4e8]
cmp eax, dword [ebp - 0x258]
jge 0x51825f
mov eax, dword [ebp - 0x24c]
inc eax
mov dword [ebp - 0x24c], eax
mov eax, dword [ebp - 0x24c]
shl eax, 1
mov dword [ebp - 0x274], eax
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x274]
movzx eax, byte [eax]
mov dword [ebp - 0x25c], eax
mov dword [ebp - 0x260], 0x37
mov eax, dword [ebp - 0x24c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x27c], eax
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x27c]
movzx eax, byte [eax]
mov dword [ebp - 0x264], eax
mov dword [ebp - 0x268], 0xd7
mov eax, dword [ebp - 0x25c]
sub eax, dword [ebp - 0x260]
mov dword [ebp - 0x26c], eax
mov eax, dword [ebp - 0x264]
sub eax, dword [ebp - 0x268]
mov dword [ebp - 0x270], eax
mov eax, dword [ebp - 0x26c]
shl eax, 4
mov dword [ebp - 0x280], eax
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0x284], eax
mov eax, dword [ebp - 0x280]
or eax, dword [ebp - 0x284]
mov dword [ebp - 0x288], eax
movsd xmm0, qword [0xaeef28]
movsd qword [ebp - 0x334], xmm0
movsd xmm0, qword [0xaecca8]
movsd qword [ebp - 0x358], xmm0
movsd xmm0, qword [0xaeaae0]
movsd qword [ebp - 0x3d0], xmm0
movsd xmm0, qword [0xae8778]
movsd qword [ebp - 0x364], xmm0
movsd xmm0, qword [0xae5090]
movsd qword [ebp - 0x2e0], xmm0
movsd xmm0, qword [ebp - 0x364]
mulsd xmm0, qword [ebp - 0x2e0]
movsd qword [ebp - 0x364], xmm0
movsd xmm0, qword [ebp - 0x364]
mulsd xmm0, qword [ebp - 0x2e0]
movsd qword [ebp - 0x364], xmm0
movsd xmm0, qword [ebp - 0x358]
mulsd xmm0, qword [ebp - 0x2e0]
movsd qword [ebp - 0x358], xmm0
movsd xmm0, qword [ebp - 0x358]
mulsd xmm0, qword [ebp - 0x2e0]
movsd qword [ebp - 0x358], xmm0
movsd xmm0, qword [ebp - 0x364]
mulsd xmm0, qword [ebp - 0x2e0]
movsd qword [ebp - 0x364], xmm0
movsd xmm0, qword [ebp - 0x364]
comisd xmm0, xmmword [ebp - 0x2e0]
jbe 0x517edf
movsd xmm0, qword [ebp - 0x364]
mulsd xmm0, qword [ebp - 0x2e0]
movsd qword [ebp - 0x364], xmm0
movsd xmm0, qword [ebp - 0x2e0]
subsd xmm0, qword [ebp - 0x334]
movsd qword [ebp - 0x2e0], xmm0
movsd xmm0, qword [ebp - 0x364]
addsd xmm0, qword [ebp - 0x2e0]
movsd qword [ebp - 0x364], xmm0
movsd xmm0, qword [ebp - 0x334]
addsd xmm0, qword [ebp - 0x358]
movsd qword [ebp - 0x334], xmm0
movsd xmm0, qword [ebp - 0x334]
subsd xmm0, qword [ebp - 0x358]
movsd qword [ebp - 0x334], xmm0
mov al, byte [ebp - 0x288]
mov byte [ebp - 0x242], al
jmp 0x5180d3
movsd xmm0, qword [ebp - 0x3d0]
mulsd xmm0, qword [ebp - 0x364]
movsd qword [ebp - 0x3d0], xmm0
movsd xmm0, qword [ebp - 0x358]
divsd xmm0, qword [ebp - 0x3d0]
movsd qword [ebp - 0x358], xmm0
movsd xmm0, qword [ebp - 0x2e0]
divsd xmm0, qword [ebp - 0x334]
movsd qword [ebp - 0x2e0], xmm0
movsd xmm0, qword [ebp - 0x334]
subsd xmm0, qword [ebp - 0x358]
movsd qword [ebp - 0x334], xmm0
movsd xmm0, qword [ebp - 0x2e0]
addsd xmm0, qword [ebp - 0x334]
movsd qword [ebp - 0x2e0], xmm0
movsd xmm0, qword [ebp - 0x358]
subsd xmm0, qword [ebp - 0x3d0]
movsd qword [ebp - 0x358], xmm0
movsd xmm0, qword [ebp - 0x3d0]
mulsd xmm0, qword [ebp - 0x364]
movsd qword [ebp - 0x3d0], xmm0
movsd xmm0, qword [ebp - 0x358]
addsd xmm0, qword [ebp - 0x3d0]
movsd qword [ebp - 0x358], xmm0
movsd xmm0, qword [ebp - 0x2e0]
divsd xmm0, qword [ebp - 0x334]
movsd qword [ebp - 0x2e0], xmm0
movsd xmm0, qword [ebp - 0x2e0]
addsd xmm0, qword [ebp - 0x334]
movsd qword [ebp - 0x2e0], xmm0
movsd xmm0, qword [ebp - 0x334]
comisd xmm0, xmmword [ebp - 0x364]
jbe 0x51805b
movsd xmm0, qword [ebp - 0x2e0]
subsd xmm0, qword [ebp - 0x334]
movsd qword [ebp - 0x2e0], xmm0
movsd xmm0, qword [ebp - 0x3d0]
addsd xmm0, qword [ebp - 0x364]
movsd qword [ebp - 0x3d0], xmm0
movsd xmm0, qword [ebp - 0x334]
addsd xmm0, qword [ebp - 0x358]
movsd qword [ebp - 0x334], xmm0
movsd xmm0, qword [ebp - 0x2e0]
addsd xmm0, qword [ebp - 0x334]
movsd qword [ebp - 0x2e0], xmm0
movsd xmm0, qword [ebp - 0x358]
subsd xmm0, qword [ebp - 0x3d0]
movsd qword [ebp - 0x358], xmm0
jmp 0x5180d3
movsd xmm0, qword [ebp - 0x2e0]
mulsd xmm0, qword [ebp - 0x358]
movsd qword [ebp - 0x2e0], xmm0
movsd xmm0, qword [ebp - 0x334]
divsd xmm0, qword [ebp - 0x3d0]
movsd qword [ebp - 0x334], xmm0
movsd xmm0, qword [ebp - 0x2e0]
divsd xmm0, qword [ebp - 0x358]
movsd qword [ebp - 0x2e0], xmm0
movsd xmm0, qword [ebp - 0x364]
subsd xmm0, qword [ebp - 0x334]
movsd qword [ebp - 0x364], xmm0
movsd xmm0, qword [ebp - 0x3d0]
mulsd xmm0, qword [ebp - 0x2e0]
movsd qword [ebp - 0x3d0], xmm0
movzx eax, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp - 0x240], al
movzx eax, byte [ebp - 0x239]
movzx eax, byte [ebp + eax - 0x5ec]
mov dword [ebp - 0x76c], eax
mov al, byte [ebp - 0x239]
add al, 1
mov byte [ebp - 0x239], al
movzx eax, byte [ebp - 0x23a]
add eax, dword [ebp - 0x76c]
mov byte [ebp - 0x23a], al
movzx eax, byte [ebp - 0x23a]
movzx ecx, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x23b]
movzx ecx, byte [ebp - 0x23a]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x239]
movzx ecx, byte [ebp - 0x23b]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x239]
mov cl, byte [ebp - 0x240]
mov byte [ebp + eax - 0x5ec], cl
movzx eax, byte [ebp - 0x240]
movzx eax, byte [ebp + eax - 0x5ec]
movzx ecx, byte [ebp - 0x241]
add ecx, eax
mov byte [ebp - 0x241], cl
movzx eax, byte [ebp - 0x242]
movzx ecx, byte [ebp - 0x23a]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x239]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
movzx ecx, byte [ebp - 0x23b]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x23c]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
movzx edx, byte [ebp - 0x241]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
mov byte [ebp - 0x23b], al
mov al, byte [ebp - 0x242]
mov byte [ebp - 0x23c], al
mov al, byte [ebp - 0x23b]
mov byte [ebp - 0x247], al
cmp dword [ebp - 0x24c], 0
jle 0x51825a
mov eax, dword [ebp - 0x24c]
mov cl, byte [ebp - 0x247]
mov byte [ebp + eax - 0x11], cl
jmp 0x517c9f
mov eax, dword [ebp - 0x258]
inc eax
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x24c]
inc eax
mov dword [ebp - 0x24c], eax
mov eax, dword [ebp - 0x258]
inc eax
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x24c]
shl eax, 1
mov dword [ebp - 0x274], eax
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x274]
movzx eax, byte [eax]
mov dword [ebp - 0x25c], eax
mov dword [ebp - 0x260], 0x37
mov eax, dword [ebp - 0x24c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x27c], eax
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x27c]
movzx eax, byte [eax]
mov dword [ebp - 0x264], eax
mov dword [ebp - 0x268], 0xd7
mov eax, dword [ebp - 0x25c]
sub eax, dword [ebp - 0x260]
mov dword [ebp - 0x26c], eax
mov eax, dword [ebp - 0x264]
sub eax, dword [ebp - 0x268]
mov dword [ebp - 0x270], eax
mov eax, dword [ebp - 0x26c]
shl eax, 4
mov dword [ebp - 0x280], eax
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0x284], eax
mov eax, dword [ebp - 0x280]
or eax, dword [ebp - 0x284]
mov dword [ebp - 0x288], eax
mov al, byte [ebp - 0x288]
mov byte [ebp - 0x242], al
movzx eax, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp - 0x240], al
movzx eax, byte [ebp - 0x239]
movzx eax, byte [ebp + eax - 0x5ec]
mov dword [ebp - 0x768], eax
mov al, byte [ebp - 0x239]
add al, 1
mov byte [ebp - 0x239], al
movzx eax, byte [ebp - 0x23a]
add eax, dword [ebp - 0x768]
mov byte [ebp - 0x23a], al
movzx eax, byte [ebp - 0x23a]
movzx ecx, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x23b]
movzx ecx, byte [ebp - 0x23a]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x239]
movzx ecx, byte [ebp - 0x23b]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x239]
mov cl, byte [ebp - 0x240]
mov byte [ebp + eax - 0x5ec], cl
movzx eax, byte [ebp - 0x240]
movzx eax, byte [ebp + eax - 0x5ec]
movzx ecx, byte [ebp - 0x241]
add ecx, eax
mov byte [ebp - 0x241], cl
movzx eax, byte [ebp - 0x242]
movzx ecx, byte [ebp - 0x23a]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x239]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
movzx ecx, byte [ebp - 0x23b]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x23c]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
movzx edx, byte [ebp - 0x241]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
mov byte [ebp - 0x23b], al
mov al, byte [ebp - 0x242]
mov byte [ebp - 0x23c], al
mov al, byte [ebp - 0x23b]
mov byte [ebp - 0x247], al
cmp dword [ebp - 0x24c], 0
jle 0x5184c6
mov eax, dword [ebp - 0x24c]
mov cl, byte [ebp - 0x247]
mov byte [ebp + eax - 0x11], cl
mov eax, dword [ebp - 0x24c]
inc eax
mov dword [ebp - 0x24c], eax
mov eax, dword [ebp - 0x258]
inc eax
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x24c]
shl eax, 1
mov dword [ebp - 0x274], eax
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x274]
movzx eax, byte [eax]
mov dword [ebp - 0x25c], eax
mov dword [ebp - 0x260], 0x37
mov eax, dword [ebp - 0x24c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x27c], eax
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x27c]
movzx eax, byte [eax]
mov dword [ebp - 0x264], eax
mov dword [ebp - 0x268], 0xd7
mov eax, dword [ebp - 0x25c]
sub eax, dword [ebp - 0x260]
mov dword [ebp - 0x26c], eax
mov eax, dword [ebp - 0x264]
sub eax, dword [ebp - 0x268]
mov dword [ebp - 0x270], eax
mov eax, dword [ebp - 0x26c]
shl eax, 4
mov dword [ebp - 0x280], eax
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0x284], eax
mov eax, dword [ebp - 0x280]
or eax, dword [ebp - 0x284]
mov dword [ebp - 0x288], eax
mov al, byte [ebp - 0x288]
mov byte [ebp - 0x242], al
movzx eax, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp - 0x240], al
movzx eax, byte [ebp - 0x239]
movzx eax, byte [ebp + eax - 0x5ec]
mov dword [ebp - 0x764], eax
mov al, byte [ebp - 0x239]
add al, 1
mov byte [ebp - 0x239], al
movzx eax, byte [ebp - 0x23a]
add eax, dword [ebp - 0x764]
mov byte [ebp - 0x23a], al
movzx eax, byte [ebp - 0x23a]
movzx ecx, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x23b]
movzx ecx, byte [ebp - 0x23a]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x239]
movzx ecx, byte [ebp - 0x23b]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x239]
mov cl, byte [ebp - 0x240]
mov byte [ebp + eax - 0x5ec], cl
movzx eax, byte [ebp - 0x240]
movzx eax, byte [ebp + eax - 0x5ec]
movzx ecx, byte [ebp - 0x241]
add ecx, eax
mov byte [ebp - 0x241], cl
movzx eax, byte [ebp - 0x242]
movzx ecx, byte [ebp - 0x23a]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x239]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
movzx ecx, byte [ebp - 0x23b]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x23c]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
movzx edx, byte [ebp - 0x241]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
mov byte [ebp - 0x23b], al
mov al, byte [ebp - 0x242]
mov byte [ebp - 0x23c], al
mov al, byte [ebp - 0x23b]
mov byte [ebp - 0x247], al
cmp dword [ebp - 0x24c], 0
jle 0x518720
mov eax, dword [ebp - 0x24c]
mov cl, byte [ebp - 0x247]
mov byte [ebp + eax - 0x11], cl
mov eax, dword [ebp - 0x24c]
inc eax
mov dword [ebp - 0x24c], eax
mov eax, dword [ebp - 0x258]
inc eax
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x24c]
shl eax, 1
mov dword [ebp - 0x274], eax
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x274]
movzx eax, byte [eax]
mov dword [ebp - 0x25c], eax
mov dword [ebp - 0x260], 0x37
mov eax, dword [ebp - 0x24c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x27c], eax
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x27c]
movzx eax, byte [eax]
mov dword [ebp - 0x264], eax
mov dword [ebp - 0x268], 0xd7
mov eax, dword [ebp - 0x25c]
sub eax, dword [ebp - 0x260]
mov dword [ebp - 0x26c], eax
mov eax, dword [ebp - 0x264]
sub eax, dword [ebp - 0x268]
mov dword [ebp - 0x270], eax
mov eax, dword [ebp - 0x26c]
shl eax, 4
mov dword [ebp - 0x280], eax
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0x284], eax
mov eax, dword [ebp - 0x280]
or eax, dword [ebp - 0x284]
mov dword [ebp - 0x288], eax
mov al, byte [ebp - 0x288]
mov byte [ebp - 0x242], al
movzx eax, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp - 0x240], al
movzx eax, byte [ebp - 0x239]
movzx eax, byte [ebp + eax - 0x5ec]
mov dword [ebp - 0x760], eax
mov al, byte [ebp - 0x239]
add al, 1
mov byte [ebp - 0x239], al
movzx eax, byte [ebp - 0x23a]
add eax, dword [ebp - 0x760]
mov byte [ebp - 0x23a], al
movzx eax, byte [ebp - 0x23a]
movzx ecx, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x23b]
movzx ecx, byte [ebp - 0x23a]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x239]
movzx ecx, byte [ebp - 0x23b]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x239]
mov cl, byte [ebp - 0x240]
mov byte [ebp + eax - 0x5ec], cl
movzx eax, byte [ebp - 0x240]
movzx eax, byte [ebp + eax - 0x5ec]
movzx ecx, byte [ebp - 0x241]
add ecx, eax
mov byte [ebp - 0x241], cl
movzx eax, byte [ebp - 0x242]
movzx ecx, byte [ebp - 0x23a]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x239]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
movzx ecx, byte [ebp - 0x23b]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x23c]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
movzx edx, byte [ebp - 0x241]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
mov byte [ebp - 0x23b], al
mov al, byte [ebp - 0x242]
mov byte [ebp - 0x23c], al
mov al, byte [ebp - 0x23b]
mov byte [ebp - 0x247], al
cmp dword [ebp - 0x24c], 0
jle 0x51897a
mov eax, dword [ebp - 0x24c]
mov cl, byte [ebp - 0x247]
mov byte [ebp + eax - 0x11], cl
mov eax, dword [ebp - 0x258]
inc eax
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x24c]
inc eax
mov dword [ebp - 0x4e4], eax
jmp 0x5189a3
mov eax, dword [ebp - 0x4e4]
inc eax
mov dword [ebp - 0x4e4], eax
mov eax, dword [ebp - 0x4e4]
cmp eax, dword [ebp - 0x258]
jge 0x518c07
mov eax, dword [ebp - 0x24c]
inc eax
mov dword [ebp - 0x24c], eax
mov eax, dword [ebp - 0x24c]
shl eax, 1
mov dword [ebp - 0x274], eax
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x274]
movzx eax, byte [eax]
mov dword [ebp - 0x25c], eax
mov dword [ebp - 0x260], 0x37
mov eax, dword [ebp - 0x24c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x27c], eax
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x27c]
movzx eax, byte [eax]
mov dword [ebp - 0x264], eax
mov dword [ebp - 0x268], 0xd7
mov eax, dword [ebp - 0x25c]
sub eax, dword [ebp - 0x260]
mov dword [ebp - 0x26c], eax
mov eax, dword [ebp - 0x264]
sub eax, dword [ebp - 0x268]
mov dword [ebp - 0x270], eax
mov eax, dword [ebp - 0x26c]
shl eax, 4
mov dword [ebp - 0x280], eax
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0x284], eax
mov eax, dword [ebp - 0x280]
or eax, dword [ebp - 0x284]
mov dword [ebp - 0x288], eax
mov al, byte [ebp - 0x288]
mov byte [ebp - 0x242], al
movzx eax, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp - 0x240], al
movzx eax, byte [ebp - 0x239]
movzx eax, byte [ebp + eax - 0x5ec]
mov dword [ebp - 0x75c], eax
mov al, byte [ebp - 0x239]
add al, 1
mov byte [ebp - 0x239], al
movzx eax, byte [ebp - 0x23a]
add eax, dword [ebp - 0x75c]
mov byte [ebp - 0x23a], al
movzx eax, byte [ebp - 0x23a]
movzx ecx, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x23b]
movzx ecx, byte [ebp - 0x23a]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x239]
movzx ecx, byte [ebp - 0x23b]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x239]
mov cl, byte [ebp - 0x240]
mov byte [ebp + eax - 0x5ec], cl
movzx eax, byte [ebp - 0x240]
movzx eax, byte [ebp + eax - 0x5ec]
movzx ecx, byte [ebp - 0x241]
add ecx, eax
mov byte [ebp - 0x241], cl
movzx eax, byte [ebp - 0x242]
movzx ecx, byte [ebp - 0x23a]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x239]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
movzx ecx, byte [ebp - 0x23b]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x23c]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
movzx edx, byte [ebp - 0x241]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
mov byte [ebp - 0x23b], al
mov al, byte [ebp - 0x242]
mov byte [ebp - 0x23c], al
mov al, byte [ebp - 0x23b]
mov byte [ebp - 0x247], al
cmp dword [ebp - 0x24c], 0
jle 0x518c02
mov eax, dword [ebp - 0x24c]
mov cl, byte [ebp - 0x247]
mov byte [ebp + eax - 0x11], cl
jmp 0x518996
mov eax, dword [ebp - 0x258]
inc eax
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x24c]
inc eax
mov dword [ebp - 0x24c], eax
mov eax, dword [ebp - 0x258]
inc eax
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x24c]
shl eax, 1
mov dword [ebp - 0x274], eax
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x274]
movzx eax, byte [eax]
mov dword [ebp - 0x25c], eax
mov dword [ebp - 0x260], 0x37
mov eax, dword [ebp - 0x24c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x27c], eax
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x27c]
movzx eax, byte [eax]
mov dword [ebp - 0x264], eax
mov dword [ebp - 0x268], 0xd7
mov eax, dword [ebp - 0x25c]
sub eax, dword [ebp - 0x260]
mov dword [ebp - 0x26c], eax
mov eax, dword [ebp - 0x264]
sub eax, dword [ebp - 0x268]
mov dword [ebp - 0x270], eax
mov eax, dword [ebp - 0x26c]
shl eax, 4
mov dword [ebp - 0x280], eax
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0x284], eax
mov eax, dword [ebp - 0x280]
or eax, dword [ebp - 0x284]
mov dword [ebp - 0x288], eax
mov al, byte [ebp - 0x288]
mov byte [ebp - 0x242], al
movzx eax, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp - 0x240], al
movzx eax, byte [ebp - 0x239]
movzx eax, byte [ebp + eax - 0x5ec]
mov dword [ebp - 0x758], eax
mov al, byte [ebp - 0x239]
add al, 1
mov byte [ebp - 0x239], al
movzx eax, byte [ebp - 0x23a]
add eax, dword [ebp - 0x758]
mov byte [ebp - 0x23a], al
movzx eax, byte [ebp - 0x23a]
movzx ecx, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x23b]
movzx ecx, byte [ebp - 0x23a]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x239]
movzx ecx, byte [ebp - 0x23b]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x239]
mov cl, byte [ebp - 0x240]
mov byte [ebp + eax - 0x5ec], cl
movss xmm0, dword [0xaf92ac]
movss dword [ebp - 0x33c], xmm0
movss xmm0, dword [0xaf7920]
movss dword [ebp - 0x2d4], xmm0
movss xmm0, dword [0xaf4e34]
movss dword [ebp - 0x390], xmm0
movss xmm0, dword [ebp - 0x33c]
mulss xmm0, dword [ebp - 0x390]
movss dword [ebp - 0x33c], xmm0
movss xmm0, dword [ebp - 0x2d4]
subss xmm0, dword [ebp - 0x390]
movss dword [ebp - 0x2d4], xmm0
movss xmm0, dword [ebp - 0x33c]
mulss xmm0, dword [ebp - 0x390]
movss dword [ebp - 0x33c], xmm0
movss xmm0, dword [ebp - 0x2d4]
comiss xmm0, dword [ebp - 0x33c]
jbe 0x518e6c
movss xmm0, dword [ebp - 0x2d4]
addss xmm0, dword [ebp - 0x33c]
movss dword [ebp - 0x2d4], xmm0
movss xmm0, dword [ebp - 0x2d4]
addss xmm0, dword [ebp - 0x33c]
movss dword [ebp - 0x2d4], xmm0
movss xmm0, dword [ebp - 0x390]
subss xmm0, dword [ebp - 0x2d4]
movss dword [ebp - 0x390], xmm0
jmp 0x518ed2
movss xmm0, dword [ebp - 0x2d4]
subss xmm0, dword [ebp - 0x33c]
movss dword [ebp - 0x2d4], xmm0
movss xmm0, dword [ebp - 0x390]
mulss xmm0, dword [ebp - 0x2d4]
movss dword [ebp - 0x390], xmm0
movss xmm0, dword [ebp - 0x2d4]
addss xmm0, dword [ebp - 0x33c]
movss dword [ebp - 0x2d4], xmm0
movzx eax, byte [ebp - 0x240]
movzx eax, byte [ebp + eax - 0x5ec]
movzx ecx, byte [ebp - 0x241]
add ecx, eax
mov byte [ebp - 0x241], cl
movzx eax, byte [ebp - 0x242]
movzx ecx, byte [ebp - 0x23a]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x239]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
movzx ecx, byte [ebp - 0x23b]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x23c]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
movzx edx, byte [ebp - 0x241]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
mov byte [ebp - 0x23b], al
mov al, byte [ebp - 0x242]
mov byte [ebp - 0x23c], al
mov al, byte [ebp - 0x23b]
mov byte [ebp - 0x247], al
cmp dword [ebp - 0x24c], 0
jle 0x518f89
mov eax, dword [ebp - 0x24c]
mov cl, byte [ebp - 0x247]
mov byte [ebp + eax - 0x11], cl
mov eax, dword [ebp - 0x24c]
inc eax
mov dword [ebp - 0x24c], eax
mov eax, dword [ebp - 0x258]
inc eax
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x24c]
shl eax, 1
mov dword [ebp - 0x274], eax
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x274]
movzx eax, byte [eax]
mov dword [ebp - 0x25c], eax
mov dword [ebp - 0x260], 0x37
mov eax, dword [ebp - 0x24c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x27c], eax
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x27c]
movzx eax, byte [eax]
mov dword [ebp - 0x264], eax
mov dword [ebp - 0x268], 0xd7
mov eax, dword [ebp - 0x25c]
sub eax, dword [ebp - 0x260]
mov dword [ebp - 0x26c], eax
mov eax, dword [ebp - 0x264]
sub eax, dword [ebp - 0x268]
mov dword [ebp - 0x270], eax
mov eax, dword [ebp - 0x26c]
shl eax, 4
mov dword [ebp - 0x280], eax
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0x284], eax
mov eax, dword [ebp - 0x280]
or eax, dword [ebp - 0x284]
mov dword [ebp - 0x288], eax
mov al, byte [ebp - 0x288]
mov byte [ebp - 0x242], al
movzx eax, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp - 0x240], al
movzx eax, byte [ebp - 0x239]
movzx eax, byte [ebp + eax - 0x5ec]
mov dword [ebp - 0x754], eax
mov al, byte [ebp - 0x239]
add al, 1
mov byte [ebp - 0x239], al
movzx eax, byte [ebp - 0x23a]
add eax, dword [ebp - 0x754]
mov byte [ebp - 0x23a], al
movzx eax, byte [ebp - 0x23a]
movzx ecx, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x23b]
movzx ecx, byte [ebp - 0x23a]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x239]
movzx ecx, byte [ebp - 0x23b]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x239]
mov cl, byte [ebp - 0x240]
mov byte [ebp + eax - 0x5ec], cl
movzx eax, byte [ebp - 0x240]
movzx eax, byte [ebp + eax - 0x5ec]
movzx ecx, byte [ebp - 0x241]
add ecx, eax
mov byte [ebp - 0x241], cl
movzx eax, byte [ebp - 0x242]
movzx ecx, byte [ebp - 0x23a]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x239]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
movzx ecx, byte [ebp - 0x23b]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x23c]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
movzx edx, byte [ebp - 0x241]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
mov byte [ebp - 0x23b], al
mov al, byte [ebp - 0x242]
mov byte [ebp - 0x23c], al
mov al, byte [ebp - 0x23b]
mov byte [ebp - 0x247], al
cmp dword [ebp - 0x24c], 0
jle 0x5191e3
mov eax, dword [ebp - 0x24c]
mov cl, byte [ebp - 0x247]
mov byte [ebp + eax - 0x11], cl
mov eax, dword [ebp - 0x24c]
inc eax
mov dword [ebp - 0x24c], eax
mov eax, dword [ebp - 0x258]
inc eax
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x24c]
shl eax, 1
mov dword [ebp - 0x274], eax
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x274]
movzx eax, byte [eax]
mov dword [ebp - 0x25c], eax
mov dword [ebp - 0x260], 0x37
mov eax, dword [ebp - 0x24c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x27c], eax
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x27c]
movzx eax, byte [eax]
mov dword [ebp - 0x264], eax
mov dword [ebp - 0x268], 0xd7
mov eax, dword [ebp - 0x25c]
sub eax, dword [ebp - 0x260]
mov dword [ebp - 0x26c], eax
mov eax, dword [ebp - 0x264]
sub eax, dword [ebp - 0x268]
mov dword [ebp - 0x270], eax
mov eax, dword [ebp - 0x26c]
shl eax, 4
mov dword [ebp - 0x280], eax
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0x284], eax
mov eax, dword [ebp - 0x280]
or eax, dword [ebp - 0x284]
mov dword [ebp - 0x288], eax
mov al, byte [ebp - 0x288]
mov byte [ebp - 0x242], al
movzx eax, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp - 0x240], al
movzx eax, byte [ebp - 0x239]
movzx eax, byte [ebp + eax - 0x5ec]
mov dword [ebp - 0x750], eax
mov al, byte [ebp - 0x239]
add al, 1
mov byte [ebp - 0x239], al
movzx eax, byte [ebp - 0x23a]
add eax, dword [ebp - 0x750]
mov byte [ebp - 0x23a], al
movzx eax, byte [ebp - 0x23a]
movzx ecx, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x23b]
movzx ecx, byte [ebp - 0x23a]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x239]
movzx ecx, byte [ebp - 0x23b]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x239]
mov cl, byte [ebp - 0x240]
mov byte [ebp + eax - 0x5ec], cl
movzx eax, byte [ebp - 0x240]
movzx eax, byte [ebp + eax - 0x5ec]
movzx ecx, byte [ebp - 0x241]
add ecx, eax
mov byte [ebp - 0x241], cl
movzx eax, byte [ebp - 0x242]
movzx ecx, byte [ebp - 0x23a]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x239]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
movzx ecx, byte [ebp - 0x23b]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x23c]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
movzx edx, byte [ebp - 0x241]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
mov byte [ebp - 0x23b], al
mov al, byte [ebp - 0x242]
mov byte [ebp - 0x23c], al
mov al, byte [ebp - 0x23b]
mov byte [ebp - 0x247], al
cmp dword [ebp - 0x24c], 0
jle 0x51943d
mov eax, dword [ebp - 0x24c]
mov cl, byte [ebp - 0x247]
mov byte [ebp + eax - 0x11], cl
movsd xmm0, qword [0xaf2920]
movsd qword [ebp - 0x36c], xmm0
movsd xmm0, qword [0xaefa08]
movsd qword [ebp - 0x350], xmm0
movsd xmm0, qword [0xaea018]
movsd qword [ebp - 0x2fc], xmm0
movsd xmm0, qword [ebp - 0x350]
addsd xmm0, qword [ebp - 0x2fc]
movsd qword [ebp - 0x350], xmm0
movsd xmm0, qword [ebp - 0x350]
subsd xmm0, qword [ebp - 0x2fc]
movsd qword [ebp - 0x350], xmm0
movsd xmm0, qword [ebp - 0x350]
subsd xmm0, qword [ebp - 0x2fc]
movsd qword [ebp - 0x350], xmm0
movsd xmm0, qword [ebp - 0x36c]
comisd xmm0, xmmword [ebp - 0x350]
jbe 0x519521
movsd xmm0, qword [ebp - 0x36c]
addsd xmm0, qword [ebp - 0x2fc]
movsd qword [ebp - 0x36c], xmm0
movsd xmm0, qword [ebp - 0x36c]
subsd xmm0, qword [ebp - 0x2fc]
movsd qword [ebp - 0x36c], xmm0
movsd xmm0, qword [ebp - 0x2fc]
addsd xmm0, qword [ebp - 0x350]
movsd qword [ebp - 0x2fc], xmm0
mov eax, dword [ebp - 0x24c]
inc eax
mov dword [ebp - 0x24c], eax
jmp 0x519655
movsd xmm0, qword [ebp - 0x2fc]
divsd xmm0, qword [ebp - 0x36c]
movsd qword [ebp - 0x2fc], xmm0
movsd xmm0, qword [ebp - 0x2fc]
divsd xmm0, qword [ebp - 0x36c]
movsd qword [ebp - 0x2fc], xmm0
movsd xmm0, qword [ebp - 0x36c]
divsd xmm0, qword [ebp - 0x350]
movsd qword [ebp - 0x36c], xmm0
movsd xmm0, qword [ebp - 0x2fc]
mulsd xmm0, qword [ebp - 0x350]
movsd qword [ebp - 0x2fc], xmm0
movsd xmm0, qword [ebp - 0x2fc]
subsd xmm0, qword [ebp - 0x350]
movsd qword [ebp - 0x2fc], xmm0
movsd xmm0, qword [ebp - 0x36c]
addsd xmm0, qword [ebp - 0x2fc]
movsd qword [ebp - 0x36c], xmm0
movsd xmm0, qword [ebp - 0x2fc]
comisd xmm0, xmmword [ebp - 0x350]
jbe 0x51960d
movsd xmm0, qword [ebp - 0x2fc]
subsd xmm0, qword [ebp - 0x350]
movsd qword [ebp - 0x2fc], xmm0
movsd xmm0, qword [ebp - 0x36c]
mulsd xmm0, qword [ebp - 0x2fc]
movsd qword [ebp - 0x36c], xmm0
movsd xmm0, qword [ebp - 0x36c]
subsd xmm0, qword [ebp - 0x2fc]
movsd qword [ebp - 0x36c], xmm0
jmp 0x519655
movsd xmm0, qword [ebp - 0x350]
subsd xmm0, qword [ebp - 0x36c]
movsd qword [ebp - 0x350], xmm0
movsd xmm0, qword [ebp - 0x350]
addsd xmm0, qword [ebp - 0x36c]
movsd qword [ebp - 0x350], xmm0
movsd xmm0, qword [ebp - 0x2fc]
addsd xmm0, qword [ebp - 0x350]
movsd qword [ebp - 0x2fc], xmm0
movsd xmm0, qword [0xaef638]
movsd qword [ebp - 0x3c8], xmm0
movsd xmm0, qword [0xaed8f0]
movsd qword [ebp - 0x3d8], xmm0
movsd xmm0, qword [0xaebb70]
movsd qword [ebp - 0x614], xmm0
movsd xmm0, qword [0xae9db0]
movsd qword [ebp - 0x46c], xmm0
movsd xmm0, qword [0xae79b0]
movsd qword [ebp - 0x61c], xmm0
movsd xmm0, qword [0xae4bc8]
movsd qword [ebp - 0x3e0], xmm0
movsd xmm0, qword [ebp - 0x3c8]
addsd xmm0, qword [ebp - 0x3e0]
movsd qword [ebp - 0x3c8], xmm0
movsd xmm0, qword [ebp - 0x3d8]
subsd xmm0, qword [ebp - 0x3e0]
movsd qword [ebp - 0x3d8], xmm0
movsd xmm0, qword [ebp - 0x3c8]
subsd xmm0, qword [ebp - 0x3e0]
movsd qword [ebp - 0x3c8], xmm0
movsd xmm0, qword [ebp - 0x3c8]
addsd xmm0, qword [ebp - 0x3e0]
movsd qword [ebp - 0x3c8], xmm0
movsd xmm0, qword [ebp - 0x46c]
addsd xmm0, qword [ebp - 0x3e0]
movsd qword [ebp - 0x46c], xmm0
movsd xmm0, qword [ebp - 0x3d8]
addsd xmm0, qword [ebp - 0x3e0]
movsd qword [ebp - 0x3d8], xmm0
movsd xmm0, qword [ebp - 0x3e0]
comisd xmm0, xmmword [ebp - 0x3c8]
jbe 0x5197f0
movsd xmm0, qword [ebp - 0x46c]
divsd xmm0, qword [ebp - 0x61c]
movsd qword [ebp - 0x46c], xmm0
movsd xmm0, qword [ebp - 0x3d8]
divsd xmm0, qword [ebp - 0x614]
movsd qword [ebp - 0x3d8], xmm0
movsd xmm0, qword [ebp - 0x3d8]
subsd xmm0, qword [ebp - 0x614]
movsd qword [ebp - 0x3d8], xmm0
movsd xmm0, qword [ebp - 0x3e0]
divsd xmm0, qword [ebp - 0x3c8]
movsd qword [ebp - 0x3e0], xmm0
movsd xmm0, qword [ebp - 0x3c8]
addsd xmm0, qword [ebp - 0x3d8]
movsd qword [ebp - 0x3c8], xmm0
movsd xmm0, qword [ebp - 0x61c]
mulsd xmm0, qword [ebp - 0x3e0]
movsd qword [ebp - 0x61c], xmm0
jmp 0x51988d
movsd xmm0, qword [ebp - 0x3d8]
subsd xmm0, qword [ebp - 0x614]
movsd qword [ebp - 0x3d8], xmm0
movsd xmm0, qword [ebp - 0x3e0]
addsd xmm0, qword [ebp - 0x3c8]
movsd qword [ebp - 0x3e0], xmm0
movsd xmm0, qword [ebp - 0x46c]
addsd xmm0, qword [ebp - 0x61c]
movsd qword [ebp - 0x46c], xmm0
movsd xmm0, qword [ebp - 0x3c8]
subsd xmm0, qword [ebp - 0x3d8]
movsd qword [ebp - 0x3c8], xmm0
movsd xmm0, qword [ebp - 0x614]
addsd xmm0, qword [ebp - 0x46c]
movsd qword [ebp - 0x614], xmm0
movsd xmm0, qword [ebp - 0x46c]
addsd xmm0, qword [ebp - 0x61c]
movsd qword [ebp - 0x46c], xmm0
mov eax, dword [ebp - 0x258]
inc eax
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x24c]
shl eax, 1
mov dword [ebp - 0x274], eax
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x274]
movzx eax, byte [eax]
mov dword [ebp - 0x25c], eax
mov dword [ebp - 0x260], 0x37
mov eax, dword [ebp - 0x24c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x27c], eax
mov eax, dword [ebp - 0x278]
add eax, dword [ebp - 0x27c]
movzx eax, byte [eax]
mov dword [ebp - 0x264], eax
mov dword [ebp - 0x268], 0xd7
mov eax, dword [ebp - 0x25c]
sub eax, dword [ebp - 0x260]
mov dword [ebp - 0x26c], eax
mov eax, dword [ebp - 0x264]
sub eax, dword [ebp - 0x268]
mov dword [ebp - 0x270], eax
mov eax, dword [ebp - 0x26c]
shl eax, 4
mov dword [ebp - 0x280], eax
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0x284], eax
mov eax, dword [ebp - 0x280]
or eax, dword [ebp - 0x284]
mov dword [ebp - 0x288], eax
mov al, byte [ebp - 0x288]
mov byte [ebp - 0x242], al
movzx eax, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp - 0x240], al
movzx eax, byte [ebp - 0x239]
movzx eax, byte [ebp + eax - 0x5ec]
mov dword [ebp - 0x74c], eax
mov al, byte [ebp - 0x239]
add al, 1
mov byte [ebp - 0x239], al
movzx eax, byte [ebp - 0x23a]
add eax, dword [ebp - 0x74c]
mov byte [ebp - 0x23a], al
movzx eax, byte [ebp - 0x23a]
movzx ecx, byte [ebp - 0x23c]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x23b]
movzx ecx, byte [ebp - 0x23a]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x239]
movzx ecx, byte [ebp - 0x23b]
mov al, byte [ebp + eax - 0x5ec]
mov byte [ebp + ecx - 0x5ec], al
movzx eax, byte [ebp - 0x239]
mov cl, byte [ebp - 0x240]
mov byte [ebp + eax - 0x5ec], cl
movzx eax, byte [ebp - 0x240]
movzx eax, byte [ebp + eax - 0x5ec]
movzx ecx, byte [ebp - 0x241]
add ecx, eax
mov byte [ebp - 0x241], cl
movzx eax, byte [ebp - 0x242]
movzx ecx, byte [ebp - 0x23a]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x239]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
movzx ecx, byte [ebp - 0x23b]
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx edx, byte [ebp - 0x23c]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
movzx edx, byte [ebp - 0x241]
movzx edx, byte [ebp + edx - 0x5ec]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5ec]
movzx ecx, byte [ebp + ecx - 0x5ec]
xor eax, ecx
mov byte [ebp - 0x23b], al
mov al, byte [ebp - 0x242]
mov byte [ebp - 0x23c], al
mov al, byte [ebp - 0x23b]
mov byte [ebp - 0x247], al
cmp dword [ebp - 0x24c], 0
jle 0x519acd
mov eax, dword [ebp - 0x24c]
mov cl, byte [ebp - 0x247]
mov byte [ebp + eax - 0x11], cl
xor eax, eax
inc eax
imul eax, eax, 0xb
mov dword [ebp - 0x5f8], eax
cmp dword [ebp - 0x5f8], 0xc
jae 0x519ae4
jmp 0x519ae9
call fcn.00a9b8a9
mov eax, dword [ebp - 0x5f8]
mov byte [ebp + eax - 0x10], 0
jmp 0x519b3e
and dword [ebp - 0x480], 0
jmp 0x519b0c
mov eax, dword [ebp - 0x480]
inc eax
mov dword [ebp - 0x480], eax
cmp dword [ebp - 0x480], 0xc
jge 0x519b3e
mov eax, dword [ebp - 0x480]
mov dword [ebp - 0x5fc], eax
cmp dword [ebp - 0x5fc], 0xc
jae 0x519b2c
jmp 0x519b31
call fcn.00a9b8a9
mov eax, dword [ebp - 0x5fc]
mov byte [ebp + eax - 0x10], 0
jmp 0x519aff
mov eax, dword [ebp - 0x4ac]
mov eax, dword [eax + 0x44]
mov dword [ebp - 0x784], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x784]
call fcn.0044f4dc
mov dword [ebp - 0x748], eax
mov eax, dword [ebp - 0x748]
mov dword [ebp - 0x744], eax
push 0
push 0x80
push 3
push 0
push 1
push 0xa0000000
lea eax, [ebp - 0x224]
push eax
call dword [ebp - 0x744]
mov dword [ebp - 0x474], eax
cmp dword [ebp - 0x474], 0xffffffff
je 0x51c4d8
push 0
push dword [ebp - 0x474]
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [ebp - 0x4b4], eax
and dword [ebp - 0x228], 0
push dword [ebp - 0x4b4]
call fcn.00a9b6b7
pop ecx
mov dword [ebp - 0x740], eax
mov eax, dword [ebp - 0x740]
mov dword [ebp - 0x2f0], eax
and dword [ebp - 0x230], 0
and dword [ebp - 0x234], 0
xorps xmm0, xmm0
movsd qword [ebp - 0x430], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x418], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x418], xmm0
jmp 0x519c22
movsd xmm0, qword [ebp - 0x418]
addsd xmm0, qword [0xae0ff0]
movsd qword [ebp - 0x418], xmm0
movsd xmm0, qword [0xae87d8]
comisd xmm0, xmmword [ebp - 0x418]
jbe 0x519cd3
movsd xmm0, qword [0xae38f8]
mulsd xmm0, qword [ebp - 0x418]
mulsd xmm0, qword [ebp - 0x418]
movsd xmm1, qword [ebp - 0x418]
mulsd xmm1, qword [ebp - 0x418]
subsd xmm0, xmm1
movsd xmm1, qword [0xae10c8]
mulsd xmm1, qword [ebp - 0x418]
mulsd xmm1, qword [ebp - 0x418]
addsd xmm1, qword [0xae15d0]
divsd xmm0, xmm1
addsd xmm0, qword [ebp - 0x430]
movsd qword [ebp - 0x430], xmm0
movsd xmm0, qword [ebp - 0x430]
comisd xmm0, xmmword [0xae1f98]
jbe 0x519cce
movsd xmm0, qword [0xae0788]
mulsd xmm0, qword [ebp - 0x418]
movsd xmm1, qword [ebp - 0x430]
subsd xmm1, xmm0
movsd qword [ebp - 0x430], xmm1
jmp 0x519c0a
xorps xmm0, xmm0
comisd xmm0, xmmword [ebp - 0x430]
jbe 0x519d13
not dword [esi - 0xb]
pop ebp
cli
push ecx
hlt
mov dword [ebp - 0x230], 0x519ce0
mov dword [ebp - 0x234], 0x519cf2
mov eax, dword [ebp - 0x230]
mov dword [ebp - 0x2b4], eax
mov eax, dword [ebp - 0x234]
mov dword [ebp - 0x738], eax
mov byte [ebp - 0x2fe], 0x20
and dword [ebp - 0x294], 0
jmp 0x519d5c
mov eax, dword [ebp - 0x294]
inc eax
mov dword [ebp - 0x294], eax
cmp dword [ebp - 0x294], 0x100
jae 0x519d7d
mov eax, dword [ebp - 0x294]
mov cl, byte [ebp - 0x294]
mov byte [ebp + eax - 0x720], cl
jmp 0x519d4f
and dword [ebp - 0x3ac], 0
mov byte [ebp - 0x24e], 0
mov dword [ebp - 0x294], 0xff
jmp 0x519da4
mov eax, dword [ebp - 0x294]
dec eax
mov dword [ebp - 0x294], eax
cmp dword [ebp - 0x294], 0
jbe 0x51a029
and dword [ebp - 0x4c0], 0
mov dword [ebp - 0x460], 1
mov eax, dword [ebp - 0x460]
cmp eax, dword [ebp - 0x294]
jae 0x519de2
mov eax, dword [ebp - 0x460]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x460], eax
jmp 0x519dc2
mov eax, dword [ebp - 0x3ac]
mov dword [ebp - 0x73c], eax
mov eax, dword [ebp - 0x73c]
mov dword [ebp - 0x2e8], eax
cmp dword [ebp - 0x2e8], 0
je 0x519e27
sub dword [ebp - 0x2e8], 1
je 0x519e55
sub dword [ebp - 0x2e8], 1
je 0x519e86
sub dword [ebp - 0x2e8], 1
je 0x519eb4
jmp 0x519ee2
movzx eax, byte [ebp - 0x24e]
movzx ebx, byte [ebp + eax - 0x720]
movsd xmm0, qword [ebp - 0x430]
call fcn.00ac0df0
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x24e], bl
jmp 0x519f09
movzx eax, byte [ebp - 0x24e]
movzx ebx, byte [ebp + eax - 0x720]
movsd xmm0, qword [ebp - 0x430]
call fcn.00ac0df0
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x24e], bl
jmp 0x519f09
movzx eax, byte [ebp - 0x24e]
movzx ebx, byte [ebp + eax - 0x720]
movsd xmm0, qword [ebp - 0x430]
call fcn.00ac0df0
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x24e], bl
jmp 0x519f09
movzx eax, byte [ebp - 0x24e]
movzx ebx, byte [ebp + eax - 0x720]
movsd xmm0, qword [ebp - 0x430]
call fcn.00ac0df0
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x24e], bl
jmp 0x519f09
movzx eax, byte [ebp - 0x24e]
movzx eax, byte [ebp + eax - 0x720]
mov ecx, dword [ebp - 0x738]
add ecx, dword [ebp - 0x3ac]
movzx ecx, byte [ecx - 4]
add eax, ecx
mov byte [ebp - 0x24e], al
mov eax, dword [ebp - 0x3ac]
inc eax
mov dword [ebp - 0x3ac], eax
movzx eax, byte [ebp - 0x2fe]
cmp dword [ebp - 0x3ac], eax
jb 0x519f42
and dword [ebp - 0x3ac], 0
movzx eax, byte [ebp - 0x2fe]
movzx ecx, byte [ebp - 0x24e]
add ecx, eax
mov byte [ebp - 0x24e], cl
movzx eax, byte [ebp - 0x24e]
and eax, dword [ebp - 0x460]
mov dword [ebp - 0x378], eax
mov eax, dword [ebp - 0x4c0]
inc eax
mov dword [ebp - 0x4c0], eax
cmp dword [ebp - 0x4c0], 0xb
jbe 0x519f7f
mov eax, dword [ebp - 0x378]
xor edx, edx
div dword [ebp - 0x294]
mov dword [ebp - 0x378], edx
mov eax, dword [ebp - 0x378]
cmp eax, dword [ebp - 0x294]
ja 0x519de2
mov eax, dword [ebp - 0x294]
cmp eax, dword [ebp - 0x378]
je 0x51a024
mov eax, dword [ebp - 0x378]
movzx eax, byte [ebp + eax - 0x720]
mov ecx, dword [ebp - 0x294]
movzx ecx, byte [ebp + ecx - 0x720]
xor ecx, eax
mov eax, dword [ebp - 0x294]
mov byte [ebp + eax - 0x720], cl
mov eax, dword [ebp - 0x294]
movzx eax, byte [ebp + eax - 0x720]
mov ecx, dword [ebp - 0x378]
movzx ecx, byte [ebp + ecx - 0x720]
xor ecx, eax
mov eax, dword [ebp - 0x378]
mov byte [ebp + eax - 0x720], cl
mov eax, dword [ebp - 0x378]
movzx eax, byte [ebp + eax - 0x720]
mov ecx, dword [ebp - 0x294]
movzx ecx, byte [ebp + ecx - 0x720]
xor ecx, eax
mov eax, dword [ebp - 0x294]
mov byte [ebp + eax - 0x720], cl
jmp 0x519d97
xor eax, eax
inc eax
shl eax, 0
mov al, byte [ebp + eax - 0x720]
mov byte [ebp - 0x23d], al
xor eax, eax
inc eax
imul eax, eax, 3
mov al, byte [ebp + eax - 0x720]
mov byte [ebp - 0x23e], al
xor eax, eax
inc eax
imul eax, eax, 5
mov al, byte [ebp + eax - 0x720]
mov byte [ebp - 0x245], al
xor eax, eax
inc eax
imul eax, eax, 7
mov al, byte [ebp + eax - 0x720]
mov byte [ebp - 0x23f], al
movzx eax, byte [ebp - 0x24e]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp - 0x243], al
mov dword [ebp - 0x600], 0x12
cmp dword [ebp - 0x600], 2
jle 0x51c27a
mov eax, dword [ebp - 0x600]
and eax, 1
jne 0x51c27a
and dword [ebp - 0x254], 0
and dword [ebp - 0x28c], 0
mov eax, dword [ebp - 0x28c]
inc eax
mov dword [ebp - 0x28c], eax
and dword [ebp - 0x2b0], 0
mov eax, dword [ebp - 0x254]
shl eax, 1
mov dword [ebp - 0x2b0], eax
and dword [ebp - 0x298], 0
mov eax, dword [ebp - 0x2b4]
add eax, dword [ebp - 0x2b0]
movzx eax, byte [eax]
add eax, dword [ebp - 0x298]
mov dword [ebp - 0x298], eax
and dword [ebp - 0x29c], 0
mov eax, dword [ebp - 0x29c]
add eax, 0xec
mov dword [ebp - 0x29c], eax
and dword [ebp - 0x2b8], 0
movss xmm0, dword [0xaf72b8]
movss dword [ebp - 0x3b0], xmm0
movss xmm0, dword [0xaf5814]
movss dword [ebp - 0x304], xmm0
movss xmm0, dword [0xaf3d1c]
movss dword [ebp - 0x2d8], xmm0
movss xmm0, dword [ebp - 0x304]
mulss xmm0, dword [ebp - 0x2d8]
movss dword [ebp - 0x304], xmm0
movss xmm0, dword [ebp - 0x304]
mulss xmm0, dword [ebp - 0x2d8]
movss dword [ebp - 0x304], xmm0
movss xmm0, dword [ebp - 0x304]
subss xmm0, dword [ebp - 0x2d8]
movss dword [ebp - 0x304], xmm0
movss xmm0, dword [ebp - 0x2d8]
comiss xmm0, dword [ebp - 0x304]
jbe 0x51a1f3
movss xmm0, dword [ebp - 0x2d8]
mulss xmm0, dword [ebp - 0x304]
movss dword [ebp - 0x2d8], xmm0
movss xmm0, dword [ebp - 0x3b0]
divss xmm0, dword [ebp - 0x2d8]
movss dword [ebp - 0x3b0], xmm0
movss xmm0, dword [ebp - 0x3b0]
addss xmm0, dword [ebp - 0x2d8]
movss dword [ebp - 0x3b0], xmm0
jmp 0x51a24b
movss xmm0, dword [ebp - 0x2d8]
mulss xmm0, dword [ebp - 0x304]
movss dword [ebp - 0x2d8], xmm0
movss xmm0, dword [ebp - 0x3b0]
mulss xmm0, dword [ebp - 0x2d8]
movss dword [ebp - 0x3b0], xmm0
movss xmm0, dword [ebp - 0x2d8]
mulss xmm0, dword [ebp - 0x304]
movss dword [ebp - 0x2d8], xmm0
mov eax, dword [ebp - 0x254]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x2b8], eax
and dword [ebp - 0x2a0], 0
mov eax, dword [ebp - 0x2b4]
add eax, dword [ebp - 0x2b8]
movzx eax, byte [eax]
add eax, dword [ebp - 0x2a0]
mov dword [ebp - 0x2a0], eax
and dword [ebp - 0x2a4], 0
mov eax, dword [ebp - 0x2a4]
add eax, 0x51
mov dword [ebp - 0x2a4], eax
and dword [ebp - 0x2a8], 0
mov eax, dword [ebp - 0x298]
sub eax, dword [ebp - 0x29c]
add eax, dword [ebp - 0x2a8]
mov dword [ebp - 0x2a8], eax
and dword [ebp - 0x2ac], 0
mov eax, dword [ebp - 0x2a0]
sub eax, dword [ebp - 0x2a4]
add eax, dword [ebp - 0x2ac]
mov dword [ebp - 0x2ac], eax
and dword [ebp - 0x2bc], 0
mov eax, dword [ebp - 0x2a8]
shl eax, 4
mov dword [ebp - 0x2bc], eax
and dword [ebp - 0x2c0], 0
movsd xmm0, qword [0xaf1730]
movsd qword [ebp - 0x3a4], xmm0
movsd xmm0, qword [0xaf03a0]
movsd qword [ebp - 0x4cc], xmm0
movsd xmm0, qword [0xaee708]
movsd qword [ebp - 0x7a4], xmm0
movsd xmm0, qword [0xaec658]
movsd qword [ebp - 0x4a0], xmm0
movsd xmm0, qword [0xaea5e8]
movsd qword [ebp - 0x410], xmm0
movsd xmm0, qword [0xae8228]
movsd qword [ebp - 0x450], xmm0
movsd xmm0, qword [0xae4e98]
movsd qword [ebp - 0x3c0], xmm0
movsd xmm0, qword [ebp - 0x4a0]
addsd xmm0, qword [ebp - 0x3c0]
movsd qword [ebp - 0x4a0], xmm0
movsd xmm0, qword [ebp - 0x4cc]
subsd xmm0, qword [ebp - 0x3c0]
movsd qword [ebp - 0x4cc], xmm0
movsd xmm0, qword [ebp - 0x3a4]
subsd xmm0, qword [ebp - 0x3c0]
movsd qword [ebp - 0x3a4], xmm0
movsd xmm0, qword [ebp - 0x410]
mulsd xmm0, qword [ebp - 0x3c0]
movsd qword [ebp - 0x410], xmm0
movsd xmm0, qword [ebp - 0x4a0]
mulsd xmm0, qword [ebp - 0x3c0]
movsd qword [ebp - 0x4a0], xmm0
movsd xmm0, qword [ebp - 0x3a4]
addsd xmm0, qword [ebp - 0x3c0]
movsd qword [ebp - 0x3a4], xmm0
movsd xmm0, qword [ebp - 0x410]
mulsd xmm0, qword [ebp - 0x3c0]
movsd qword [ebp - 0x410], xmm0
movsd xmm0, qword [ebp - 0x3c0]
comisd xmm0, xmmword [ebp - 0x410]
jbe 0x51a4b9
movsd xmm0, qword [ebp - 0x3a4]
addsd xmm0, qword [ebp - 0x7a4]
movsd qword [ebp - 0x3a4], xmm0
movsd xmm0, qword [ebp - 0x450]
mulsd xmm0, qword [ebp - 0x3a4]
movsd qword [ebp - 0x450], xmm0
movsd xmm0, qword [ebp - 0x4cc]
addsd xmm0, qword [ebp - 0x4a0]
movsd qword [ebp - 0x4cc], xmm0
movsd xmm0, qword [ebp - 0x3c0]
divsd xmm0, qword [ebp - 0x4cc]
movsd qword [ebp - 0x3c0], xmm0
movsd xmm0, qword [ebp - 0x3a4]
addsd xmm0, qword [ebp - 0x7a4]
movsd qword [ebp - 0x3a4], xmm0
movsd xmm0, qword [ebp - 0x4a0]
mulsd xmm0, qword [ebp - 0x450]
movsd qword [ebp - 0x4a0], xmm0
movsd xmm0, qword [ebp - 0x4cc]
addsd xmm0, qword [ebp - 0x4a0]
movsd qword [ebp - 0x4cc], xmm0
jmp 0x51a56d
movsd xmm0, qword [ebp - 0x410]
addsd xmm0, qword [ebp - 0x3c0]
movsd qword [ebp - 0x410], xmm0
movsd xmm0, qword [ebp - 0x450]
subsd xmm0, qword [ebp - 0x3a4]
movsd qword [ebp - 0x450], xmm0
movsd xmm0, qword [ebp - 0x3a4]
addsd xmm0, qword [ebp - 0x7a4]
movsd qword [ebp - 0x3a4], xmm0
movsd xmm0, qword [ebp - 0x450]
mulsd xmm0, qword [ebp - 0x3a4]
movsd qword [ebp - 0x450], xmm0
movsd xmm0, qword [ebp - 0x450]
addsd xmm0, qword [ebp - 0x3a4]
movsd qword [ebp - 0x450], xmm0
movsd xmm0, qword [ebp - 0x410]
subsd xmm0, qword [ebp - 0x3c0]
movsd qword [ebp - 0x410], xmm0
movsd xmm0, qword [ebp - 0x410]
mulsd xmm0, qword [ebp - 0x3c0]
movsd qword [ebp - 0x410], xmm0
mov eax, dword [ebp - 0x2ac]
mov dword [ebp - 0x2c0], eax
and dword [ebp - 0x2c4], 0
mov eax, dword [ebp - 0x2bc]
or eax, dword [ebp - 0x2c0]
mov dword [ebp - 0x2c4], eax
mov byte [ebp - 0x246], 0
mov al, byte [ebp - 0x2c4]
mov byte [ebp - 0x246], al
mov byte [ebp - 0x244], 0
movzx eax, byte [ebp - 0x243]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp - 0x244], al
movzx eax, byte [ebp - 0x23d]
movzx eax, byte [ebp + eax - 0x720]
mov dword [ebp - 0x734], eax
mov al, byte [ebp - 0x23d]
add al, 1
mov byte [ebp - 0x23d], al
movzx eax, byte [ebp - 0x23e]
add eax, dword [ebp - 0x734]
mov byte [ebp - 0x23e], al
movzx eax, byte [ebp - 0x23e]
movzx ecx, byte [ebp - 0x243]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movzx eax, byte [ebp - 0x23f]
movzx ecx, byte [ebp - 0x23e]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movzx eax, byte [ebp - 0x23d]
movzx ecx, byte [ebp - 0x23f]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movzx eax, byte [ebp - 0x23d]
mov cl, byte [ebp - 0x244]
mov byte [ebp + eax - 0x720], cl
movzx eax, byte [ebp - 0x244]
movzx eax, byte [ebp + eax - 0x720]
movzx ecx, byte [ebp - 0x245]
add ecx, eax
mov byte [ebp - 0x245], cl
movzx eax, byte [ebp - 0x246]
movzx ecx, byte [ebp - 0x23e]
movzx ecx, byte [ebp + ecx - 0x720]
movzx edx, byte [ebp - 0x23d]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x720]
xor eax, ecx
movzx ecx, byte [ebp - 0x23f]
movzx ecx, byte [ebp + ecx - 0x720]
movzx edx, byte [ebp - 0x243]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
movzx edx, byte [ebp - 0x245]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x720]
movzx ecx, byte [ebp + ecx - 0x720]
xor eax, ecx
mov byte [ebp - 0x23f], al
mov al, byte [ebp - 0x246]
mov byte [ebp - 0x243], al
mov al, byte [ebp - 0x23f]
mov byte [ebp - 0x24d], al
cmp dword [ebp - 0x254], 0
jle 0x51a727
mov eax, dword [ebp - 0x254]
mov cl, byte [ebp - 0x24d]
mov byte [ebp + eax - 0x1d], cl
mov eax, dword [ebp - 0x254]
inc eax
mov dword [ebp - 0x254], eax
mov eax, dword [ebp - 0x28c]
inc eax
mov dword [ebp - 0x28c], eax
mov eax, dword [ebp - 0x254]
shl eax, 1
mov dword [ebp - 0x2b0], eax
mov eax, dword [ebp - 0x2b4]
add eax, dword [ebp - 0x2b0]
movzx eax, byte [eax]
mov dword [ebp - 0x298], eax
mov dword [ebp - 0x29c], 0xec
mov eax, dword [ebp - 0x254]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x2b8], eax
mov eax, dword [ebp - 0x2b4]
add eax, dword [ebp - 0x2b8]
movzx eax, byte [eax]
mov dword [ebp - 0x2a0], eax
mov dword [ebp - 0x2a4], 0x51
mov eax, dword [ebp - 0x298]
sub eax, dword [ebp - 0x29c]
mov dword [ebp - 0x2a8], eax
mov eax, dword [ebp - 0x2a0]
sub eax, dword [ebp - 0x2a4]
mov dword [ebp - 0x2ac], eax
mov eax, dword [ebp - 0x2a8]
shl eax, 4
mov dword [ebp - 0x2bc], eax
mov eax, dword [ebp - 0x2ac]
mov dword [ebp - 0x2c0], eax
mov eax, dword [ebp - 0x2bc]
or eax, dword [ebp - 0x2c0]
mov dword [ebp - 0x2c4], eax
mov al, byte [ebp - 0x2c4]
mov byte [ebp - 0x246], al
movzx eax, byte [ebp - 0x243]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp - 0x244], al
movzx eax, byte [ebp - 0x23d]
movzx eax, byte [ebp + eax - 0x720]
mov dword [ebp - 0x730], eax
mov al, byte [ebp - 0x23d]
add al, 1
mov byte [ebp - 0x23d], al
movzx eax, byte [ebp - 0x23e]
add eax, dword [ebp - 0x730]
mov byte [ebp - 0x23e], al
movzx eax, byte [ebp - 0x23e]
movzx ecx, byte [ebp - 0x243]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movzx eax, byte [ebp - 0x23f]
movzx ecx, byte [ebp - 0x23e]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movzx eax, byte [ebp - 0x23d]
movzx ecx, byte [ebp - 0x23f]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movzx eax, byte [ebp - 0x23d]
mov cl, byte [ebp - 0x244]
mov byte [ebp + eax - 0x720], cl
movzx eax, byte [ebp - 0x244]
movzx eax, byte [ebp + eax - 0x720]
movzx ecx, byte [ebp - 0x245]
add ecx, eax
mov byte [ebp - 0x245], cl
movzx eax, byte [ebp - 0x246]
movzx ecx, byte [ebp - 0x23e]
movzx ecx, byte [ebp + ecx - 0x720]
movzx edx, byte [ebp - 0x23d]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x720]
xor eax, ecx
movzx ecx, byte [ebp - 0x23f]
movzx ecx, byte [ebp + ecx - 0x720]
movzx edx, byte [ebp - 0x243]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
movzx edx, byte [ebp - 0x245]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x720]
movzx ecx, byte [ebp + ecx - 0x720]
xor eax, ecx
mov byte [ebp - 0x23f], al
mov al, byte [ebp - 0x246]
mov byte [ebp - 0x243], al
mov al, byte [ebp - 0x23f]
mov byte [ebp - 0x24d], al
cmp dword [ebp - 0x254], 0
jle 0x51a981
mov eax, dword [ebp - 0x254]
mov cl, byte [ebp - 0x24d]
mov byte [ebp + eax - 0x1d], cl
mov eax, dword [ebp - 0x28c]
inc eax
mov dword [ebp - 0x28c], eax
mov eax, dword [ebp - 0x254]
inc eax
mov dword [ebp - 0x4bc], eax
jmp 0x51a9aa
mov eax, dword [ebp - 0x4bc]
inc eax
mov dword [ebp - 0x4bc], eax
mov eax, dword [ebp - 0x4bc]
cmp eax, dword [ebp - 0x28c]
jge 0x51ac0e
mov eax, dword [ebp - 0x254]
inc eax
mov dword [ebp - 0x254], eax
mov eax, dword [ebp - 0x254]
shl eax, 1
mov dword [ebp - 0x2b0], eax
mov eax, dword [ebp - 0x2b4]
add eax, dword [ebp - 0x2b0]
movzx eax, byte [eax]
mov dword [ebp - 0x298], eax
mov dword [ebp - 0x29c], 0xec
mov eax, dword [ebp - 0x254]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x2b8], eax
mov eax, dword [ebp - 0x2b4]
add eax, dword [ebp - 0x2b8]
movzx eax, byte [eax]
mov dword [ebp - 0x2a0], eax
mov dword [ebp - 0x2a4], 0x51
mov eax, dword [ebp - 0x298]
sub eax, dword [ebp - 0x29c]
mov dword [ebp - 0x2a8], eax
mov eax, dword [ebp - 0x2a0]
sub eax, dword [ebp - 0x2a4]
mov dword [ebp - 0x2ac], eax
mov eax, dword [ebp - 0x2a8]
shl eax, 4
mov dword [ebp - 0x2bc], eax
mov eax, dword [ebp - 0x2ac]
mov dword [ebp - 0x2c0], eax
mov eax, dword [ebp - 0x2bc]
or eax, dword [ebp - 0x2c0]
mov dword [ebp - 0x2c4], eax
mov al, byte [ebp - 0x2c4]
mov byte [ebp - 0x246], al
movzx eax, byte [ebp - 0x243]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp - 0x244], al
movzx eax, byte [ebp - 0x23d]
movzx eax, byte [ebp + eax - 0x720]
mov dword [ebp - 0x72c], eax
mov al, byte [ebp - 0x23d]
add al, 1
mov byte [ebp - 0x23d], al
movzx eax, byte [ebp - 0x23e]
add eax, dword [ebp - 0x72c]
mov byte [ebp - 0x23e], al
movzx eax, byte [ebp - 0x23e]
movzx ecx, byte [ebp - 0x243]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movzx eax, byte [ebp - 0x23f]
movzx ecx, byte [ebp - 0x23e]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movzx eax, byte [ebp - 0x23d]
movzx ecx, byte [ebp - 0x23f]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movzx eax, byte [ebp - 0x23d]
mov cl, byte [ebp - 0x244]
mov byte [ebp + eax - 0x720], cl
movzx eax, byte [ebp - 0x244]
movzx eax, byte [ebp + eax - 0x720]
movzx ecx, byte [ebp - 0x245]
add ecx, eax
mov byte [ebp - 0x245], cl
movzx eax, byte [ebp - 0x246]
movzx ecx, byte [ebp - 0x23e]
movzx ecx, byte [ebp + ecx - 0x720]
movzx edx, byte [ebp - 0x23d]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x720]
xor eax, ecx
movzx ecx, byte [ebp - 0x23f]
movzx ecx, byte [ebp + ecx - 0x720]
movzx edx, byte [ebp - 0x243]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
movzx edx, byte [ebp - 0x245]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x720]
movzx ecx, byte [ebp + ecx - 0x720]
xor eax, ecx
mov byte [ebp - 0x23f], al
mov al, byte [ebp - 0x246]
mov byte [ebp - 0x243], al
mov al, byte [ebp - 0x23f]
mov byte [ebp - 0x24d], al
cmp dword [ebp - 0x254], 0
jle 0x51ac09
mov eax, dword [ebp - 0x254]
mov cl, byte [ebp - 0x24d]
mov byte [ebp + eax - 0x1d], cl
jmp 0x51a99d
mov eax, dword [ebp - 0x28c]
inc eax
mov dword [ebp - 0x28c], eax
mov eax, dword [ebp - 0x254]
inc eax
mov dword [ebp - 0x254], eax
mov eax, dword [ebp - 0x28c]
inc eax
mov dword [ebp - 0x28c], eax
mov eax, dword [ebp - 0x254]
shl eax, 1
mov dword [ebp - 0x2b0], eax
mov eax, dword [ebp - 0x2b4]
add eax, dword [ebp - 0x2b0]
movzx eax, byte [eax]
mov dword [ebp - 0x298], eax
mov dword [ebp - 0x29c], 0xec
mov eax, dword [ebp - 0x254]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x2b8], eax
mov eax, dword [ebp - 0x2b4]
add eax, dword [ebp - 0x2b8]
movzx eax, byte [eax]
mov dword [ebp - 0x2a0], eax
mov dword [ebp - 0x2a4], 0x51
mov eax, dword [ebp - 0x298]
sub eax, dword [ebp - 0x29c]
mov dword [ebp - 0x2a8], eax
mov eax, dword [ebp - 0x2a0]
sub eax, dword [ebp - 0x2a4]
mov dword [ebp - 0x2ac], eax
mov eax, dword [ebp - 0x2a8]
shl eax, 4
mov dword [ebp - 0x2bc], eax
mov eax, dword [ebp - 0x2ac]
mov dword [ebp - 0x2c0], eax
mov eax, dword [ebp - 0x2bc]
or eax, dword [ebp - 0x2c0]
mov dword [ebp - 0x2c4], eax
mov al, byte [ebp - 0x2c4]
mov byte [ebp - 0x246], al
movzx eax, byte [ebp - 0x243]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp - 0x244], al
movzx eax, byte [ebp - 0x23d]
movzx eax, byte [ebp + eax - 0x720]
mov dword [ebp - 0x728], eax
mov al, byte [ebp - 0x23d]
add al, 1
mov byte [ebp - 0x23d], al
movzx eax, byte [ebp - 0x23e]
add eax, dword [ebp - 0x728]
mov byte [ebp - 0x23e], al
movzx eax, byte [ebp - 0x23e]
movzx ecx, byte [ebp - 0x243]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movzx eax, byte [ebp - 0x23f]
movzx ecx, byte [ebp - 0x23e]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movzx eax, byte [ebp - 0x23d]
movzx ecx, byte [ebp - 0x23f]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movsd xmm0, qword [0xaf0e38]
movsd qword [ebp - 0x320], xmm0
movsd xmm0, qword [0xaeee10]
movsd qword [ebp - 0x38c], xmm0
movsd xmm0, qword [0xaec338]
movsd qword [ebp - 0x348], xmm0
movsd xmm0, qword [0xae98f0]
movsd qword [ebp - 0x318], xmm0
movsd xmm0, qword [0xae5e88]
movsd qword [ebp - 0x32c], xmm0
movsd xmm0, qword [ebp - 0x318]
addsd xmm0, qword [ebp - 0x32c]
movsd qword [ebp - 0x318], xmm0
movsd xmm0, qword [ebp - 0x320]
subsd xmm0, qword [ebp - 0x32c]
movsd qword [ebp - 0x320], xmm0
movsd xmm0, qword [ebp - 0x318]
addsd xmm0, qword [ebp - 0x32c]
movsd qword [ebp - 0x318], xmm0
movsd xmm0, qword [ebp - 0x348]
addsd xmm0, qword [ebp - 0x32c]
movsd qword [ebp - 0x348], xmm0
movsd xmm0, qword [ebp - 0x38c]
mulsd xmm0, qword [ebp - 0x32c]
movsd qword [ebp - 0x38c], xmm0
movsd xmm0, qword [ebp - 0x32c]
comisd xmm0, xmmword [ebp - 0x38c]
jbe 0x51b063
movsd xmm0, qword [ebp - 0x318]
addsd xmm0, qword [ebp - 0x32c]
movsd qword [ebp - 0x318], xmm0
movsd xmm0, qword [ebp - 0x32c]
addsd xmm0, qword [ebp - 0x320]
movsd qword [ebp - 0x32c], xmm0
movsd xmm0, qword [ebp - 0x32c]
mulsd xmm0, qword [ebp - 0x320]
movsd qword [ebp - 0x32c], xmm0
movsd xmm0, qword [ebp - 0x318]
addsd xmm0, qword [ebp - 0x32c]
movsd qword [ebp - 0x318], xmm0
movsd xmm0, qword [ebp - 0x348]
subsd xmm0, qword [ebp - 0x318]
movsd qword [ebp - 0x348], xmm0
movsd xmm0, qword [ebp - 0x348]
subsd xmm0, qword [ebp - 0x318]
movsd qword [ebp - 0x348], xmm0
movsd xmm0, qword [ebp - 0x38c]
addsd xmm0, qword [ebp - 0x348]
movsd qword [ebp - 0x38c], xmm0
movsd xmm0, qword [ebp - 0x320]
divsd xmm0, qword [ebp - 0x38c]
movsd qword [ebp - 0x320], xmm0
movsd xmm0, qword [ebp - 0x318]
mulsd xmm0, qword [ebp - 0x32c]
movsd qword [ebp - 0x318], xmm0
movsd xmm0, qword [ebp - 0x320]
divsd xmm0, qword [ebp - 0x38c]
movsd qword [ebp - 0x320], xmm0
movsd xmm0, qword [ebp - 0x318]
comisd xmm0, xmmword [ebp - 0x320]
jbe 0x51afe6
movsd xmm0, qword [ebp - 0x38c]
addsd xmm0, qword [ebp - 0x348]
movsd qword [ebp - 0x38c], xmm0
movsd xmm0, qword [ebp - 0x38c]
addsd xmm0, qword [ebp - 0x348]
movsd qword [ebp - 0x38c], xmm0
movsd xmm0, qword [ebp - 0x32c]
addsd xmm0, qword [ebp - 0x320]
movsd qword [ebp - 0x32c], xmm0
movsd xmm0, qword [ebp - 0x320]
addsd xmm0, qword [ebp - 0x38c]
movsd qword [ebp - 0x320], xmm0
movsd xmm0, qword [ebp - 0x320]
divsd xmm0, qword [ebp - 0x38c]
movsd qword [ebp - 0x320], xmm0
jmp 0x51b05e
movsd xmm0, qword [ebp - 0x348]
divsd xmm0, qword [ebp - 0x318]
movsd qword [ebp - 0x348], xmm0
movsd xmm0, qword [ebp - 0x318]
divsd xmm0, qword [ebp - 0x32c]
movsd qword [ebp - 0x318], xmm0
movsd xmm0, qword [ebp - 0x38c]
divsd xmm0, qword [ebp - 0x348]
movsd qword [ebp - 0x38c], xmm0
movsd xmm0, qword [ebp - 0x32c]
divsd xmm0, qword [ebp - 0x320]
movsd qword [ebp - 0x32c], xmm0
movsd xmm0, qword [ebp - 0x348]
subsd xmm0, qword [ebp - 0x318]
movsd qword [ebp - 0x348], xmm0
jmp 0x51b0ef
movsd xmm0, qword [ebp - 0x320]
addsd xmm0, qword [ebp - 0x348]
movsd qword [ebp - 0x320], xmm0
movsd xmm0, qword [ebp - 0x318]
subsd xmm0, qword [ebp - 0x320]
movsd qword [ebp - 0x318], xmm0
movsd xmm0, qword [ebp - 0x320]
subsd xmm0, qword [ebp - 0x348]
movsd qword [ebp - 0x320], xmm0
movsd xmm0, qword [ebp - 0x348]
mulsd xmm0, qword [ebp - 0x32c]
movsd qword [ebp - 0x348], xmm0
movsd xmm0, qword [ebp - 0x38c]
addsd xmm0, qword [ebp - 0x318]
movsd qword [ebp - 0x38c], xmm0
movzx eax, byte [ebp - 0x23d]
mov cl, byte [ebp - 0x244]
mov byte [ebp + eax - 0x720], cl
movzx eax, byte [ebp - 0x244]
movzx eax, byte [ebp + eax - 0x720]
movzx ecx, byte [ebp - 0x245]
add ecx, eax
mov byte [ebp - 0x245], cl
movzx eax, byte [ebp - 0x246]
movzx ecx, byte [ebp - 0x23e]
movzx ecx, byte [ebp + ecx - 0x720]
movzx edx, byte [ebp - 0x23d]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x720]
xor eax, ecx
movzx ecx, byte [ebp - 0x23f]
movzx ecx, byte [ebp + ecx - 0x720]
movzx edx, byte [ebp - 0x243]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
movzx edx, byte [ebp - 0x245]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x720]
movzx ecx, byte [ebp + ecx - 0x720]
xor eax, ecx
mov byte [ebp - 0x23f], al
mov al, byte [ebp - 0x246]
mov byte [ebp - 0x243], al
movss xmm0, dword [0xaf9558]
movss dword [ebp - 0x30c], xmm0
movss xmm0, dword [0xaf8eec]
movss dword [ebp - 0x37c], xmm0
movss xmm0, dword [0xaf832c]
movss dword [ebp - 0x340], xmm0
movss xmm0, dword [0xaf71d0]
movss dword [ebp - 0x384], xmm0
movss xmm0, dword [0xaf5dbc]
movss dword [ebp - 0x39c], xmm0
movss xmm0, dword [0xaf4a70]
movss dword [ebp - 0x380], xmm0
movss xmm0, dword [0xaf3598]
movss dword [ebp - 0x2c8], xmm0
movss xmm0, dword [ebp - 0x384]
addss xmm0, dword [ebp - 0x2c8]
movss dword [ebp - 0x384], xmm0
movss xmm0, dword [ebp - 0x39c]
subss xmm0, dword [ebp - 0x2c8]
movss dword [ebp - 0x39c], xmm0
movss xmm0, dword [ebp - 0x37c]
addss xmm0, dword [ebp - 0x2c8]
movss dword [ebp - 0x37c], xmm0
movss xmm0, dword [ebp - 0x380]
addss xmm0, dword [ebp - 0x2c8]
movss dword [ebp - 0x380], xmm0
movss xmm0, dword [ebp - 0x380]
addss xmm0, dword [ebp - 0x2c8]
movss dword [ebp - 0x380], xmm0
movss xmm0, dword [ebp - 0x37c]
subss xmm0, dword [ebp - 0x2c8]
movss dword [ebp - 0x37c], xmm0
movss xmm0, dword [ebp - 0x384]
addss xmm0, dword [ebp - 0x2c8]
movss dword [ebp - 0x384], xmm0
movss xmm0, dword [ebp - 0x30c]
comiss xmm0, dword [ebp - 0x2c8]
jbe 0x51b385
movss xmm0, dword [ebp - 0x2c8]
mulss xmm0, dword [ebp - 0x30c]
movss dword [ebp - 0x2c8], xmm0
movss xmm0, dword [ebp - 0x340]
subss xmm0, dword [ebp - 0x384]
movss dword [ebp - 0x340], xmm0
movss xmm0, dword [ebp - 0x2c8]
subss xmm0, dword [ebp - 0x30c]
movss dword [ebp - 0x2c8], xmm0
movss xmm0, dword [ebp - 0x37c]
addss xmm0, dword [ebp - 0x340]
movss dword [ebp - 0x37c], xmm0
movss xmm0, dword [ebp - 0x340]
mulss xmm0, dword [ebp - 0x384]
movss dword [ebp - 0x340], xmm0
movss xmm0, dword [ebp - 0x39c]
mulss xmm0, dword [ebp - 0x380]
movss dword [ebp - 0x39c], xmm0
movss xmm0, dword [ebp - 0x30c]
mulss xmm0, dword [ebp - 0x37c]
movss dword [ebp - 0x30c], xmm0
mov al, byte [ebp - 0x23f]
mov byte [ebp - 0x24d], al
jmp 0x51b42d
movss xmm0, dword [ebp - 0x2c8]
mulss xmm0, dword [ebp - 0x37c]
movss dword [ebp - 0x2c8], xmm0
movss xmm0, dword [ebp - 0x39c]
divss xmm0, dword [ebp - 0x2c8]
movss dword [ebp - 0x39c], xmm0
movss xmm0, dword [ebp - 0x380]
addss xmm0, dword [ebp - 0x30c]
movss dword [ebp - 0x380], xmm0
movss xmm0, dword [ebp - 0x30c]
divss xmm0, dword [ebp - 0x340]
movss dword [ebp - 0x30c], xmm0
movss xmm0, dword [ebp - 0x30c]
subss xmm0, dword [ebp - 0x340]
movss dword [ebp - 0x30c], xmm0
movss xmm0, dword [ebp - 0x340]
mulss xmm0, dword [ebp - 0x39c]
movss dword [ebp - 0x340], xmm0
movss xmm0, dword [ebp - 0x384]
addss xmm0, dword [ebp - 0x380]
movss dword [ebp - 0x384], xmm0
cmp dword [ebp - 0x254], 0
jle 0x51b446
mov eax, dword [ebp - 0x254]
mov cl, byte [ebp - 0x24d]
mov byte [ebp + eax - 0x1d], cl
mov eax, dword [ebp - 0x254]
inc eax
mov dword [ebp - 0x254], eax
mov eax, dword [ebp - 0x28c]
inc eax
mov dword [ebp - 0x28c], eax
mov eax, dword [ebp - 0x254]
shl eax, 1
mov dword [ebp - 0x2b0], eax
mov eax, dword [ebp - 0x2b4]
add eax, dword [ebp - 0x2b0]
movzx eax, byte [eax]
mov dword [ebp - 0x298], eax
mov dword [ebp - 0x29c], 0xec
mov eax, dword [ebp - 0x254]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x2b8], eax
mov eax, dword [ebp - 0x2b4]
add eax, dword [ebp - 0x2b8]
movzx eax, byte [eax]
mov dword [ebp - 0x2a0], eax
mov dword [ebp - 0x2a4], 0x51
mov eax, dword [ebp - 0x298]
sub eax, dword [ebp - 0x29c]
mov dword [ebp - 0x2a8], eax
mov eax, dword [ebp - 0x2a0]
sub eax, dword [ebp - 0x2a4]
mov dword [ebp - 0x2ac], eax
mov eax, dword [ebp - 0x2a8]
shl eax, 4
mov dword [ebp - 0x2bc], eax
mov eax, dword [ebp - 0x2ac]
mov dword [ebp - 0x2c0], eax
mov eax, dword [ebp - 0x2bc]
or eax, dword [ebp - 0x2c0]
mov dword [ebp - 0x2c4], eax
mov al, byte [ebp - 0x2c4]
mov byte [ebp - 0x246], al
movzx eax, byte [ebp - 0x243]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp - 0x244], al
movzx eax, byte [ebp - 0x23d]
movzx eax, byte [ebp + eax - 0x720]
mov dword [ebp - 0x79c], eax
mov al, byte [ebp - 0x23d]
add al, 1
mov byte [ebp - 0x23d], al
movzx eax, byte [ebp - 0x23e]
add eax, dword [ebp - 0x79c]
mov byte [ebp - 0x23e], al
movzx eax, byte [ebp - 0x23e]
movzx ecx, byte [ebp - 0x243]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movzx eax, byte [ebp - 0x23f]
movzx ecx, byte [ebp - 0x23e]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movzx eax, byte [ebp - 0x23d]
movzx ecx, byte [ebp - 0x23f]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movzx eax, byte [ebp - 0x23d]
mov cl, byte [ebp - 0x244]
mov byte [ebp + eax - 0x720], cl
movzx eax, byte [ebp - 0x244]
movzx eax, byte [ebp + eax - 0x720]
movzx ecx, byte [ebp - 0x245]
add ecx, eax
mov byte [ebp - 0x245], cl
movzx eax, byte [ebp - 0x246]
movzx ecx, byte [ebp - 0x23e]
movzx ecx, byte [ebp + ecx - 0x720]
movzx edx, byte [ebp - 0x23d]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x720]
xor eax, ecx
movzx ecx, byte [ebp - 0x23f]
movzx ecx, byte [ebp + ecx - 0x720]
movzx edx, byte [ebp - 0x243]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
movzx edx, byte [ebp - 0x245]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x720]
movzx ecx, byte [ebp + ecx - 0x720]
xor eax, ecx
mov byte [ebp - 0x23f], al
mov al, byte [ebp - 0x246]
mov byte [ebp - 0x243], al
mov al, byte [ebp - 0x23f]
mov byte [ebp - 0x24d], al
cmp dword [ebp - 0x254], 0
jle 0x51b6a0
mov eax, dword [ebp - 0x254]
mov cl, byte [ebp - 0x24d]
mov byte [ebp + eax - 0x1d], cl
mov eax, dword [ebp - 0x254]
inc eax
mov dword [ebp - 0x254], eax
mov eax, dword [ebp - 0x28c]
inc eax
mov dword [ebp - 0x28c], eax
mov eax, dword [ebp - 0x254]
shl eax, 1
mov dword [ebp - 0x2b0], eax
mov eax, dword [ebp - 0x2b4]
add eax, dword [ebp - 0x2b0]
movzx eax, byte [eax]
mov dword [ebp - 0x298], eax
mov dword [ebp - 0x29c], 0xec
mov eax, dword [ebp - 0x254]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x2b8], eax
mov eax, dword [ebp - 0x2b4]
add eax, dword [ebp - 0x2b8]
movzx eax, byte [eax]
mov dword [ebp - 0x2a0], eax
mov dword [ebp - 0x2a4], 0x51
mov eax, dword [ebp - 0x298]
sub eax, dword [ebp - 0x29c]
mov dword [ebp - 0x2a8], eax
mov eax, dword [ebp - 0x2a0]
sub eax, dword [ebp - 0x2a4]
mov dword [ebp - 0x2ac], eax
mov eax, dword [ebp - 0x2a8]
shl eax, 4
mov dword [ebp - 0x2bc], eax
mov eax, dword [ebp - 0x2ac]
mov dword [ebp - 0x2c0], eax
mov eax, dword [ebp - 0x2bc]
or eax, dword [ebp - 0x2c0]
mov dword [ebp - 0x2c4], eax
mov al, byte [ebp - 0x2c4]
mov byte [ebp - 0x246], al
movsd xmm0, qword [0xaee888]
movsd qword [ebp - 0x408], xmm0
movsd xmm0, qword [0xaeb168]
movsd qword [ebp - 0x448], xmm0
movsd xmm0, qword [0xae7218]
movsd qword [ebp - 0x440], xmm0
movsd xmm0, qword [ebp - 0x408]
subsd xmm0, qword [ebp - 0x440]
movsd qword [ebp - 0x408], xmm0
movsd xmm0, qword [ebp - 0x448]
mulsd xmm0, qword [ebp - 0x440]
movsd qword [ebp - 0x448], xmm0
movsd xmm0, qword [ebp - 0x408]
subsd xmm0, qword [ebp - 0x440]
movsd qword [ebp - 0x408], xmm0
movsd xmm0, qword [ebp - 0x448]
comisd xmm0, xmmword [ebp - 0x408]
jbe 0x51b85b
movsd xmm0, qword [ebp - 0x408]
addsd xmm0, qword [ebp - 0x440]
movsd qword [ebp - 0x408], xmm0
movsd xmm0, qword [ebp - 0x448]
subsd xmm0, qword [ebp - 0x408]
movsd qword [ebp - 0x448], xmm0
movsd xmm0, qword [ebp - 0x440]
subsd xmm0, qword [ebp - 0x448]
movsd qword [ebp - 0x440], xmm0
movzx eax, byte [ebp - 0x243]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp - 0x244], al
jmp 0x51b8a3
movsd xmm0, qword [ebp - 0x448]
divsd xmm0, qword [ebp - 0x408]
movsd qword [ebp - 0x448], xmm0
movsd xmm0, qword [ebp - 0x440]
divsd xmm0, qword [ebp - 0x448]
movsd qword [ebp - 0x440], xmm0
movsd xmm0, qword [ebp - 0x408]
mulsd xmm0, qword [ebp - 0x440]
movsd qword [ebp - 0x408], xmm0
movzx eax, byte [ebp - 0x23d]
movzx eax, byte [ebp + eax - 0x720]
mov dword [ebp - 0x798], eax
mov al, byte [ebp - 0x23d]
add al, 1
mov byte [ebp - 0x23d], al
movzx eax, byte [ebp - 0x23e]
add eax, dword [ebp - 0x798]
mov byte [ebp - 0x23e], al
movzx eax, byte [ebp - 0x23e]
movzx ecx, byte [ebp - 0x243]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movzx eax, byte [ebp - 0x23f]
movzx ecx, byte [ebp - 0x23e]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movzx eax, byte [ebp - 0x23d]
movzx ecx, byte [ebp - 0x23f]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movzx eax, byte [ebp - 0x23d]
mov cl, byte [ebp - 0x244]
mov byte [ebp + eax - 0x720], cl
movzx eax, byte [ebp - 0x244]
movzx eax, byte [ebp + eax - 0x720]
movzx ecx, byte [ebp - 0x245]
add ecx, eax
mov byte [ebp - 0x245], cl
movzx eax, byte [ebp - 0x246]
movzx ecx, byte [ebp - 0x23e]
movzx ecx, byte [ebp + ecx - 0x720]
movzx edx, byte [ebp - 0x23d]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x720]
xor eax, ecx
movzx ecx, byte [ebp - 0x23f]
movzx ecx, byte [ebp + ecx - 0x720]
movzx edx, byte [ebp - 0x243]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
movzx edx, byte [ebp - 0x245]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x720]
movzx ecx, byte [ebp + ecx - 0x720]
xor eax, ecx
mov byte [ebp - 0x23f], al
mov al, byte [ebp - 0x246]
mov byte [ebp - 0x243], al
mov al, byte [ebp - 0x23f]
mov byte [ebp - 0x24d], al
cmp dword [ebp - 0x254], 0
jle 0x51ba16
mov eax, dword [ebp - 0x254]
mov cl, byte [ebp - 0x24d]
mov byte [ebp + eax - 0x1d], cl
mov eax, dword [ebp - 0x28c]
inc eax
inc eax
mov dword [ebp - 0x28c], eax
mov eax, dword [ebp - 0x254]
inc eax
mov dword [ebp - 0x4e0], eax
jmp 0x51ba40
mov eax, dword [ebp - 0x4e0]
inc eax
mov dword [ebp - 0x4e0], eax
mov eax, dword [ebp - 0x4e0]
cmp eax, dword [ebp - 0x28c]
jge 0x51becf
mov eax, dword [ebp - 0x254]
inc eax
mov dword [ebp - 0x254], eax
mov eax, dword [ebp - 0x254]
shl eax, 1
mov dword [ebp - 0x2b0], eax
mov eax, dword [ebp - 0x2b4]
add eax, dword [ebp - 0x2b0]
movzx eax, byte [eax]
mov dword [ebp - 0x298], eax
mov dword [ebp - 0x29c], 0xec
mov eax, dword [ebp - 0x254]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x2b8], eax
mov eax, dword [ebp - 0x2b4]
add eax, dword [ebp - 0x2b8]
movzx eax, byte [eax]
mov dword [ebp - 0x2a0], eax
mov dword [ebp - 0x2a4], 0x51
mov eax, dword [ebp - 0x298]
sub eax, dword [ebp - 0x29c]
mov dword [ebp - 0x2a8], eax
mov eax, dword [ebp - 0x2a0]
sub eax, dword [ebp - 0x2a4]
mov dword [ebp - 0x2ac], eax
mov eax, dword [ebp - 0x2a8]
shl eax, 4
mov dword [ebp - 0x2bc], eax
mov eax, dword [ebp - 0x2ac]
mov dword [ebp - 0x2c0], eax
mov eax, dword [ebp - 0x2bc]
or eax, dword [ebp - 0x2c0]
mov dword [ebp - 0x2c4], eax
movsd xmm0, qword [0xaf1a90]
movsd qword [ebp - 0x4d4], xmm0
movsd xmm0, qword [0xaf0358]
movsd qword [ebp - 0x428], xmm0
movsd xmm0, qword [0xaee000]
movsd qword [ebp - 0x498], xmm0
movsd xmm0, qword [0xaeb960]
movsd qword [ebp - 0x400], xmm0
movsd xmm0, qword [0xae9268]
movsd qword [ebp - 0x4dc], xmm0
movsd xmm0, qword [0xae5880]
movsd qword [ebp - 0x3b8], xmm0
movsd xmm0, qword [ebp - 0x498]
addsd xmm0, qword [ebp - 0x3b8]
movsd qword [ebp - 0x498], xmm0
movsd xmm0, qword [ebp - 0x4d4]
addsd xmm0, qword [ebp - 0x3b8]
movsd qword [ebp - 0x4d4], xmm0
movsd xmm0, qword [ebp - 0x428]
subsd xmm0, qword [ebp - 0x3b8]
movsd qword [ebp - 0x428], xmm0
movsd xmm0, qword [ebp - 0x400]
addsd xmm0, qword [ebp - 0x3b8]
movsd qword [ebp - 0x400], xmm0
movsd xmm0, qword [ebp - 0x4d4]
mulsd xmm0, qword [ebp - 0x3b8]
movsd qword [ebp - 0x4d4], xmm0
movsd xmm0, qword [ebp - 0x400]
mulsd xmm0, qword [ebp - 0x3b8]
movsd qword [ebp - 0x400], xmm0
movsd xmm0, qword [ebp - 0x4d4]
comisd xmm0, xmmword [ebp - 0x3b8]
jbe 0x51bcb3
movsd xmm0, qword [ebp - 0x4dc]
subsd xmm0, qword [ebp - 0x4d4]
movsd qword [ebp - 0x4dc], xmm0
movsd xmm0, qword [ebp - 0x428]
mulsd xmm0, qword [ebp - 0x400]
movsd qword [ebp - 0x428], xmm0
movsd xmm0, qword [ebp - 0x3b8]
subsd xmm0, qword [ebp - 0x428]
movsd qword [ebp - 0x3b8], xmm0
movsd xmm0, qword [ebp - 0x400]
mulsd xmm0, qword [ebp - 0x3b8]
movsd qword [ebp - 0x400], xmm0
movsd xmm0, qword [ebp - 0x428]
addsd xmm0, qword [ebp - 0x400]
movsd qword [ebp - 0x428], xmm0
movsd xmm0, qword [ebp - 0x498]
addsd xmm0, qword [ebp - 0x4dc]
movsd qword [ebp - 0x498], xmm0
mov al, byte [ebp - 0x2c4]
mov byte [ebp - 0x246], al
jmp 0x51bd43
movsd xmm0, qword [ebp - 0x4dc]
addsd xmm0, qword [ebp - 0x4d4]
movsd qword [ebp - 0x4dc], xmm0
movsd xmm0, qword [ebp - 0x498]
addsd xmm0, qword [ebp - 0x4dc]
movsd qword [ebp - 0x498], xmm0
movsd xmm0, qword [ebp - 0x498]
subsd xmm0, qword [ebp - 0x4dc]
movsd qword [ebp - 0x498], xmm0
movsd xmm0, qword [ebp - 0x428]
mulsd xmm0, qword [ebp - 0x400]
movsd qword [ebp - 0x428], xmm0
movsd xmm0, qword [ebp - 0x3b8]
addsd xmm0, qword [ebp - 0x428]
movsd qword [ebp - 0x3b8], xmm0
movsd xmm0, qword [ebp - 0x400]
mulsd xmm0, qword [ebp - 0x3b8]
movsd qword [ebp - 0x400], xmm0
movzx eax, byte [ebp - 0x243]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp - 0x244], al
movzx eax, byte [ebp - 0x23d]
movzx eax, byte [ebp + eax - 0x720]
mov dword [ebp - 0x794], eax
mov al, byte [ebp - 0x23d]
add al, 1
mov byte [ebp - 0x23d], al
movzx eax, byte [ebp - 0x23e]
add eax, dword [ebp - 0x794]
mov byte [ebp - 0x23e], al
movzx eax, byte [ebp - 0x23e]
movzx ecx, byte [ebp - 0x243]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movzx eax, byte [ebp - 0x23f]
movzx ecx, byte [ebp - 0x23e]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movzx eax, byte [ebp - 0x23d]
movzx ecx, byte [ebp - 0x23f]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movzx eax, byte [ebp - 0x23d]
mov cl, byte [ebp - 0x244]
mov byte [ebp + eax - 0x720], cl
movzx eax, byte [ebp - 0x244]
movzx eax, byte [ebp + eax - 0x720]
movzx ecx, byte [ebp - 0x245]
add ecx, eax
mov byte [ebp - 0x245], cl
movzx eax, byte [ebp - 0x246]
movzx ecx, byte [ebp - 0x23e]
movzx ecx, byte [ebp + ecx - 0x720]
movzx edx, byte [ebp - 0x23d]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x720]
xor eax, ecx
movzx ecx, byte [ebp - 0x23f]
movzx ecx, byte [ebp + ecx - 0x720]
movzx edx, byte [ebp - 0x243]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
movzx edx, byte [ebp - 0x245]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x720]
movzx ecx, byte [ebp + ecx - 0x720]
xor eax, ecx
mov byte [ebp - 0x23f], al
mov al, byte [ebp - 0x246]
mov byte [ebp - 0x243], al
mov al, byte [ebp - 0x23f]
mov byte [ebp - 0x24d], al
cmp dword [ebp - 0x254], 0
jle 0x51beca
mov eax, dword [ebp - 0x254]
mov cl, byte [ebp - 0x24d]
mov byte [ebp + eax - 0x1d], cl
jmp 0x51ba33
mov eax, dword [ebp - 0x28c]
inc eax
mov dword [ebp - 0x28c], eax
movss xmm0, dword [0xaf96c8]
movss dword [ebp - 0x35c], xmm0
movss xmm0, dword [0xaf8040]
movss dword [ebp - 0x324], xmm0
movss xmm0, dword [0xaf52a4]
movss dword [ebp - 0x2ec], xmm0
movss xmm0, dword [ebp - 0x324]
addss xmm0, dword [ebp - 0x2ec]
movss dword [ebp - 0x324], xmm0
movss xmm0, dword [ebp - 0x324]
subss xmm0, dword [ebp - 0x2ec]
movss dword [ebp - 0x324], xmm0
movss xmm0, dword [ebp - 0x35c]
mulss xmm0, dword [ebp - 0x2ec]
movss dword [ebp - 0x35c], xmm0
movss xmm0, dword [ebp - 0x35c]
comiss xmm0, dword [ebp - 0x2ec]
jbe 0x51bfbc
movss xmm0, dword [ebp - 0x2ec]
mulss xmm0, dword [ebp - 0x35c]
movss dword [ebp - 0x2ec], xmm0
movss xmm0, dword [ebp - 0x35c]
mulss xmm0, dword [ebp - 0x324]
movss dword [ebp - 0x35c], xmm0
movss xmm0, dword [ebp - 0x2ec]
subss xmm0, dword [ebp - 0x35c]
movss dword [ebp - 0x2ec], xmm0
mov eax, dword [ebp - 0x254]
inc eax
mov dword [ebp - 0x254], eax
jmp 0x51c004
movss xmm0, dword [ebp - 0x2ec]
addss xmm0, dword [ebp - 0x324]
movss dword [ebp - 0x2ec], xmm0
movss xmm0, dword [ebp - 0x2ec]
mulss xmm0, dword [ebp - 0x324]
movss dword [ebp - 0x2ec], xmm0
movss xmm0, dword [ebp - 0x324]
mulss xmm0, dword [ebp - 0x35c]
movss dword [ebp - 0x324], xmm0
mov eax, dword [ebp - 0x28c]
inc eax
mov dword [ebp - 0x28c], eax
mov eax, dword [ebp - 0x254]
shl eax, 1
mov dword [ebp - 0x2b0], eax
mov eax, dword [ebp - 0x2b4]
add eax, dword [ebp - 0x2b0]
movzx eax, byte [eax]
mov dword [ebp - 0x298], eax
mov dword [ebp - 0x29c], 0xec
mov eax, dword [ebp - 0x254]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x2b8], eax
mov eax, dword [ebp - 0x2b4]
add eax, dword [ebp - 0x2b8]
movzx eax, byte [eax]
mov dword [ebp - 0x2a0], eax
mov dword [ebp - 0x2a4], 0x51
mov eax, dword [ebp - 0x298]
sub eax, dword [ebp - 0x29c]
mov dword [ebp - 0x2a8], eax
mov eax, dword [ebp - 0x2a0]
sub eax, dword [ebp - 0x2a4]
mov dword [ebp - 0x2ac], eax
mov eax, dword [ebp - 0x2a8]
shl eax, 4
mov dword [ebp - 0x2bc], eax
mov eax, dword [ebp - 0x2ac]
mov dword [ebp - 0x2c0], eax
mov eax, dword [ebp - 0x2bc]
or eax, dword [ebp - 0x2c0]
mov dword [ebp - 0x2c4], eax
mov al, byte [ebp - 0x2c4]
mov byte [ebp - 0x246], al
movzx eax, byte [ebp - 0x243]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp - 0x244], al
movzx eax, byte [ebp - 0x23d]
movzx eax, byte [ebp + eax - 0x720]
mov dword [ebp - 0x790], eax
mov al, byte [ebp - 0x23d]
add al, 1
mov byte [ebp - 0x23d], al
movzx eax, byte [ebp - 0x23e]
add eax, dword [ebp - 0x790]
mov byte [ebp - 0x23e], al
movzx eax, byte [ebp - 0x23e]
movzx ecx, byte [ebp - 0x243]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movzx eax, byte [ebp - 0x23f]
movzx ecx, byte [ebp - 0x23e]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movzx eax, byte [ebp - 0x23d]
movzx ecx, byte [ebp - 0x23f]
mov al, byte [ebp + eax - 0x720]
mov byte [ebp + ecx - 0x720], al
movzx eax, byte [ebp - 0x23d]
mov cl, byte [ebp - 0x244]
mov byte [ebp + eax - 0x720], cl
movzx eax, byte [ebp - 0x244]
movzx eax, byte [ebp + eax - 0x720]
movzx ecx, byte [ebp - 0x245]
add ecx, eax
mov byte [ebp - 0x245], cl
movzx eax, byte [ebp - 0x246]
movzx ecx, byte [ebp - 0x23e]
movzx ecx, byte [ebp + ecx - 0x720]
movzx edx, byte [ebp - 0x23d]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x720]
xor eax, ecx
movzx ecx, byte [ebp - 0x23f]
movzx ecx, byte [ebp + ecx - 0x720]
movzx edx, byte [ebp - 0x243]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
movzx edx, byte [ebp - 0x245]
movzx edx, byte [ebp + edx - 0x720]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x720]
movzx ecx, byte [ebp + ecx - 0x720]
xor eax, ecx
mov byte [ebp - 0x23f], al
mov al, byte [ebp - 0x246]
mov byte [ebp - 0x243], al
mov al, byte [ebp - 0x23f]
mov byte [ebp - 0x24d], al
cmp dword [ebp - 0x254], 0
jle 0x51c251
mov eax, dword [ebp - 0x254]
mov cl, byte [ebp - 0x24d]
mov byte [ebp + eax - 0x1d], cl
xor eax, eax
inc eax
shl eax, 3
mov dword [ebp - 0x604], eax
cmp dword [ebp - 0x604], 9
jae 0x51c268
jmp 0x51c26d
call fcn.00a9b8a9
mov eax, dword [ebp - 0x604]
mov byte [ebp + eax - 0x1c], 0
jmp 0x51c2c2
and dword [ebp - 0x464], 0
jmp 0x51c290
mov eax, dword [ebp - 0x464]
inc eax
mov dword [ebp - 0x464], eax
cmp dword [ebp - 0x464], 9
jge 0x51c2c2
mov eax, dword [ebp - 0x464]
mov dword [ebp - 0x608], eax
cmp dword [ebp - 0x608], 9
jae 0x51c2b0
jmp 0x51c2b5
call fcn.00a9b8a9
mov eax, dword [ebp - 0x608]
mov byte [ebp + eax - 0x1c], 0
jmp 0x51c283
mov eax, dword [ebp - 0x4ac]
mov eax, dword [eax + 0x44]
mov dword [ebp - 0x7ac], eax
lea eax, [ebp - 0x1c]
push eax
mov ecx, dword [ebp - 0x7ac]
call fcn.0044f4dc
mov dword [ebp - 0x7b4], eax
mov eax, dword [ebp - 0x7b4]
mov dword [ebp - 0x7b0], eax
push 0
lea eax, [ebp - 0x228]
push eax
push dword [ebp - 0x4b4]
push dword [ebp - 0x2f0]
push dword [ebp - 0x474]
call dword [ebp - 0x7b0]
test eax, eax
je 0x51c444
or dword [ebp - 0x470], 0xffffffff
mov byte [ebp - 0x2fd], 0
mov byte [ebp - 0x2ca], 0
cmp dword [ebp - 0x228], 0x100
jbe 0x51c41e
xor eax, eax
inc eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x2f0]
movzx eax, byte [ecx + eax]
cmp eax, 0x4d
jne 0x51c378
xor eax, eax
inc eax
shl eax, 0
mov ecx, dword [ebp - 0x2f0]
movzx eax, byte [ecx + eax]
cmp eax, 0x5a
jne 0x51c378
mov byte [ebp - 0x2ca], 1
and dword [ebp - 0x470], 0
xor eax, eax
inc eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x2f0]
movzx eax, byte [ecx + eax]
cmp eax, 0xd0
jne 0x51c3e2
xor eax, eax
inc eax
shl eax, 0
mov ecx, dword [ebp - 0x2f0]
movzx eax, byte [ecx + eax]
cmp eax, 0xcf
jne 0x51c3e2
xor eax, eax
inc eax
shl eax, 1
mov ecx, dword [ebp - 0x2f0]
movzx eax, byte [ecx + eax]
cmp eax, 0x11
jne 0x51c3e2
xor eax, eax
inc eax
imul eax, eax, 3
mov ecx, dword [ebp - 0x2f0]
movzx eax, byte [ecx + eax]
cmp eax, 0xe0
jne 0x51c3e2
mov byte [ebp - 0x2ca], 1
mov dword [ebp - 0x470], 1
and dword [ebp - 0x60c], 0
cmp dword [ebp - 0x470], 0
jne 0x51c41e
mov edx, dword [ebp - 0x228]
mov ecx, dword [ebp - 0x2f0]
call fcn.0051c517
mov dword [ebp - 0x60c], eax
xor eax, eax
cmp dword [ebp - 0x60c], 0x1000
sete al
mov byte [ebp - 0x2fd], al
movzx eax, byte [ebp - 0x2ca]
test eax, eax
je 0x51c444
movzx eax, byte [ebp - 0x2fd]
test eax, eax
je 0x51c444
cmp dword [ebp - 0x470], 0
jne 0x51c444
mov byte [ebp - 0x2c9], 1
mov eax, dword [ebp - 0x4b4]
mov dword [ebp - 0x4c4], eax
mov eax, dword [ebp - 0x2f0]
mov dword [ebp - 0x4b8], eax
cmp dword [ebp - 0x4c4], 0
je 0x51c48a
mov eax, dword [ebp - 0x4b8]
mov byte [eax], 0
mov eax, dword [ebp - 0x4b8]
inc eax
mov dword [ebp - 0x4b8], eax
mov eax, dword [ebp - 0x4c4]
dec eax
mov dword [ebp - 0x4c4], eax
jmp 0x51c45c
mov eax, dword [ebp - 0x2f0]
mov dword [ebp - 0x620], eax
push dword [ebp - 0x620]
call fcn.00a9b581
pop ecx
cmp dword [ebp - 0x620], 0
jne 0x51c4b4
and dword [ebp - 0x7b8], 0
jmp 0x51c4ca
mov dword [ebp - 0x2f0], 0x8123
mov eax, dword [ebp - 0x2f0]
mov dword [ebp - 0x7b8], eax
push dword [ebp - 0x474]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x51c500
mov dword [ebp - 0x724], 0xbb8
lea eax, [ebp - 0x724]
push eax
lea ecx, [ebp - 0x7c4]
call fcn.0051c535
mov ecx, eax
call fcn.0051c549
jmp 0x516bae
mov al, byte [ebp - 0x2c9]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00a9b573
leave
ret 4