Function at 0x5133a0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
loopne 0x50305a
invalid
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x52d04d
mov eax, dword fs:[0]
push eax
sub esp, 0x510
mov eax, dword [0x5cc280]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x508], ecx
push 0xc
lea ecx, [ebp - 0x90]
call fcn.004aa380
lea ecx, [ebp - 0x90]
call fcn.004e6760
mov dword [ebp - 4], 0
push 0x48
call fcn.0051d8c5
add esp, 4
mov dword [ebp - 0x2a4], eax
mov byte [ebp - 4], 1
cmp dword [ebp - 0x2a4], 0
je 0x51360f
mov byte [ebp - 0x288], 0xbf
mov byte [ebp - 0x287], 0xbb
mov byte [ebp - 0x286], 0xa8
mov byte [ebp - 0x285], 0x24
mov byte [ebp - 0x284], 0x54
mov byte [ebp - 0x283], 0x32
mov byte [ebp - 0x282], 0xc3
mov byte [ebp - 0x281], 0xe4
mov byte [ebp - 0x280], 0xff
mov byte [ebp - 0x27f], 0xcd
mov byte [ebp - 0x27e], 0x2a
mov byte [ebp - 0x27d], 0x5f
mov byte [ebp - 0x27c], 0x2e
mov byte [ebp - 0x27b], 0xf2
mov byte [ebp - 0x27a], 0xf3
mov byte [ebp - 0x279], 0xc
mov byte [ebp - 0x278], 0x4c
mov byte [ebp - 0x277], 0x60
mov byte [ebp - 0x276], 0x94
mov byte [ebp - 0x275], 0xad
mov byte [ebp - 0x274], 0x5b
mov byte [ebp - 0x273], 0x49
mov byte [ebp - 0x272], 0x50
mov byte [ebp - 0x271], 0xfa
mov byte [ebp - 0x270], 0x8d
mov byte [ebp - 0x26f], 0x92
mov byte [ebp - 0x26e], 0xba
mov byte [ebp - 0x26d], 0
mov byte [ebp - 0x26c], 0x41
mov byte [ebp - 0x26b], 0x11
mov byte [ebp - 0x26a], 0xee
mov byte [ebp - 0x269], 0xa1
mov byte [ebp - 0x268], 0x4b
mov byte [ebp - 0x267], 0xe4
mov byte [ebp - 0x266], 0x8b
mov byte [ebp - 0x265], 0x6a
mov byte [ebp - 0x264], 0x92
mov byte [ebp - 0x263], 0xbc
mov byte [ebp - 0x262], 0x6d
mov byte [ebp - 0x261], 0x9b
mov byte [ebp - 0x260], 0x52
mov byte [ebp - 0x25f], 0x6a
mov byte [ebp - 0x25e], 0x50
mov byte [ebp - 0x25d], 0x62
mov byte [ebp - 0x25c], 0x6c
mov byte [ebp - 0x25b], 0x62
mov byte [ebp - 0x25a], 0xec
mov byte [ebp - 0x259], 0x5b
mov byte [ebp - 0x258], 0x43
mov byte [ebp - 0x257], 0xc5
mov byte [ebp - 0x256], 0x73
mov byte [ebp - 0x255], 0x5b
mov byte [ebp - 0x254], 0x69
mov byte [ebp - 0x253], 0x30
mov byte [ebp - 0x252], 0xbe
mov byte [ebp - 0x251], 0x79
mov byte [ebp - 0x250], 0xf4
mov byte [ebp - 0x24f], 0x5e
mov byte [ebp - 0x24e], 0x90
mov byte [ebp - 0x24d], 0x2e
mov byte [ebp - 0x24c], 0x3b
mov byte [ebp - 0x24b], 0x3a
mov byte [ebp - 0x24a], 0xef
mov byte [ebp - 0x249], 0x54
push 0
push 1
sub esp, 0x20
mov ecx, 8
lea esi, [ebp - 0x288]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
sub esp, 0x20
mov ecx, 8
lea esi, [ebp - 0x268]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0x2a4]
call fcn.005051d0
mov dword [ebp - 0x2c0], eax
jmp 0x513619
mov dword [ebp - 0x2c0], 0
mov eax, dword [ebp - 0x2c0]
mov dword [ebp - 0x4ec], eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x4ec]
mov dword [ebp - 0x518], ecx
lea edx, [ebp - 0x518]
push edx
lea ecx, [ebp - 0x90]
call fcn.00503e70
nop
mov dword [ebp - 0xb4], 0
mov dword [ebp - 0xb0], 0
xorps xmm0, xmm0
movsd qword [ebp - 0x21c], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x210], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x210], xmm0
jmp 0x513697
movsd xmm0, qword [ebp - 0x210]
addsd xmm0, qword [0x52f8c0]
movsd qword [ebp - 0x210], xmm0
movsd xmm0, qword [0x532748]
comisd xmm0, xmmword [ebp - 0x210]
jbe 0x513748
movsd xmm0, qword [0x5326b8]
mulsd xmm0, qword [ebp - 0x210]
mulsd xmm0, qword [ebp - 0x210]
movsd xmm1, qword [ebp - 0x210]
mulsd xmm1, qword [ebp - 0x210]
subsd xmm0, xmm1
movsd xmm1, qword [0x5325e8]
mulsd xmm1, qword [ebp - 0x210]
mulsd xmm1, qword [ebp - 0x210]
addsd xmm1, qword [0x532608]
divsd xmm0, xmm1
addsd xmm0, qword [ebp - 0x21c]
movsd qword [ebp - 0x21c], xmm0
movsd xmm0, qword [ebp - 0x21c]
comisd xmm0, xmmword [0x532640]
jbe 0x513743
movsd xmm0, qword [0x5325b0]
mulsd xmm0, qword [ebp - 0x210]
movsd xmm1, qword [ebp - 0x21c]
subsd xmm1, xmm0
movsd qword [ebp - 0x21c], xmm1
jmp 0x51367f
xorps xmm0, xmm0
comisd xmm0, xmmword [ebp - 0x21c]
jbe 0x513783
inc esi
push ebp
push esp
and byte cs:[eax + 0x2f], cl
push edx
jl 0x5137db
jo 0x5137bd
dec eax
sub eax, 0x2c237450
inc ecx
push esi
fmul dword [edi - 0x1f]
pop eax
fmul qword [ebx - 0x1f]
dec ebx
fstp qword [eax - 0x25]
dec esi
in al, 0x51
fmul qword [ecx + ebx*8 + 0x53]
fimul word [ebx - 0x23]
jmp 0x5160b4
mov dword [ebp - 0xb4], 0x513768
mov dword [ebp - 0xb0], 0x513755
mov eax, dword [ebp - 0xb4]
mov dword [ebp - 0x134], eax
mov ecx, dword [ebp - 0xb0]
mov dword [ebp - 0x504], ecx
mov byte [ebp - 0x1a6], 0x17
mov dword [ebp - 0x108], 0
jmp 0x5137d1
add byte [eax], al
add bl, ch
jnp 0x50305c
mov edx, dword [ebp - 0x108]
add edx, 1
mov dword [ebp - 0x108], edx
inc dword [ebx - 0x6a76fe3e]
clc
invalid
cmp dword [ebp - 0x108], 0x100
jae 0x5137f2
mov eax, dword [ebp - 0x108]
mov cl, byte [ebp - 0x108]
mov byte [ebp + eax - 0x3c8], cl
jmp 0x5137c2
mov dword [ebp - 0x1f4], 0
mov byte [ebp - 0xc8], 0
mov dword [ebp - 0x108], 0xff
jmp 0x51381e
mov edx, dword [ebp - 0x108]
sub edx, 1
mov dword [ebp - 0x108], edx
cmp dword [ebp - 0x108], 0
jbe 0x513a8e
mov dword [ebp - 0x28c], 0
mov dword [ebp - 0x230], 1
mov eax, dword [ebp - 0x230]
cmp eax, dword [ebp - 0x108]
jae 0x51385f
mov ecx, dword [ebp - 0x230]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x230], edx
jmp 0x51383f
mov eax, dword [ebp - 0x1f4]
mov dword [ebp - 0x2bc], eax
cmp dword [ebp - 0x2bc], 3
ja case.default.0x51387e
mov ecx, dword [ebp - 0x2bc]
jmp dword [ecx*4 + 0x517fac]
movzx edx, byte [ebp - 0xc8]
movzx ebx, byte [ebp + edx - 0x3c8]
movsd xmm0, qword [ebp - 0x21c]
call fcn.0051dea0
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xc8], bl
jmp 0x513967
movzx eax, byte [ebp - 0xc8]
movzx ebx, byte [ebp + eax - 0x3c8]
movsd xmm0, qword [ebp - 0x21c]
call fcn.0051dea0
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xc8], bl
jmp 0x513967
movzx ecx, byte [ebp - 0xc8]
movzx ebx, byte [ebp + ecx - 0x3c8]
movsd xmm0, qword [ebp - 0x21c]
call fcn.0051dea0
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xc8], bl
jmp 0x513967
movzx edx, byte [ebp - 0xc8]
movzx ebx, byte [ebp + edx - 0x3c8]
movsd xmm0, qword [ebp - 0x21c]
call fcn.0051dea0
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xc8], bl
jmp 0x513967
movzx eax, byte [ebp - 0xc8]
movzx ecx, byte [ebp + eax - 0x3c8]
mov edx, dword [ebp - 0x504]
add edx, dword [ebp - 0x1f4]
movzx eax, byte [edx - 4]
add ecx, eax
mov byte [ebp - 0xc8], cl
mov ecx, dword [ebp - 0x1f4]
add ecx, 1
mov dword [ebp - 0x1f4], ecx
movzx edx, byte [ebp - 0x1a6]
cmp dword [ebp - 0x1f4], edx
jb 0x5139a5
mov dword [ebp - 0x1f4], 0
movzx eax, byte [ebp - 0x1a6]
movzx ecx, byte [ebp - 0xc8]
add ecx, eax
mov byte [ebp - 0xc8], cl
movzx edx, byte [ebp - 0xc8]
and edx, dword [ebp - 0x230]
mov dword [ebp - 0x1e0], edx
mov eax, dword [ebp - 0x28c]
add eax, 1
mov dword [ebp - 0x28c], eax
cmp dword [ebp - 0x28c], 0xb
jbe 0x5139e4
mov eax, dword [ebp - 0x1e0]
xor edx, edx
div dword [ebp - 0x108]
mov dword [ebp - 0x1e0], edx
mov ecx, dword [ebp - 0x1e0]
cmp ecx, dword [ebp - 0x108]
ja 0x51385f
mov edx, dword [ebp - 0x108]
cmp edx, dword [ebp - 0x1e0]
je 0x513a89
mov eax, dword [ebp - 0x1e0]
movzx ecx, byte [ebp + eax - 0x3c8]
mov edx, dword [ebp - 0x108]
movzx eax, byte [ebp + edx - 0x3c8]
xor eax, ecx
mov ecx, dword [ebp - 0x108]
mov byte [ebp + ecx - 0x3c8], al
mov edx, dword [ebp - 0x108]
movzx eax, byte [ebp + edx - 0x3c8]
mov ecx, dword [ebp - 0x1e0]
movzx edx, byte [ebp + ecx - 0x3c8]
xor edx, eax
mov eax, dword [ebp - 0x1e0]
mov byte [ebp + eax - 0x3c8], dl
mov ecx, dword [ebp - 0x1e0]
movzx edx, byte [ebp + ecx - 0x3c8]
mov eax, dword [ebp - 0x108]
movzx ecx, byte [ebp + eax - 0x3c8]
xor ecx, edx
mov edx, dword [ebp - 0x108]
mov byte [ebp + edx - 0x3c8], cl
jmp 0x51380f
mov eax, 1
shl eax, 0
mov cl, byte [ebp + eax - 0x3c8]
mov byte [ebp - 0xb9], cl
mov edx, 1
imul eax, edx, 3
mov cl, byte [ebp + eax - 0x3c8]
mov byte [ebp - 0xbb], cl
mov edx, 1
imul eax, edx, 5
mov cl, byte [ebp + eax - 0x3c8]
mov byte [ebp - 0xc2], cl
mov edx, 1
imul eax, edx, 7
mov cl, byte [ebp + eax - 0x3c8]
mov byte [ebp - 0xbc], cl
movzx edx, byte [ebp - 0xc8]
mov al, byte [ebp + edx - 0x3c8]
mov byte [ebp - 0xbf], al
mov dword [ebp - 0x2c8], 0x16
cmp dword [ebp - 0x2c8], 2
jle 0x516062
mov ecx, dword [ebp - 0x2c8]
and ecx, 1
jne 0x516062
mov dword [ebp - 0xd0], 0
mov dword [ebp - 0xfc], 0
mov edx, dword [ebp - 0xfc]
add edx, 1
mov dword [ebp - 0xfc], edx
mov dword [ebp - 0x130], 0
mov eax, dword [ebp - 0xd0]
shl eax, 1
mov dword [ebp - 0x130], eax
mov dword [ebp - 0x128], 0
mov ecx, dword [ebp - 0x134]
add ecx, dword [ebp - 0x130]
movzx edx, byte [ecx]
add edx, dword [ebp - 0x128]
mov dword [ebp - 0x128], edx
mov dword [ebp - 0x12c], 0
mov eax, dword [ebp - 0x12c]
add eax, 0x4a
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x138], 0
mov ecx, dword [ebp - 0xd0]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x138], edx
mov dword [ebp - 0x118], 0
mov eax, dword [ebp - 0x134]
add eax, dword [ebp - 0x138]
movzx ecx, byte [eax]
add ecx, dword [ebp - 0x118]
mov dword [ebp - 0x118], ecx
mov dword [ebp - 0x124], 0
mov edx, dword [ebp - 0x124]
add edx, 0xd8
mov dword [ebp - 0x124], edx
mov dword [ebp - 0x11c], 0
mov eax, dword [ebp - 0x128]
sub eax, dword [ebp - 0x12c]
add eax, dword [ebp - 0x11c]
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x120], 0
mov ecx, dword [ebp - 0x118]
sub ecx, dword [ebp - 0x124]
add ecx, dword [ebp - 0x120]
mov dword [ebp - 0x120], ecx
mov dword [ebp - 0x13c], 0
mov edx, dword [ebp - 0x11c]
shl edx, 4
mov dword [ebp - 0x13c], edx
mov dword [ebp - 0x144], 0
movss xmm0, dword [0x532a74]
movss dword [ebp - 0xdc], xmm0
movss xmm0, dword [0x532a54]
movss dword [ebp - 0xec], xmm0
movss xmm0, dword [0x532a2c]
movss dword [ebp - 0xf8], xmm0
movss xmm0, dword [0x5329fc]
movss dword [ebp - 0xf4], xmm0
movss xmm0, dword [0x5329d0]
movss dword [ebp - 0xe4], xmm0
movss xmm0, dword [ebp - 0xec]
addss xmm0, dword [ebp - 0xe4]
movss dword [ebp - 0xec], xmm0
movss xmm0, dword [ebp - 0xdc]
subss xmm0, dword [ebp - 0xe4]
movss dword [ebp - 0xdc], xmm0
movss xmm0, dword [ebp - 0xec]
mulss xmm0, dword [ebp - 0xe4]
movss dword [ebp - 0xec], xmm0
movss xmm0, dword [ebp - 0xec]
mulss xmm0, dword [ebp - 0xe4]
movss dword [ebp - 0xec], xmm0
movss xmm0, dword [ebp - 0xec]
subss xmm0, dword [ebp - 0xe4]
movss dword [ebp - 0xec], xmm0
movss xmm0, dword [ebp - 0xe4]
comiss xmm0, dword [ebp - 0xec]
jbe 0x5140ab
movss xmm0, dword [ebp - 0xf8]
mulss xmm0, dword [ebp - 0xe4]
movss dword [ebp - 0xf8], xmm0
movss xmm0, dword [ebp - 0xf8]
divss xmm0, dword [ebp - 0xe4]
movss dword [ebp - 0xf8], xmm0
movss xmm0, dword [ebp - 0xdc]
addss xmm0, dword [ebp - 0xf8]
movss dword [ebp - 0xdc], xmm0
movss xmm0, dword [ebp - 0xdc]
divss xmm0, dword [ebp - 0xf8]
movss dword [ebp - 0xdc], xmm0
movss xmm0, dword [ebp - 0xdc]
addss xmm0, dword [ebp - 0xf8]
movss dword [ebp - 0xdc], xmm0
movss xmm0, dword [ebp - 0xf4]
addss xmm0, dword [ebp - 0xe4]
movss dword [ebp - 0xf4], xmm0
movss xmm0, dword [ebp - 0xf4]
mulss xmm0, dword [ebp - 0xe4]
movss dword [ebp - 0xf4], xmm0
movss xmm0, dword [ebp - 0xec]
subss xmm0, dword [ebp - 0xf8]
movss dword [ebp - 0xec], xmm0
movss xmm0, dword [ebp - 0xdc]
subss xmm0, dword [ebp - 0xec]
movss dword [ebp - 0xdc], xmm0
movss xmm0, dword [ebp - 0xe4]
subss xmm0, dword [ebp - 0xdc]
movss dword [ebp - 0xe4], xmm0
movss xmm0, dword [ebp - 0xec]
comiss xmm0, dword [ebp - 0xf4]
jbe 0x51402e
movss xmm0, dword [ebp - 0xdc]
addss xmm0, dword [ebp - 0xf8]
movss dword [ebp - 0xdc], xmm0
movss xmm0, dword [ebp - 0xdc]
addss xmm0, dword [ebp - 0xf8]
movss dword [ebp - 0xdc], xmm0
movss xmm0, dword [ebp - 0xdc]
subss xmm0, dword [ebp - 0xf8]
movss dword [ebp - 0xdc], xmm0
movss xmm0, dword [ebp - 0xec]
mulss xmm0, dword [ebp - 0xf4]
movss dword [ebp - 0xec], xmm0
movss xmm0, dword [ebp - 0xdc]
addss xmm0, dword [ebp - 0xf8]
movss dword [ebp - 0xdc], xmm0
movss xmm0, dword [ebp - 0xe4]
addss xmm0, dword [ebp - 0xdc]
movss dword [ebp - 0xe4], xmm0
movss xmm0, dword [ebp - 0xec]
mulss xmm0, dword [ebp - 0xf8]
movss dword [ebp - 0xec], xmm0
movss xmm0, dword [ebp - 0xe4]
subss xmm0, dword [ebp - 0xdc]
movss dword [ebp - 0xe4], xmm0
movss xmm0, dword [ebp - 0xf8]
divss xmm0, dword [ebp - 0xf4]
movss dword [ebp - 0xf8], xmm0
movss xmm0, dword [ebp - 0xf4]
addss xmm0, dword [ebp - 0xe4]
movss dword [ebp - 0xf4], xmm0
movss xmm0, dword [ebp - 0xf4]
comiss xmm0, dword [ebp - 0xdc]
jbe 0x513fb4
movss xmm0, dword [ebp - 0xec]
mulss xmm0, dword [ebp - 0xf4]
movss dword [ebp - 0xec], xmm0
movss xmm0, dword [ebp - 0xe4]
divss xmm0, dword [ebp - 0xec]
movss dword [ebp - 0xe4], xmm0
movss xmm0, dword [ebp - 0xf8]
divss xmm0, dword [ebp - 0xe4]
movss dword [ebp - 0xf8], xmm0
movss xmm0, dword [ebp - 0xf4]
divss xmm0, dword [ebp - 0xdc]
movss dword [ebp - 0xf4], xmm0
movss xmm0, dword [ebp - 0xec]
subss xmm0, dword [ebp - 0xf4]
movss dword [ebp - 0xec], xmm0
jmp 0x51402c
movss xmm0, dword [ebp - 0xe4]
mulss xmm0, dword [ebp - 0xdc]
movss dword [ebp - 0xe4], xmm0
movss xmm0, dword [ebp - 0xf4]
subss xmm0, dword [ebp - 0xe4]
movss dword [ebp - 0xf4], xmm0
movss xmm0, dword [ebp - 0xec]
addss xmm0, dword [ebp - 0xf8]
movss dword [ebp - 0xec], xmm0
movss xmm0, dword [ebp - 0xf4]
addss xmm0, dword [ebp - 0xe4]
movss dword [ebp - 0xf4], xmm0
movss xmm0, dword [ebp - 0xe4]
mulss xmm0, dword [ebp - 0xdc]
movss dword [ebp - 0xe4], xmm0
jmp 0x5140a6
movss xmm0, dword [ebp - 0xf8]
addss xmm0, dword [ebp - 0xe4]
movss dword [ebp - 0xf8], xmm0
movss xmm0, dword [ebp - 0xec]
mulss xmm0, dword [ebp - 0xf4]
movss dword [ebp - 0xec], xmm0
movss xmm0, dword [ebp - 0xf4]
mulss xmm0, dword [ebp - 0xdc]
movss dword [ebp - 0xf4], xmm0
movss xmm0, dword [ebp - 0xf4]
divss xmm0, dword [ebp - 0xdc]
movss dword [ebp - 0xf4], xmm0
movss xmm0, dword [ebp - 0xdc]
mulss xmm0, dword [ebp - 0xf8]
movss dword [ebp - 0xdc], xmm0
jmp 0x51412f
movss xmm0, dword [ebp - 0xf8]
addss xmm0, dword [ebp - 0xf4]
movss dword [ebp - 0xf8], xmm0
movss xmm0, dword [ebp - 0xe4]
addss xmm0, dword [ebp - 0xdc]
movss dword [ebp - 0xe4], xmm0
movss xmm0, dword [ebp - 0xdc]
mulss xmm0, dword [ebp - 0xec]
movss dword [ebp - 0xdc], xmm0
movss xmm0, dword [ebp - 0xf8]
subss xmm0, dword [ebp - 0xf4]
movss dword [ebp - 0xf8], xmm0
movss xmm0, dword [ebp - 0xdc]
mulss xmm0, dword [ebp - 0xec]
movss dword [ebp - 0xdc], xmm0
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x140], 0
mov ecx, dword [ebp - 0x13c]
or ecx, dword [ebp - 0x144]
mov dword [ebp - 0x140], ecx
mov byte [ebp - 0xc3], 0
mov dl, byte [ebp - 0x140]
mov byte [ebp - 0xc3], dl
mov byte [ebp - 0xc1], 0
movzx eax, byte [ebp - 0xbf]
mov cl, byte [ebp + eax - 0x3c8]
mov byte [ebp - 0xc1], cl
movzx edx, byte [ebp - 0xb9]
movzx eax, byte [ebp + edx - 0x3c8]
mov dword [ebp - 0x4e8], eax
mov cl, byte [ebp - 0xb9]
add cl, 1
mov byte [ebp - 0xb9], cl
movzx edx, byte [ebp - 0xbb]
add edx, dword [ebp - 0x4e8]
mov byte [ebp - 0xbb], dl
movzx eax, byte [ebp - 0xbb]
movzx ecx, byte [ebp - 0xbf]
mov dl, byte [ebp + eax - 0x3c8]
mov byte [ebp + ecx - 0x3c8], dl
movzx eax, byte [ebp - 0xbc]
movzx ecx, byte [ebp - 0xbb]
mov dl, byte [ebp + eax - 0x3c8]
mov byte [ebp + ecx - 0x3c8], dl
movzx eax, byte [ebp - 0xb9]
movzx ecx, byte [ebp - 0xbc]
mov dl, byte [ebp + eax - 0x3c8]
mov byte [ebp + ecx - 0x3c8], dl
movzx eax, byte [ebp - 0xb9]
mov cl, byte [ebp - 0xc1]
mov byte [ebp + eax - 0x3c8], cl
movzx edx, byte [ebp - 0xc1]
movzx eax, byte [ebp + edx - 0x3c8]
movzx ecx, byte [ebp - 0xc2]
add ecx, eax
mov byte [ebp - 0xc2], cl
movzx edx, byte [ebp - 0xc3]
movzx eax, byte [ebp - 0xbb]
movzx ecx, byte [ebp + eax - 0x3c8]
movzx eax, byte [ebp - 0xb9]
movzx eax, byte [ebp + eax - 0x3c8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x3c8]
xor edx, ecx
movzx eax, byte [ebp - 0xbc]
movzx ecx, byte [ebp + eax - 0x3c8]
movzx eax, byte [ebp - 0xbf]
movzx eax, byte [ebp + eax - 0x3c8]
add ecx, eax
movzx eax, byte [ebp - 0xc2]
movzx eax, byte [ebp + eax - 0x3c8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x3c8]
movzx eax, byte [ebp + ecx - 0x3c8]
xor edx, eax
mov byte [ebp - 0xbc], dl
mov cl, byte [ebp - 0xc3]
mov byte [ebp - 0xbf], cl
mov dl, byte [ebp - 0xbc]
mov byte [ebp - 0xc7], dl
cmp dword [ebp - 0xd0], 0
jle 0x5142f0
movsx ax, byte [ebp - 0xc7]
mov ecx, dword [ebp - 0xd0]
mov word [ebp + ecx*2 - 0x2a], ax
mov edx, dword [ebp - 0xd0]
add edx, 1
mov dword [ebp - 0xd0], edx
mov eax, dword [ebp - 0xfc]
add eax, 1
mov dword [ebp - 0xfc], eax
mov ecx, dword [ebp - 0xd0]
shl ecx, 1
mov dword [ebp - 0x130], ecx
mov edx, dword [ebp - 0x134]
add edx, dword [ebp - 0x130]
movzx eax, byte [edx]
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x12c], 0x4a
mov ecx, dword [ebp - 0xd0]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x138], edx
mov eax, dword [ebp - 0x134]
add eax, dword [ebp - 0x138]
movzx ecx, byte [eax]
mov dword [ebp - 0x118], ecx
mov dword [ebp - 0x124], 0xd8
mov edx, dword [ebp - 0x128]
sub edx, dword [ebp - 0x12c]
mov dword [ebp - 0x11c], edx
mov eax, dword [ebp - 0x118]
sub eax, dword [ebp - 0x124]
mov dword [ebp - 0x120], eax
mov ecx, dword [ebp - 0x11c]
shl ecx, 4
mov dword [ebp - 0x13c], ecx
mov edx, dword [ebp - 0x120]
mov dword [ebp - 0x144], edx
mov eax, dword [ebp - 0x13c]
or eax, dword [ebp - 0x144]
mov dword [ebp - 0x140], eax
mov cl, byte [ebp - 0x140]
mov byte [ebp - 0xc3], cl
movzx edx, byte [ebp - 0xbf]
mov al, byte [ebp + edx - 0x3c8]
mov byte [ebp - 0xc1], al
movzx ecx, byte [ebp - 0xb9]
movzx edx, byte [ebp + ecx - 0x3c8]
mov dword [ebp - 0x4f0], edx
mov al, byte [ebp - 0xb9]
add al, 1
mov byte [ebp - 0xb9], al
movzx ecx, byte [ebp - 0xbb]
add ecx, dword [ebp - 0x4f0]
mov byte [ebp - 0xbb], cl
movzx edx, byte [ebp - 0xbb]
movzx eax, byte [ebp - 0xbf]
mov cl, byte [ebp + edx - 0x3c8]
mov byte [ebp + eax - 0x3c8], cl
movzx edx, byte [ebp - 0xbc]
movzx eax, byte [ebp - 0xbb]
mov cl, byte [ebp + edx - 0x3c8]
mov byte [ebp + eax - 0x3c8], cl
movzx edx, byte [ebp - 0xb9]
movzx eax, byte [ebp - 0xbc]
mov cl, byte [ebp + edx - 0x3c8]
mov byte [ebp + eax - 0x3c8], cl
movzx edx, byte [ebp - 0xb9]
mov al, byte [ebp - 0xc1]
mov byte [ebp + edx - 0x3c8], al
movzx ecx, byte [ebp - 0xc1]
movzx edx, byte [ebp + ecx - 0x3c8]
movzx eax, byte [ebp - 0xc2]
add eax, edx
mov byte [ebp - 0xc2], al
movzx ecx, byte [ebp - 0xc3]
movzx edx, byte [ebp - 0xbb]
movzx eax, byte [ebp + edx - 0x3c8]
movzx edx, byte [ebp - 0xb9]
movzx edx, byte [ebp + edx - 0x3c8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x3c8]
xor ecx, eax
movzx edx, byte [ebp - 0xbc]
movzx eax, byte [ebp + edx - 0x3c8]
movzx edx, byte [ebp - 0xbf]
movzx edx, byte [ebp + edx - 0x3c8]
add eax, edx
movzx edx, byte [ebp - 0xc2]
movzx edx, byte [ebp + edx - 0x3c8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x3c8]
movzx edx, byte [ebp + eax - 0x3c8]
xor ecx, edx
mov byte [ebp - 0xbc], cl
mov al, byte [ebp - 0xc3]
mov byte [ebp - 0xbf], al
mov cl, byte [ebp - 0xbc]
mov byte [ebp - 0xc7], cl
cmp dword [ebp - 0xd0], 0
jle 0x51454f
movsx dx, byte [ebp - 0xc7]
mov eax, dword [ebp - 0xd0]
mov word [ebp + eax*2 - 0x2a], dx
mov ecx, dword [ebp - 0xd0]
add ecx, 1
mov dword [ebp - 0xd0], ecx
mov edx, dword [ebp - 0xfc]
add edx, 1
mov dword [ebp - 0xfc], edx
mov eax, dword [ebp - 0xd0]
shl eax, 1
mov dword [ebp - 0x130], eax
mov ecx, dword [ebp - 0x134]
add ecx, dword [ebp - 0x130]
movzx edx, byte [ecx]
mov dword [ebp - 0x128], edx
mov dword [ebp - 0x12c], 0x4a
mov eax, dword [ebp - 0xd0]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x138], ecx
mov edx, dword [ebp - 0x134]
add edx, dword [ebp - 0x138]
movzx eax, byte [edx]
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x124], 0xd8
mov ecx, dword [ebp - 0x128]
sub ecx, dword [ebp - 0x12c]
mov dword [ebp - 0x11c], ecx
mov edx, dword [ebp - 0x118]
sub edx, dword [ebp - 0x124]
mov dword [ebp - 0x120], edx
mov eax, dword [ebp - 0x11c]
shl eax, 4
mov dword [ebp - 0x13c], eax
mov ecx, dword [ebp - 0x120]
mov dword [ebp - 0x144], ecx
mov edx, dword [ebp - 0x13c]
or edx, dword [ebp - 0x144]
mov dword [ebp - 0x140], edx
mov al, byte [ebp - 0x140]
mov byte [ebp - 0xc3], al
movzx ecx, byte [ebp - 0xbf]
mov dl, byte [ebp + ecx - 0x3c8]
mov byte [ebp - 0xc1], dl
movzx eax, byte [ebp - 0xb9]
movzx ecx, byte [ebp + eax - 0x3c8]
mov dword [ebp - 0x4fc], ecx
mov dl, byte [ebp - 0xb9]
add dl, 1
mov byte [ebp - 0xb9], dl
movzx eax, byte [ebp - 0xbb]
add eax, dword [ebp - 0x4fc]
mov byte [ebp - 0xbb], al
movzx ecx, byte [ebp - 0xbb]
movzx edx, byte [ebp - 0xbf]
mov al, byte [ebp + ecx - 0x3c8]
mov byte [ebp + edx - 0x3c8], al
movzx ecx, byte [ebp - 0xbc]
movzx edx, byte [ebp - 0xbb]
mov al, byte [ebp + ecx - 0x3c8]
mov byte [ebp + edx - 0x3c8], al
movsd xmm0, qword [0x5329a8]
movsd qword [ebp - 0x14c], xmm0
movsd xmm0, qword [0x532978]
movsd qword [ebp - 0x1a0], xmm0
movsd xmm0, qword [0x5328e8]
movsd qword [ebp - 0x1b8], xmm0
movsd xmm0, qword [0x532828]
movsd qword [ebp - 0x194], xmm0
movsd xmm0, qword [0x532758]
movsd qword [ebp - 0x114], xmm0
movsd xmm0, qword [ebp - 0x1b8]
subsd xmm0, qword [ebp - 0x114]
movsd qword [ebp - 0x1b8], xmm0
movsd xmm0, qword [ebp - 0x14c]
mulsd xmm0, qword [ebp - 0x114]
movsd qword [ebp - 0x14c], xmm0
movsd xmm0, qword [ebp - 0x194]
subsd xmm0, qword [ebp - 0x114]
movsd qword [ebp - 0x194], xmm0
movsd xmm0, qword [ebp - 0x194]
mulsd xmm0, qword [ebp - 0x114]
movsd qword [ebp - 0x194], xmm0
movsd xmm0, qword [ebp - 0x14c]
subsd xmm0, qword [ebp - 0x114]
movsd qword [ebp - 0x14c], xmm0
movsd xmm0, qword [ebp - 0x114]
comisd xmm0, xmmword [ebp - 0x14c]
jbe 0x514aff
movsd xmm0, qword [ebp - 0x194]
subsd xmm0, qword [ebp - 0x114]
movsd qword [ebp - 0x194], xmm0
movsd xmm0, qword [ebp - 0x14c]
mulsd xmm0, qword [ebp - 0x1a0]
movsd qword [ebp - 0x14c], xmm0
movsd xmm0, qword [ebp - 0x194]
divsd xmm0, qword [ebp - 0x114]
movsd qword [ebp - 0x194], xmm0
movsd xmm0, qword [ebp - 0x1b8]
divsd xmm0, qword [ebp - 0x194]
movsd qword [ebp - 0x1b8], xmm0
movsd xmm0, qword [ebp - 0x14c]
mulsd xmm0, qword [ebp - 0x1a0]
movsd qword [ebp - 0x14c], xmm0
movsd xmm0, qword [ebp - 0x1a0]
divsd xmm0, qword [ebp - 0x194]
movsd qword [ebp - 0x1a0], xmm0
movsd xmm0, qword [ebp - 0x1a0]
subsd xmm0, qword [ebp - 0x194]
movsd qword [ebp - 0x1a0], xmm0
movsd xmm0, qword [ebp - 0x14c]
subsd xmm0, qword [ebp - 0x1b8]
movsd qword [ebp - 0x14c], xmm0
movsd xmm0, qword [ebp - 0x1b8]
addsd xmm0, qword [ebp - 0x114]
movsd qword [ebp - 0x1b8], xmm0
movsd xmm0, qword [ebp - 0x1a0]
mulsd xmm0, qword [ebp - 0x194]
movsd qword [ebp - 0x1a0], xmm0
movsd xmm0, qword [ebp - 0x1a0]
comisd xmm0, xmmword [ebp - 0x114]
jbe 0x514906
movsd xmm0, qword [ebp - 0x1b8]
mulsd xmm0, qword [ebp - 0x194]
movsd qword [ebp - 0x1b8], xmm0
movsd xmm0, qword [ebp - 0x114]
subsd xmm0, qword [ebp - 0x14c]
movsd qword [ebp - 0x114], xmm0
movsd xmm0, qword [ebp - 0x194]
divsd xmm0, qword [ebp - 0x114]
movsd qword [ebp - 0x194], xmm0
movsd xmm0, qword [ebp - 0x194]
mulsd xmm0, qword [ebp - 0x114]
movsd qword [ebp - 0x194], xmm0
movsd xmm0, qword [ebp - 0x114]
addsd xmm0, qword [ebp - 0x14c]
movsd qword [ebp - 0x114], xmm0
jmp 0x514afa
movsd xmm0, qword [ebp - 0x1b8]
divsd xmm0, qword [ebp - 0x194]
movsd qword [ebp - 0x1b8], xmm0
movsd xmm0, qword [ebp - 0x14c]
subsd xmm0, qword [ebp - 0x1a0]
movsd qword [ebp - 0x14c], xmm0
movsd xmm0, qword [ebp - 0x1a0]
mulsd xmm0, qword [ebp - 0x1b8]
movsd qword [ebp - 0x1a0], xmm0
movsd xmm0, qword [ebp - 0x14c]
mulsd xmm0, qword [ebp - 0x1a0]
movsd qword [ebp - 0x14c], xmm0
movsd xmm0, qword [ebp - 0x114]
subsd xmm0, qword [ebp - 0x14c]
movsd qword [ebp - 0x114], xmm0
movsd xmm0, qword [ebp - 0x1a0]
subsd xmm0, qword [ebp - 0x194]
movsd qword [ebp - 0x1a0], xmm0
movsd xmm0, qword [ebp - 0x14c]
addsd xmm0, qword [ebp - 0x1b8]
movsd qword [ebp - 0x14c], xmm0
movsd xmm0, qword [ebp - 0x194]
addsd xmm0, qword [ebp - 0x14c]
movsd qword [ebp - 0x194], xmm0
movsd xmm0, qword [ebp - 0x114]
addsd xmm0, qword [ebp - 0x1a0]
movsd qword [ebp - 0x114], xmm0
movsd xmm0, qword [ebp - 0x114]
addsd xmm0, qword [ebp - 0x1a0]
movsd qword [ebp - 0x114], xmm0
movsd xmm0, qword [ebp - 0x194]
comisd xmm0, xmmword [ebp - 0x14c]
jbe 0x514a82
movsd xmm0, qword [ebp - 0x114]
divsd xmm0, qword [ebp - 0x1a0]
movsd qword [ebp - 0x114], xmm0
movsd xmm0, qword [ebp - 0x14c]
subsd xmm0, qword [ebp - 0x1b8]
movsd qword [ebp - 0x14c], xmm0
movsd xmm0, qword [ebp - 0x1a0]
mulsd xmm0, qword [ebp - 0x194]
movsd qword [ebp - 0x1a0], xmm0
movsd xmm0, qword [ebp - 0x114]
addsd xmm0, qword [ebp - 0x1a0]
movsd qword [ebp - 0x114], xmm0
movsd xmm0, qword [ebp - 0x114]
divsd xmm0, qword [ebp - 0x1a0]
movsd qword [ebp - 0x114], xmm0
jmp 0x514afa
movsd xmm0, qword [ebp - 0x14c]
mulsd xmm0, qword [ebp - 0x1b8]
movsd qword [ebp - 0x14c], xmm0
movsd xmm0, qword [ebp - 0x114]
divsd xmm0, qword [ebp - 0x1a0]
movsd qword [ebp - 0x114], xmm0
movsd xmm0, qword [ebp - 0x14c]
addsd xmm0, qword [ebp - 0x1b8]
movsd qword [ebp - 0x14c], xmm0
movsd xmm0, qword [ebp - 0x14c]
divsd xmm0, qword [ebp - 0x1b8]
movsd qword [ebp - 0x14c], xmm0
movsd xmm0, qword [ebp - 0x1b8]
mulsd xmm0, qword [ebp - 0x114]
movsd qword [ebp - 0x1b8], xmm0
jmp 0x514b93
movsd xmm0, qword [ebp - 0x114]
subsd xmm0, qword [ebp - 0x14c]
movsd qword [ebp - 0x114], xmm0
movsd xmm0, qword [ebp - 0x1a0]
mulsd xmm0, qword [ebp - 0x1b8]
movsd qword [ebp - 0x1a0], xmm0
movsd xmm0, qword [ebp - 0x114]
addsd xmm0, qword [ebp - 0x14c]
movsd qword [ebp - 0x114], xmm0
movsd xmm0, qword [ebp - 0x1b8]
subsd xmm0, qword [ebp - 0x194]
movsd qword [ebp - 0x1b8], xmm0
movsd xmm0, qword [ebp - 0x194]
addsd xmm0, qword [ebp - 0x114]
movsd qword [ebp - 0x194], xmm0
movzx ecx, byte [ebp - 0xb9]
movzx edx, byte [ebp - 0xbc]
mov al, byte [ebp + ecx - 0x3c8]
mov byte [ebp + edx - 0x3c8], al
movzx ecx, byte [ebp - 0xb9]
mov dl, byte [ebp - 0xc1]
mov byte [ebp + ecx - 0x3c8], dl
movzx eax, byte [ebp - 0xc1]
movzx ecx, byte [ebp + eax - 0x3c8]
movzx edx, byte [ebp - 0xc2]
add edx, ecx
mov byte [ebp - 0xc2], dl
movzx eax, byte [ebp - 0xc3]
movzx ecx, byte [ebp - 0xbb]
movzx edx, byte [ebp + ecx - 0x3c8]
movzx ecx, byte [ebp - 0xb9]
movzx ecx, byte [ebp + ecx - 0x3c8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x3c8]
xor eax, edx
movzx ecx, byte [ebp - 0xbc]
movzx edx, byte [ebp + ecx - 0x3c8]
movzx ecx, byte [ebp - 0xbf]
movzx ecx, byte [ebp + ecx - 0x3c8]
add edx, ecx
movzx ecx, byte [ebp - 0xc2]
movzx ecx, byte [ebp + ecx - 0x3c8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x3c8]
movzx ecx, byte [ebp + edx - 0x3c8]
xor eax, ecx
mov byte [ebp - 0xbc], al
mov dl, byte [ebp - 0xc3]
mov byte [ebp - 0xbf], dl
mov al, byte [ebp - 0xbc]
mov byte [ebp - 0xc7], al
cmp dword [ebp - 0xd0], 0
jle 0x514c7f
movsx cx, byte [ebp - 0xc7]
mov edx, dword [ebp - 0xd0]
mov word [ebp + edx*2 - 0x2a], cx
mov eax, dword [ebp - 0xfc]
add eax, 2
mov dword [ebp - 0xfc], eax
mov ecx, dword [ebp - 0xd0]
add ecx, 1
mov dword [ebp - 0x290], ecx
jmp 0x514cae
mov edx, dword [ebp - 0x290]
add edx, 1
mov dword [ebp - 0x290], edx
mov eax, dword [ebp - 0x290]
cmp eax, dword [ebp - 0xfc]
jge 0x514f18
mov ecx, dword [ebp - 0xd0]
add ecx, 1
mov dword [ebp - 0xd0], ecx
mov edx, dword [ebp - 0xd0]
shl edx, 1
mov dword [ebp - 0x130], edx
mov eax, dword [ebp - 0x134]
add eax, dword [ebp - 0x130]
movzx ecx, byte [eax]
mov dword [ebp - 0x128], ecx
mov dword [ebp - 0x12c], 0x4a
mov edx, dword [ebp - 0xd0]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x138], eax
mov ecx, dword [ebp - 0x134]
add ecx, dword [ebp - 0x138]
movzx edx, byte [ecx]
mov dword [ebp - 0x118], edx
mov dword [ebp - 0x124], 0xd8
mov eax, dword [ebp - 0x128]
sub eax, dword [ebp - 0x12c]
mov dword [ebp - 0x11c], eax
mov ecx, dword [ebp - 0x118]
sub ecx, dword [ebp - 0x124]
mov dword [ebp - 0x120], ecx
mov edx, dword [ebp - 0x11c]
shl edx, 4
mov dword [ebp - 0x13c], edx
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x144], eax
mov ecx, dword [ebp - 0x13c]
or ecx, dword [ebp - 0x144]
mov dword [ebp - 0x140], ecx
mov dl, byte [ebp - 0x140]
mov byte [ebp - 0xc3], dl
movzx eax, byte [ebp - 0xbf]
mov cl, byte [ebp + eax - 0x3c8]
mov byte [ebp - 0xc1], cl
movzx edx, byte [ebp - 0xb9]
movzx eax, byte [ebp + edx - 0x3c8]
mov dword [ebp - 0x500], eax
mov cl, byte [ebp - 0xb9]
add cl, 1
mov byte [ebp - 0xb9], cl
movzx edx, byte [ebp - 0xbb]
add edx, dword [ebp - 0x500]
mov byte [ebp - 0xbb], dl
movzx eax, byte [ebp - 0xbb]
movzx ecx, byte [ebp - 0xbf]
mov dl, byte [ebp + eax - 0x3c8]
mov byte [ebp + ecx - 0x3c8], dl
movzx eax, byte [ebp - 0xbc]
movzx ecx, byte [ebp - 0xbb]
mov dl, byte [ebp + eax - 0x3c8]
mov byte [ebp + ecx - 0x3c8], dl
movzx eax, byte [ebp - 0xb9]
movzx ecx, byte [ebp - 0xbc]
mov dl, byte [ebp + eax - 0x3c8]
mov byte [ebp + ecx - 0x3c8], dl
movzx eax, byte [ebp - 0xb9]
mov cl, byte [ebp - 0xc1]
mov byte [ebp + eax - 0x3c8], cl
movzx edx, byte [ebp - 0xc1]
movzx eax, byte [ebp + edx - 0x3c8]
movzx ecx, byte [ebp - 0xc2]
add ecx, eax
mov byte [ebp - 0xc2], cl
movzx edx, byte [ebp - 0xc3]
movzx eax, byte [ebp - 0xbb]
movzx ecx, byte [ebp + eax - 0x3c8]
movzx eax, byte [ebp - 0xb9]
movzx eax, byte [ebp + eax - 0x3c8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x3c8]
xor edx, ecx
movzx eax, byte [ebp - 0xbc]
movzx ecx, byte [ebp + eax - 0x3c8]
movzx eax, byte [ebp - 0xbf]
movzx eax, byte [ebp + eax - 0x3c8]
add ecx, eax
movzx eax, byte [ebp - 0xc2]
movzx eax, byte [ebp + eax - 0x3c8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x3c8]
movzx eax, byte [ebp + ecx - 0x3c8]
xor edx, eax
mov byte [ebp - 0xbc], dl
mov cl, byte [ebp - 0xc3]
mov byte [ebp - 0xbf], cl
mov dl, byte [ebp - 0xbc]
mov byte [ebp - 0xc7], dl
cmp dword [ebp - 0xd0], 0
jle 0x514f13
movsx ax, byte [ebp - 0xc7]
mov ecx, dword [ebp - 0xd0]
mov word [ebp + ecx*2 - 0x2a], ax
jmp 0x514c9f
mov edx, dword [ebp - 0xfc]
add edx, 1
mov dword [ebp - 0xfc], edx
mov eax, dword [ebp - 0xd0]
add eax, 1
mov dword [ebp - 0xd0], eax
mov ecx, dword [ebp - 0xfc]
add ecx, 1
mov dword [ebp - 0xfc], ecx
mov edx, dword [ebp - 0xd0]
shl edx, 1
mov dword [ebp - 0x130], edx
mov eax, dword [ebp - 0x134]
add eax, dword [ebp - 0x130]
movzx ecx, byte [eax]
mov dword [ebp - 0x128], ecx
mov dword [ebp - 0x12c], 0x4a
mov edx, dword [ebp - 0xd0]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x138], eax
mov ecx, dword [ebp - 0x134]
add ecx, dword [ebp - 0x138]
movzx edx, byte [ecx]
mov dword [ebp - 0x118], edx
mov dword [ebp - 0x124], 0xd8
mov eax, dword [ebp - 0x128]
sub eax, dword [ebp - 0x12c]
mov dword [ebp - 0x11c], eax
mov ecx, dword [ebp - 0x118]
sub ecx, dword [ebp - 0x124]
mov dword [ebp - 0x120], ecx
mov edx, dword [ebp - 0x11c]
shl edx, 4
mov dword [ebp - 0x13c], edx
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x144], eax
mov ecx, dword [ebp - 0x13c]
or ecx, dword [ebp - 0x144]
mov dword [ebp - 0x140], ecx
mov dl, byte [ebp - 0x140]
mov byte [ebp - 0xc3], dl
movzx eax, byte [ebp - 0xbf]
mov cl, byte [ebp + eax - 0x3c8]
mov byte [ebp - 0xc1], cl
movzx edx, byte [ebp - 0xb9]
movzx eax, byte [ebp + edx - 0x3c8]
mov dword [ebp - 0x4d4], eax
mov cl, byte [ebp - 0xb9]
add cl, 1
mov byte [ebp - 0xb9], cl
movzx edx, byte [ebp - 0xbb]
add edx, dword [ebp - 0x4d4]
mov byte [ebp - 0xbb], dl
movzx eax, byte [ebp - 0xbb]
movzx ecx, byte [ebp - 0xbf]
mov dl, byte [ebp + eax - 0x3c8]
mov byte [ebp + ecx - 0x3c8], dl
movzx eax, byte [ebp - 0xbc]
movzx ecx, byte [ebp - 0xbb]
mov dl, byte [ebp + eax - 0x3c8]
mov byte [ebp + ecx - 0x3c8], dl
movzx eax, byte [ebp - 0xb9]
movzx ecx, byte [ebp - 0xbc]
mov dl, byte [ebp + eax - 0x3c8]
mov byte [ebp + ecx - 0x3c8], dl
movzx eax, byte [ebp - 0xb9]
mov cl, byte [ebp - 0xc1]
mov byte [ebp + eax - 0x3c8], cl
movzx edx, byte [ebp - 0xc1]
movzx eax, byte [ebp + edx - 0x3c8]
movzx ecx, byte [ebp - 0xc2]
add ecx, eax
mov byte [ebp - 0xc2], cl
movzx edx, byte [ebp - 0xc3]
movzx eax, byte [ebp - 0xbb]
movzx ecx, byte [ebp + eax - 0x3c8]
movzx eax, byte [ebp - 0xb9]
movzx eax, byte [ebp + eax - 0x3c8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x3c8]
xor edx, ecx
movzx eax, byte [ebp - 0xbc]
movzx ecx, byte [ebp + eax - 0x3c8]
movzx eax, byte [ebp - 0xbf]
movzx eax, byte [ebp + eax - 0x3c8]
add ecx, eax
movzx eax, byte [ebp - 0xc2]
movzx eax, byte [ebp + eax - 0x3c8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x3c8]
movzx eax, byte [ebp + ecx - 0x3c8]
xor edx, eax
mov byte [ebp - 0xbc], dl
mov cl, byte [ebp - 0xc3]
mov byte [ebp - 0xbf], cl
mov dl, byte [ebp - 0xbc]
mov byte [ebp - 0xc7], dl
cmp dword [ebp - 0xd0], 0
jle 0x515189
movsx ax, byte [ebp - 0xc7]
mov ecx, dword [ebp - 0xd0]
mov word [ebp + ecx*2 - 0x2a], ax
mov edx, dword [ebp - 0xd0]
add edx, 1
mov dword [ebp - 0xd0], edx
mov eax, dword [ebp - 0xfc]
add eax, 1
mov dword [ebp - 0xfc], eax
mov ecx, dword [ebp - 0xd0]
shl ecx, 1
mov dword [ebp - 0x130], ecx
mov edx, dword [ebp - 0x134]
add edx, dword [ebp - 0x130]
movzx eax, byte [edx]
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x12c], 0x4a
mov ecx, dword [ebp - 0xd0]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x138], edx
mov eax, dword [ebp - 0x134]
add eax, dword [ebp - 0x138]
movzx ecx, byte [eax]
mov dword [ebp - 0x118], ecx
mov dword [ebp - 0x124], 0xd8
mov edx, dword [ebp - 0x128]
sub edx, dword [ebp - 0x12c]
mov dword [ebp - 0x11c], edx
mov eax, dword [ebp - 0x118]
sub eax, dword [ebp - 0x124]
mov dword [ebp - 0x120], eax
mov ecx, dword [ebp - 0x11c]
shl ecx, 4
mov dword [ebp - 0x13c], ecx
mov edx, dword [ebp - 0x120]
mov dword [ebp - 0x144], edx
mov eax, dword [ebp - 0x13c]
or eax, dword [ebp - 0x144]
mov dword [ebp - 0x140], eax
mov cl, byte [ebp - 0x140]
mov byte [ebp - 0xc3], cl
movsd xmm0, qword [0x5329b0]
movsd qword [ebp - 0x1dc], xmm0
movsd xmm0, qword [0x532958]
movsd qword [ebp - 0x1ec], xmm0
movsd xmm0, qword [0x532888]
movsd qword [ebp - 0x1c4], xmm0
movsd xmm0, qword [0x5327a8]
movsd qword [ebp - 0x1cc], xmm0
movsd xmm0, qword [ebp - 0x1ec]
subsd xmm0, qword [ebp - 0x1cc]
movsd qword [ebp - 0x1ec], xmm0
movsd xmm0, qword [ebp - 0x1c4]
mulsd xmm0, qword [ebp - 0x1cc]
movsd qword [ebp - 0x1c4], xmm0
movsd xmm0, qword [ebp - 0x1c4]
subsd xmm0, qword [ebp - 0x1cc]
movsd qword [ebp - 0x1c4], xmm0
movsd xmm0, qword [ebp - 0x1dc]
mulsd xmm0, qword [ebp - 0x1cc]
movsd qword [ebp - 0x1dc], xmm0
movsd xmm0, qword [ebp - 0x1cc]
comisd xmm0, xmmword [ebp - 0x1dc]
jbe 0x5154ac
movsd xmm0, qword [ebp - 0x1dc]
addsd xmm0, qword [ebp - 0x1c4]
movsd qword [ebp - 0x1dc], xmm0
movsd xmm0, qword [ebp - 0x1c4]
addsd xmm0, qword [ebp - 0x1dc]
movsd qword [ebp - 0x1c4], xmm0
movsd xmm0, qword [ebp - 0x1cc]
addsd xmm0, qword [ebp - 0x1ec]
movsd qword [ebp - 0x1cc], xmm0
movsd xmm0, qword [ebp - 0x1ec]
mulsd xmm0, qword [ebp - 0x1cc]
movsd qword [ebp - 0x1ec], xmm0
movsd xmm0, qword [ebp - 0x1dc]
addsd xmm0, qword [ebp - 0x1c4]
movsd qword [ebp - 0x1dc], xmm0
movsd xmm0, qword [ebp - 0x1ec]
mulsd xmm0, qword [ebp - 0x1cc]
movsd qword [ebp - 0x1ec], xmm0
movsd xmm0, qword [ebp - 0x1cc]
subsd xmm0, qword [ebp - 0x1ec]
movsd qword [ebp - 0x1cc], xmm0
movsd xmm0, qword [ebp - 0x1dc]
divsd xmm0, qword [ebp - 0x1c4]
movsd qword [ebp - 0x1dc], xmm0
movsd xmm0, qword [ebp - 0x1c4]
comisd xmm0, xmmword [ebp - 0x1dc]
jbe 0x51544a
movsd xmm0, qword [ebp - 0x1ec]
subsd xmm0, qword [ebp - 0x1c4]
movsd qword [ebp - 0x1ec], xmm0
movsd xmm0, qword [ebp - 0x1c4]
addsd xmm0, qword [ebp - 0x1cc]
movsd qword [ebp - 0x1c4], xmm0
movsd xmm0, qword [ebp - 0x1cc]
subsd xmm0, qword [ebp - 0x1dc]
movsd qword [ebp - 0x1cc], xmm0
movsd xmm0, qword [ebp - 0x1ec]
addsd xmm0, qword [ebp - 0x1c4]
movsd qword [ebp - 0x1ec], xmm0
jmp 0x5154aa
movsd xmm0, qword [ebp - 0x1cc]
divsd xmm0, qword [ebp - 0x1dc]
movsd qword [ebp - 0x1cc], xmm0
movsd xmm0, qword [ebp - 0x1cc]
divsd xmm0, qword [ebp - 0x1dc]
movsd qword [ebp - 0x1cc], xmm0
movsd xmm0, qword [ebp - 0x1c4]
mulsd xmm0, qword [ebp - 0x1cc]
movsd qword [ebp - 0x1c4], xmm0
movsd xmm0, qword [ebp - 0x1ec]
divsd xmm0, qword [ebp - 0x1c4]
movsd qword [ebp - 0x1ec], xmm0
jmp 0x515520
movsd xmm0, qword [ebp - 0x1ec]
mulsd xmm0, qword [ebp - 0x1cc]
movsd qword [ebp - 0x1ec], xmm0
movsd xmm0, qword [ebp - 0x1dc]
mulsd xmm0, qword [ebp - 0x1c4]
movsd qword [ebp - 0x1dc], xmm0
movsd xmm0, qword [ebp - 0x1c4]
subsd xmm0, qword [ebp - 0x1dc]
movsd qword [ebp - 0x1c4], xmm0
movsd xmm0, qword [ebp - 0x1dc]
subsd xmm0, qword [ebp - 0x1c4]
movsd qword [ebp - 0x1dc], xmm0
movzx edx, byte [ebp - 0xbf]
mov al, byte [ebp + edx - 0x3c8]
mov byte [ebp - 0xc1], al
movzx ecx, byte [ebp - 0xb9]
movzx edx, byte [ebp + ecx - 0x3c8]
mov dword [ebp - 0x4f8], edx
mov al, byte [ebp - 0xb9]
add al, 1
mov byte [ebp - 0xb9], al
movzx ecx, byte [ebp - 0xbb]
add ecx, dword [ebp - 0x4f8]
mov byte [ebp - 0xbb], cl
movzx edx, byte [ebp - 0xbb]
movzx eax, byte [ebp - 0xbf]
mov cl, byte [ebp + edx - 0x3c8]
mov byte [ebp + eax - 0x3c8], cl
movzx edx, byte [ebp - 0xbc]
movzx eax, byte [ebp - 0xbb]
mov cl, byte [ebp + edx - 0x3c8]
mov byte [ebp + eax - 0x3c8], cl
movzx edx, byte [ebp - 0xb9]
movzx eax, byte [ebp - 0xbc]
mov cl, byte [ebp + edx - 0x3c8]
mov byte [ebp + eax - 0x3c8], cl
movzx edx, byte [ebp - 0xb9]
mov al, byte [ebp - 0xc1]
mov byte [ebp + edx - 0x3c8], al
movzx ecx, byte [ebp - 0xc1]
movzx edx, byte [ebp + ecx - 0x3c8]
movzx eax, byte [ebp - 0xc2]
add eax, edx
mov byte [ebp - 0xc2], al
movzx ecx, byte [ebp - 0xc3]
movzx edx, byte [ebp - 0xbb]
movzx eax, byte [ebp + edx - 0x3c8]
movzx edx, byte [ebp - 0xb9]
movzx edx, byte [ebp + edx - 0x3c8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x3c8]
xor ecx, eax
movzx edx, byte [ebp - 0xbc]
movzx eax, byte [ebp + edx - 0x3c8]
movzx edx, byte [ebp - 0xbf]
movzx edx, byte [ebp + edx - 0x3c8]
add eax, edx
movzx edx, byte [ebp - 0xc2]
movzx edx, byte [ebp + edx - 0x3c8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x3c8]
movzx edx, byte [ebp + eax - 0x3c8]
xor ecx, edx
mov byte [ebp - 0xbc], cl
mov al, byte [ebp - 0xc3]
mov byte [ebp - 0xbf], al
mov cl, byte [ebp - 0xbc]
mov byte [ebp - 0xc7], cl
cmp dword [ebp - 0xd0], 0
jle 0x515694
movsx dx, byte [ebp - 0xc7]
mov eax, dword [ebp - 0xd0]
mov word [ebp + eax*2 - 0x2a], dx
mov ecx, dword [ebp - 0xd0]
add ecx, 1
mov dword [ebp - 0xd0], ecx
mov edx, dword [ebp - 0xfc]
add edx, 1
mov dword [ebp - 0xfc], edx
mov eax, dword [ebp - 0xd0]
shl eax, 1
mov dword [ebp - 0x130], eax
mov ecx, dword [ebp - 0x134]
add ecx, dword [ebp - 0x130]
movzx edx, byte [ecx]
mov dword [ebp - 0x128], edx
mov dword [ebp - 0x12c], 0x4a
mov eax, dword [ebp - 0xd0]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x138], ecx
mov edx, dword [ebp - 0x134]
add edx, dword [ebp - 0x138]
movzx eax, byte [edx]
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x124], 0xd8
mov ecx, dword [ebp - 0x128]
sub ecx, dword [ebp - 0x12c]
mov dword [ebp - 0x11c], ecx
mov edx, dword [ebp - 0x118]
sub edx, dword [ebp - 0x124]
mov dword [ebp - 0x120], edx
mov eax, dword [ebp - 0x11c]
shl eax, 4
mov dword [ebp - 0x13c], eax
mov ecx, dword [ebp - 0x120]
mov dword [ebp - 0x144], ecx
mov edx, dword [ebp - 0x13c]
or edx, dword [ebp - 0x144]
mov dword [ebp - 0x140], edx
mov al, byte [ebp - 0x140]
mov byte [ebp - 0xc3], al
movzx ecx, byte [ebp - 0xbf]
mov dl, byte [ebp + ecx - 0x3c8]
mov byte [ebp - 0xc1], dl
movzx eax, byte [ebp - 0xb9]
movzx ecx, byte [ebp + eax - 0x3c8]
mov dword [ebp - 0x4f4], ecx
mov dl, byte [ebp - 0xb9]
add dl, 1
mov byte [ebp - 0xb9], dl
movzx eax, byte [ebp - 0xbb]
add eax, dword [ebp - 0x4f4]
mov byte [ebp - 0xbb], al
movzx ecx, byte [ebp - 0xbb]
movzx edx, byte [ebp - 0xbf]
mov al, byte [ebp + ecx - 0x3c8]
mov byte [ebp + edx - 0x3c8], al
movzx ecx, byte [ebp - 0xbc]
movzx edx, byte [ebp - 0xbb]
mov al, byte [ebp + ecx - 0x3c8]
mov byte [ebp + edx - 0x3c8], al
movzx ecx, byte [ebp - 0xb9]
movzx edx, byte [ebp - 0xbc]
mov al, byte [ebp + ecx - 0x3c8]
mov byte [ebp + edx - 0x3c8], al
movzx ecx, byte [ebp - 0xb9]
mov dl, byte [ebp - 0xc1]
mov byte [ebp + ecx - 0x3c8], dl
movzx eax, byte [ebp - 0xc1]
movzx ecx, byte [ebp + eax - 0x3c8]
movzx edx, byte [ebp - 0xc2]
add edx, ecx
mov byte [ebp - 0xc2], dl
movzx eax, byte [ebp - 0xc3]
movzx ecx, byte [ebp - 0xbb]
movzx edx, byte [ebp + ecx - 0x3c8]
movzx ecx, byte [ebp - 0xb9]
movzx ecx, byte [ebp + ecx - 0x3c8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x3c8]
xor eax, edx
movzx ecx, byte [ebp - 0xbc]
movzx edx, byte [ebp + ecx - 0x3c8]
movzx ecx, byte [ebp - 0xbf]
movzx ecx, byte [ebp + ecx - 0x3c8]
add edx, ecx
movzx ecx, byte [ebp - 0xc2]
movzx ecx, byte [ebp + ecx - 0x3c8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x3c8]
movzx ecx, byte [ebp + edx - 0x3c8]
xor eax, ecx
mov byte [ebp - 0xbc], al
mov dl, byte [ebp - 0xc3]
mov byte [ebp - 0xbf], dl
mov al, byte [ebp - 0xbc]
mov byte [ebp - 0xc7], al
cmp dword [ebp - 0xd0], 0
jle 0x5158f6
movsx cx, byte [ebp - 0xc7]
mov edx, dword [ebp - 0xd0]
mov word [ebp + edx*2 - 0x2a], cx
mov eax, dword [ebp - 0xfc]
add eax, 3
mov dword [ebp - 0xfc], eax
mov ecx, dword [ebp - 0xd0]
add ecx, 1
mov dword [ebp - 0x294], ecx
jmp 0x515925
mov edx, dword [ebp - 0x294]
add edx, 1
mov dword [ebp - 0x294], edx
mov eax, dword [ebp - 0x294]
cmp eax, dword [ebp - 0xfc]
jge 0x516025
mov ecx, dword [ebp - 0xd0]
add ecx, 1
mov dword [ebp - 0xd0], ecx
mov edx, dword [ebp - 0xd0]
shl edx, 1
mov dword [ebp - 0x130], edx
mov eax, dword [ebp - 0x134]
add eax, dword [ebp - 0x130]
movzx ecx, byte [eax]
mov dword [ebp - 0x128], ecx
mov dword [ebp - 0x12c], 0x4a
mov edx, dword [ebp - 0xd0]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x138], eax
mov ecx, dword [ebp - 0x134]
add ecx, dword [ebp - 0x138]
movzx edx, byte [ecx]
mov dword [ebp - 0x118], edx
mov dword [ebp - 0x124], 0xd8
mov eax, dword [ebp - 0x128]
sub eax, dword [ebp - 0x12c]
mov dword [ebp - 0x11c], eax
mov ecx, dword [ebp - 0x118]
sub ecx, dword [ebp - 0x124]
mov dword [ebp - 0x120], ecx
mov edx, dword [ebp - 0x11c]
shl edx, 4
mov dword [ebp - 0x13c], edx
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x144], eax
mov ecx, dword [ebp - 0x13c]
or ecx, dword [ebp - 0x144]
mov dword [ebp - 0x140], ecx
mov dl, byte [ebp - 0x140]
mov byte [ebp - 0xc3], dl
movzx eax, byte [ebp - 0xbf]
mov cl, byte [ebp + eax - 0x3c8]
mov byte [ebp - 0xc1], cl
movsd xmm0, qword [0x5329a0]
movsd qword [ebp - 0x18c], xmm0
movsd xmm0, qword [0x532980]
movsd qword [ebp - 0x248], xmm0
movsd xmm0, qword [0x532930]
movsd qword [ebp - 0x1b0], xmm0
movsd xmm0, qword [0x5328c8]
movsd qword [ebp - 0x1d4], xmm0
movsd xmm0, qword [0x532848]
movsd qword [ebp - 0x200], xmm0
movsd xmm0, qword [0x5327c0]
movsd qword [ebp - 0x240], xmm0
movsd xmm0, qword [0x5326f8]
movsd qword [ebp - 0x184], xmm0
movsd xmm0, qword [ebp - 0x1b0]
mulsd xmm0, qword [ebp - 0x184]
movsd qword [ebp - 0x1b0], xmm0
movsd xmm0, qword [ebp - 0x1d4]
subsd xmm0, qword [ebp - 0x184]
movsd qword [ebp - 0x1d4], xmm0
movsd xmm0, qword [ebp - 0x18c]
mulsd xmm0, qword [ebp - 0x184]
movsd qword [ebp - 0x18c], xmm0
movsd xmm0, qword [ebp - 0x240]
mulsd xmm0, qword [ebp - 0x184]
movsd qword [ebp - 0x240], xmm0
movsd xmm0, qword [ebp - 0x1d4]
mulsd xmm0, qword [ebp - 0x184]
movsd qword [ebp - 0x1d4], xmm0
movsd xmm0, qword [ebp - 0x18c]
subsd xmm0, qword [ebp - 0x184]
movsd qword [ebp - 0x18c], xmm0
movsd xmm0, qword [ebp - 0x240]
mulsd xmm0, qword [ebp - 0x184]
movsd qword [ebp - 0x240], xmm0
movsd xmm0, qword [ebp - 0x240]
comisd xmm0, xmmword [ebp - 0x184]
jbe 0x515c25
movsd xmm0, qword [ebp - 0x1b0]
mulsd xmm0, qword [ebp - 0x1d4]
movsd qword [ebp - 0x1b0], xmm0
movsd xmm0, qword [ebp - 0x184]
subsd xmm0, qword [ebp - 0x18c]
movsd qword [ebp - 0x184], xmm0
movsd xmm0, qword [ebp - 0x1b0]
subsd xmm0, qword [ebp - 0x1d4]
movsd qword [ebp - 0x1b0], xmm0
movsd xmm0, qword [ebp - 0x200]
mulsd xmm0, qword [ebp - 0x240]
movsd qword [ebp - 0x200], xmm0
movsd xmm0, qword [ebp - 0x184]
subsd xmm0, qword [ebp - 0x18c]
movsd qword [ebp - 0x184], xmm0
movsd xmm0, qword [ebp - 0x1d4]
mulsd xmm0, qword [ebp - 0x200]
movsd qword [ebp - 0x1d4], xmm0
movsd xmm0, qword [ebp - 0x184]
addsd xmm0, qword [ebp - 0x18c]
movsd qword [ebp - 0x184], xmm0
movzx edx, byte [ebp - 0xb9]
movzx eax, byte [ebp + edx - 0x3c8]
mov dword [ebp - 0x4cc], eax
mov cl, byte [ebp - 0xb9]
add cl, 1
mov byte [ebp - 0xb9], cl
movzx edx, byte [ebp - 0xbb]
add edx, dword [ebp - 0x4cc]
mov byte [ebp - 0xbb], dl
jmp 0x515ee0
movsd xmm0, qword [ebp - 0x1d4]
mulsd xmm0, qword [ebp - 0x200]
movsd qword [ebp - 0x1d4], xmm0
movsd xmm0, qword [ebp - 0x1b0]
subsd xmm0, qword [ebp - 0x1d4]
movsd qword [ebp - 0x1b0], xmm0
movsd xmm0, qword [ebp - 0x1b0]
divsd xmm0, qword [ebp - 0x1d4]
movsd qword [ebp - 0x1b0], xmm0
movsd xmm0, qword [ebp - 0x184]
addsd xmm0, qword [ebp - 0x18c]
movsd qword [ebp - 0x184], xmm0
movsd xmm0, qword [ebp - 0x1b0]
mulsd xmm0, qword [ebp - 0x1d4]
movsd qword [ebp - 0x1b0], xmm0
movsd xmm0, qword [ebp - 0x184]
subsd xmm0, qword [ebp - 0x18c]
movsd qword [ebp - 0x184], xmm0
movsd xmm0, qword [ebp - 0x18c]
subsd xmm0, qword [ebp - 0x248]
movsd qword [ebp - 0x18c], xmm0
movsd xmm0, qword [ebp - 0x18c]
divsd xmm0, qword [ebp - 0x248]
movsd qword [ebp - 0x18c], xmm0
movsd xmm0, qword [ebp - 0x184]
subsd xmm0, qword [ebp - 0x18c]
movsd qword [ebp - 0x184], xmm0
movsd xmm0, qword [ebp - 0x1d4]
mulsd xmm0, qword [ebp - 0x200]
movsd qword [ebp - 0x1d4], xmm0
movsd xmm0, qword [ebp - 0x18c]
mulsd xmm0, qword [ebp - 0x248]
movsd qword [ebp - 0x18c], xmm0
movsd xmm0, qword [ebp - 0x200]
addsd xmm0, qword [ebp - 0x240]
movsd qword [ebp - 0x200], xmm0
movsd xmm0, qword [ebp - 0x184]
divsd xmm0, qword [ebp - 0x18c]
movsd qword [ebp - 0x184], xmm0
movsd xmm0, qword [ebp - 0x184]
subsd xmm0, qword [ebp - 0x18c]
movsd qword [ebp - 0x184], xmm0
movsd xmm0, qword [ebp - 0x18c]
comisd xmm0, xmmword [ebp - 0x240]
jbe 0x515e38
movsd xmm0, qword [ebp - 0x18c]
mulsd xmm0, qword [ebp - 0x1b0]
movsd qword [ebp - 0x18c], xmm0
movsd xmm0, qword [ebp - 0x18c]
subsd xmm0, qword [ebp - 0x1b0]
movsd qword [ebp - 0x18c], xmm0
movsd xmm0, qword [ebp - 0x18c]
addsd xmm0, qword [ebp - 0x1b0]
movsd qword [ebp - 0x18c], xmm0
movsd xmm0, qword [ebp - 0x18c]
mulsd xmm0, qword [ebp - 0x1b0]
movsd qword [ebp - 0x18c], xmm0
movsd xmm0, qword [ebp - 0x248]
subsd xmm0, qword [ebp - 0x1d4]
movsd qword [ebp - 0x248], xmm0
movsd xmm0, qword [ebp - 0x1b0]
addsd xmm0, qword [ebp - 0x200]
movsd qword [ebp - 0x1b0], xmm0
movsd xmm0, qword [ebp - 0x184]
mulsd xmm0, qword [ebp - 0x248]
movsd qword [ebp - 0x184], xmm0
jmp 0x515ee0
movsd xmm0, qword [ebp - 0x184]
subsd xmm0, qword [ebp - 0x248]
movsd qword [ebp - 0x184], xmm0
movsd xmm0, qword [ebp - 0x18c]
addsd xmm0, qword [ebp - 0x1b0]
movsd qword [ebp - 0x18c], xmm0
movsd xmm0, qword [ebp - 0x1b0]
addsd xmm0, qword [ebp - 0x200]
movsd qword [ebp - 0x1b0], xmm0
movsd xmm0, qword [ebp - 0x248]
mulsd xmm0, qword [ebp - 0x1d4]
movsd qword [ebp - 0x248], xmm0
movsd xmm0, qword [ebp - 0x1d4]
subsd xmm0, qword [ebp - 0x240]
movsd qword [ebp - 0x1d4], xmm0
movsd xmm0, qword [ebp - 0x200]
addsd xmm0, qword [ebp - 0x184]
movsd qword [ebp - 0x200], xmm0
movsd xmm0, qword [ebp - 0x1b0]
subsd xmm0, qword [ebp - 0x200]
movsd qword [ebp - 0x1b0], xmm0
movzx eax, byte [ebp - 0xbb]
movzx ecx, byte [ebp - 0xbf]
mov dl, byte [ebp + eax - 0x3c8]
mov byte [ebp + ecx - 0x3c8], dl
movzx eax, byte [ebp - 0xbc]
movzx ecx, byte [ebp - 0xbb]
mov dl, byte [ebp + eax - 0x3c8]
mov byte [ebp + ecx - 0x3c8], dl
movzx eax, byte [ebp - 0xb9]
movzx ecx, byte [ebp - 0xbc]
mov dl, byte [ebp + eax - 0x3c8]
mov byte [ebp + ecx - 0x3c8], dl
movzx eax, byte [ebp - 0xb9]
mov cl, byte [ebp - 0xc1]
mov byte [ebp + eax - 0x3c8], cl
movzx edx, byte [ebp - 0xc1]
movzx eax, byte [ebp + edx - 0x3c8]
movzx ecx, byte [ebp - 0xc2]
add ecx, eax
mov byte [ebp - 0xc2], cl
movzx edx, byte [ebp - 0xc3]
movzx eax, byte [ebp - 0xbb]
movzx ecx, byte [ebp + eax - 0x3c8]
movzx eax, byte [ebp - 0xb9]
movzx eax, byte [ebp + eax - 0x3c8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x3c8]
xor edx, ecx
movzx eax, byte [ebp - 0xbc]
movzx ecx, byte [ebp + eax - 0x3c8]
movzx eax, byte [ebp - 0xbf]
movzx eax, byte [ebp + eax - 0x3c8]
add ecx, eax
movzx eax, byte [ebp - 0xc2]
movzx eax, byte [ebp + eax - 0x3c8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x3c8]
movzx eax, byte [ebp + ecx - 0x3c8]
xor edx, eax
mov byte [ebp - 0xbc], dl
mov cl, byte [ebp - 0xc3]
mov byte [ebp - 0xbf], cl
mov dl, byte [ebp - 0xbc]
mov byte [ebp - 0xc7], dl
cmp dword [ebp - 0xd0], 0
jle 0x516020
movsx ax, byte [ebp - 0xc7]
mov ecx, dword [ebp - 0xd0]
mov word [ebp + ecx*2 - 0x2a], ax
jmp 0x515916
mov edx, dword [ebp - 0xfc]
add edx, 1
mov dword [ebp - 0xfc], edx
mov eax, 2
imul ecx, eax, 0xa
mov dword [ebp - 0x2b8], ecx
cmp dword [ebp - 0x2b8], 0x16
jae 0x51604d
jmp 0x516053
call fcn.0051da65
nop
xor edx, edx
mov eax, dword [ebp - 0x2b8]
mov word [ebp + eax - 0x28], dx
jmp 0x5160b4
mov dword [ebp - 0x238], 0
jmp 0x51607d
mov ecx, dword [ebp - 0x238]
add ecx, 1
mov dword [ebp - 0x238], ecx
cmp dword [ebp - 0x238], 0xb
jge 0x5160b4
mov edx, dword [ebp - 0x238]
shl edx, 1
mov dword [ebp - 0x2b4], edx
cmp dword [ebp - 0x2b4], 0x16
jae 0x51609f
jmp 0x5160a5
call fcn.0051da65
nop
xor eax, eax
mov ecx, dword [ebp - 0x2b4]
mov word [ebp + ecx - 0x28], ax
jmp 0x51606e
lea edx, [ebp - 0x28]
push edx
lea ecx, [ebp - 0xa8]
call fcn.004aa820
mov byte [ebp - 4], 2
mov dword [ebp - 0xac], 0
mov dword [ebp - 0xb8], 0
xorps xmm0, xmm0
movsd qword [ebp - 0x224], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x208], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x208], xmm0
jmp 0x516116
movsd xmm0, qword [ebp - 0x208]
addsd xmm0, qword [0x52f558]
movsd qword [ebp - 0x208], xmm0
movsd xmm0, qword [0x532700]
comisd xmm0, xmmword [ebp - 0x208]
jbe 0x5161c7
movsd xmm0, qword [0x5326b0]
mulsd xmm0, qword [ebp - 0x208]
mulsd xmm0, qword [ebp - 0x208]
movsd xmm1, qword [ebp - 0x208]
mulsd xmm1, qword [ebp - 0x208]
subsd xmm0, xmm1
movsd xmm1, qword [0x52f8f0]
mulsd xmm1, qword [ebp - 0x208]
mulsd xmm1, qword [ebp - 0x208]
addsd xmm1, qword [0x532618]
divsd xmm0, xmm1
addsd xmm0, qword [ebp - 0x224]
movsd qword [ebp - 0x224], xmm0
movsd xmm0, qword [ebp - 0x224]
comisd xmm0, xmmword [0x532658]
jbe 0x5161c2
movsd xmm0, qword [0x5325d8]
mulsd xmm0, qword [ebp - 0x208]
movsd xmm1, qword [ebp - 0x224]
subsd xmm1, xmm0
movsd qword [ebp - 0x224], xmm1
jmp 0x5160fe
aaa
invalid
xorps xmm0, xmm0
comisd xmm0, xmmword [ebp - 0x224]
jbe 0x516252
jle 0x516242
insd dword es:[edi], dx
dec eax
jo 0x516236
and al, 0x59
ja 0x516216
sub eax, 0x21503745
sub dword [edi + 0x4e], esp
pop ecx
jae 0x516229
jnp 0x516253
imul edi, dword ss:[eax], 0x38
pushal
push esp
inc ebp
jp 0x5161c3
ret
push 0xffffffffffffffcf
jb 0x5161d3
shr byte gs:[ebx - 0x31], 1
imul eax, edi, 0x68
int 0x65
iretd
insb byte es:[edi], dx
enter 0xffffffffffffcb67, 0x6e
retf
iretd
jno 0x5161fe
imul ecx, esi, 0x66
invalid
into
insd dword es:[edi], dx
enter 0xffffffffffffc36f, 0x70
les ebp, [ebx - 0x32]
jmp 0x517e9d
mov dword [ebp - 0xac], 0x5161f3
mov dword [ebp - 0xb8], 0x5161d4
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0x16c], eax
mov ecx, dword [ebp - 0xb8]
mov dword [ebp - 0x4d0], ecx
mov byte [ebp - 0x1a7], 0x23
mov dword [ebp - 0x10c], 0
jmp 0x5162a0
test dword [edi + edi*8 - 1], edx
push ebx
popal
push ecx
add bh, al
test dword [eax - 1], ecx
invalid
mov edx, dword [ebp - 0x10c]
add edx, 1
mov dword [ebp - 0x10c], edx
cmp dword [ebp - 0x10c], 0x100
jae 0x5162c1
mov eax, dword [ebp - 0x10c]
mov cl, byte [ebp - 0x10c]
mov byte [ebp + eax - 0x4c8], cl
jmp 0x516291
mov dword [ebp - 0x1f8], 0
mov byte [ebp - 0xc9], 0
mov dword [ebp - 0x10c], 0xff
jmp 0x5162ed
mov edx, dword [ebp - 0x10c]
sub edx, 1
mov dword [ebp - 0x10c], edx
cmp dword [ebp - 0x10c], 0
jbe 0x51655d
mov dword [ebp - 0x298], 0
mov dword [ebp - 0x234], 1
mov eax, dword [ebp - 0x234]
cmp eax, dword [ebp - 0x10c]
jae 0x51632e
mov ecx, dword [ebp - 0x234]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x234], edx
jmp 0x51630e
mov eax, dword [ebp - 0x1f8]
mov dword [ebp - 0x2b0], eax
cmp dword [ebp - 0x2b0], 3
ja case.default.0x51634d
mov ecx, dword [ebp - 0x2b0]
jmp dword [ecx*4 + 0x517fbc]
movzx edx, byte [ebp - 0xc9]
movzx ebx, byte [ebp + edx - 0x4c8]
movsd xmm0, qword [ebp - 0x224]
call fcn.0051dea0
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xc9], bl
jmp 0x516436
movzx eax, byte [ebp - 0xc9]
movzx ebx, byte [ebp + eax - 0x4c8]
movsd xmm0, qword [ebp - 0x224]
call fcn.0051dea0
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xc9], bl
jmp 0x516436
movzx ecx, byte [ebp - 0xc9]
movzx ebx, byte [ebp + ecx - 0x4c8]
movsd xmm0, qword [ebp - 0x224]
call fcn.0051dea0
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xc9], bl
jmp 0x516436
movzx edx, byte [ebp - 0xc9]
movzx ebx, byte [ebp + edx - 0x4c8]
movsd xmm0, qword [ebp - 0x224]
call fcn.0051dea0
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xc9], bl
jmp 0x516436
movzx eax, byte [ebp - 0xc9]
movzx ecx, byte [ebp + eax - 0x4c8]
mov edx, dword [ebp - 0x4d0]
add edx, dword [ebp - 0x1f8]
movzx eax, byte [edx - 4]
add ecx, eax
mov byte [ebp - 0xc9], cl
mov ecx, dword [ebp - 0x1f8]
add ecx, 1
mov dword [ebp - 0x1f8], ecx
movzx edx, byte [ebp - 0x1a7]
cmp dword [ebp - 0x1f8], edx
jb 0x516474
mov dword [ebp - 0x1f8], 0
movzx eax, byte [ebp - 0x1a7]
movzx ecx, byte [ebp - 0xc9]
add ecx, eax
mov byte [ebp - 0xc9], cl
movzx edx, byte [ebp - 0xc9]
and edx, dword [ebp - 0x234]
mov dword [ebp - 0x1e4], edx
mov eax, dword [ebp - 0x298]
add eax, 1
mov dword [ebp - 0x298], eax
cmp dword [ebp - 0x298], 0xb
jbe 0x5164b3
mov eax, dword [ebp - 0x1e4]
xor edx, edx
div dword [ebp - 0x10c]
mov dword [ebp - 0x1e4], edx
mov ecx, dword [ebp - 0x1e4]
cmp ecx, dword [ebp - 0x10c]
ja 0x51632e
mov edx, dword [ebp - 0x10c]
cmp edx, dword [ebp - 0x1e4]
je 0x516558
mov eax, dword [ebp - 0x1e4]
movzx ecx, byte [ebp + eax - 0x4c8]
mov edx, dword [ebp - 0x10c]
movzx eax, byte [ebp + edx - 0x4c8]
xor eax, ecx
mov ecx, dword [ebp - 0x10c]
mov byte [ebp + ecx - 0x4c8], al
mov edx, dword [ebp - 0x10c]
movzx eax, byte [ebp + edx - 0x4c8]
mov ecx, dword [ebp - 0x1e4]
movzx edx, byte [ebp + ecx - 0x4c8]
xor edx, eax
mov eax, dword [ebp - 0x1e4]
mov byte [ebp + eax - 0x4c8], dl
mov ecx, dword [ebp - 0x1e4]
movzx edx, byte [ebp + ecx - 0x4c8]
mov eax, dword [ebp - 0x10c]
movzx ecx, byte [ebp + eax - 0x4c8]
xor ecx, edx
mov edx, dword [ebp - 0x10c]
mov byte [ebp + edx - 0x4c8], cl
jmp 0x5162de
mov eax, 1
shl eax, 0
mov cl, byte [ebp + eax - 0x4c8]
mov byte [ebp - 0xba], cl
mov edx, 1
imul eax, edx, 3
mov cl, byte [ebp + eax - 0x4c8]
mov byte [ebp - 0xbd], cl
mov edx, 1
imul eax, edx, 5
mov cl, byte [ebp + eax - 0x4c8]
mov byte [ebp - 0xc5], cl
mov edx, 1
imul eax, edx, 7
mov cl, byte [ebp + eax - 0x4c8]
mov byte [ebp - 0xbe], cl
movzx edx, byte [ebp - 0xc9]
mov al, byte [ebp + edx - 0x4c8]
mov byte [ebp - 0xc0], al
mov dword [ebp - 0x2c4], 0x5a
cmp dword [ebp - 0x2c4], 2
jle 0x517e48
mov ecx, dword [ebp - 0x2c4]
and ecx, 1
jne 0x517e48
mov dword [ebp - 0xd4], 0
mov dword [ebp - 0x100], 0
mov edx, dword [ebp - 0x100]
add edx, 1
mov dword [ebp - 0x100], edx
mov dword [ebp - 0x168], 0
mov eax, dword [ebp - 0xd4]
shl eax, 1
mov dword [ebp - 0x168], eax
mov dword [ebp - 0x160], 0
mov ecx, dword [ebp - 0x16c]
add ecx, dword [ebp - 0x168]
movzx edx, byte [ecx]
add edx, dword [ebp - 0x160]
mov dword [ebp - 0x160], edx
mov dword [ebp - 0x164], 0
mov eax, dword [ebp - 0x164]
add eax, 0xc3
mov dword [ebp - 0x164], eax
mov dword [ebp - 0x170], 0
mov ecx, dword [ebp - 0xd4]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x170], edx
mov dword [ebp - 0x150], 0
mov eax, dword [ebp - 0x16c]
add eax, dword [ebp - 0x170]
movzx ecx, byte [eax]
add ecx, dword [ebp - 0x150]
mov dword [ebp - 0x150], ecx
mov dword [ebp - 0x154], 0
mov edx, dword [ebp - 0x154]
add edx, 0x64
mov dword [ebp - 0x154], edx
mov dword [ebp - 0x15c], 0
mov eax, dword [ebp - 0x160]
sub eax, dword [ebp - 0x164]
add eax, dword [ebp - 0x15c]
mov dword [ebp - 0x15c], eax
mov dword [ebp - 0x158], 0
mov ecx, dword [ebp - 0x150]
sub ecx, dword [ebp - 0x154]
add ecx, dword [ebp - 0x158]
mov dword [ebp - 0x158], ecx
mov dword [ebp - 0x174], 0
mov edx, dword [ebp - 0x15c]
shl edx, 4
mov dword [ebp - 0x174], edx
mov dword [ebp - 0x178], 0
mov eax, dword [ebp - 0x158]
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x17c], 0
mov ecx, dword [ebp - 0x174]
or ecx, dword [ebp - 0x178]
mov dword [ebp - 0x17c], ecx
mov byte [ebp - 0xc6], 0
mov dl, byte [ebp - 0x17c]
mov byte [ebp - 0xc6], dl
mov byte [ebp - 0xc4], 0
movzx eax, byte [ebp - 0xc0]
mov cl, byte [ebp + eax - 0x4c8]
mov byte [ebp - 0xc4], cl
movzx edx, byte [ebp - 0xba]
movzx eax, byte [ebp + edx - 0x4c8]
mov dword [ebp - 0x51c], eax
mov cl, byte [ebp - 0xba]
add cl, 1
mov byte [ebp - 0xba], cl
movzx edx, byte [ebp - 0xbd]
add edx, dword [ebp - 0x51c]
mov byte [ebp - 0xbd], dl
movzx eax, byte [ebp - 0xbd]
movzx ecx, byte [ebp - 0xc0]
mov dl, byte [ebp + eax - 0x4c8]
mov byte [ebp + ecx - 0x4c8], dl
movzx eax, byte [ebp - 0xbe]
movzx ecx, byte [ebp - 0xbd]
mov dl, byte [ebp + eax - 0x4c8]
mov byte [ebp + ecx - 0x4c8], dl
movzx eax, byte [ebp - 0xba]
movzx ecx, byte [ebp - 0xbe]
mov dl, byte [ebp + eax - 0x4c8]
mov byte [ebp + ecx - 0x4c8], dl
movzx eax, byte [ebp - 0xba]
mov cl, byte [ebp - 0xc4]
mov byte [ebp + eax - 0x4c8], cl
movzx edx, byte [ebp - 0xc4]
movzx eax, byte [ebp + edx - 0x4c8]
movzx ecx, byte [ebp - 0xc5]
add ecx, eax
mov byte [ebp - 0xc5], cl
movzx edx, byte [ebp - 0xc6]
movzx eax, byte [ebp - 0xbd]
movzx ecx, byte [ebp + eax - 0x4c8]
movzx eax, byte [ebp - 0xba]
movzx eax, byte [ebp + eax - 0x4c8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x4c8]
xor edx, ecx
movzx eax, byte [ebp - 0xbe]
movzx ecx, byte [ebp + eax - 0x4c8]
movzx eax, byte [ebp - 0xc0]
movzx eax, byte [ebp + eax - 0x4c8]
add ecx, eax
movzx eax, byte [ebp - 0xc5]
movzx eax, byte [ebp + eax - 0x4c8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x4c8]
movzx eax, byte [ebp + ecx - 0x4c8]
xor edx, eax
mov byte [ebp - 0xbe], dl
mov cl, byte [ebp - 0xc6]
mov byte [ebp - 0xc0], cl
mov dl, byte [ebp - 0xbe]
mov byte [ebp - 0xca], dl
cmp dword [ebp - 0xd4], 0
jle 0x5168f5
movsx ax, byte [ebp - 0xca]
mov ecx, dword [ebp - 0xd4]
mov word [ebp + ecx*2 - 0x86], ax
mov edx, dword [ebp - 0xd4]
add edx, 1
mov dword [ebp - 0xd4], edx
mov eax, dword [ebp - 0x100]
add eax, 1
mov dword [ebp - 0x100], eax
mov ecx, dword [ebp - 0xd4]
shl ecx, 1
mov dword [ebp - 0x168], ecx
mov edx, dword [ebp - 0x16c]
add edx, dword [ebp - 0x168]
movzx eax, byte [edx]
mov dword [ebp - 0x160], eax
mov dword [ebp - 0x164], 0xc3
mov ecx, dword [ebp - 0xd4]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x170], edx
mov eax, dword [ebp - 0x16c]
add eax, dword [ebp - 0x170]
movzx ecx, byte [eax]
mov dword [ebp - 0x150], ecx
mov dword [ebp - 0x154], 0x64
mov edx, dword [ebp - 0x160]
sub edx, dword [ebp - 0x164]
mov dword [ebp - 0x15c], edx
mov eax, dword [ebp - 0x150]
sub eax, dword [ebp - 0x154]
mov dword [ebp - 0x158], eax
mov ecx, dword [ebp - 0x15c]
shl ecx, 4
mov dword [ebp - 0x174], ecx
mov edx, dword [ebp - 0x158]
mov dword [ebp - 0x178], edx
mov eax, dword [ebp - 0x174]
or eax, dword [ebp - 0x178]
mov dword [ebp - 0x17c], eax
mov cl, byte [ebp - 0x17c]
mov byte [ebp - 0xc6], cl
movzx edx, byte [ebp - 0xc0]
mov al, byte [ebp + edx - 0x4c8]
mov byte [ebp - 0xc4], al
movzx ecx, byte [ebp - 0xba]
movzx edx, byte [ebp + ecx - 0x4c8]
mov dword [ebp - 0x4d8], edx
mov al, byte [ebp - 0xba]
add al, 1
mov byte [ebp - 0xba], al
movzx ecx, byte [ebp - 0xbd]
add ecx, dword [ebp - 0x4d8]
mov byte [ebp - 0xbd], cl
movzx edx, byte [ebp - 0xbd]
movzx eax, byte [ebp - 0xc0]
mov cl, byte [ebp + edx - 0x4c8]
mov byte [ebp + eax - 0x4c8], cl
movzx edx, byte [ebp - 0xbe]
movzx eax, byte [ebp - 0xbd]
mov cl, byte [ebp + edx - 0x4c8]
mov byte [ebp + eax - 0x4c8], cl
movzx edx, byte [ebp - 0xba]
movzx eax, byte [ebp - 0xbe]
mov cl, byte [ebp + edx - 0x4c8]
mov byte [ebp + eax - 0x4c8], cl
movzx edx, byte [ebp - 0xba]
mov al, byte [ebp - 0xc4]
mov byte [ebp + edx - 0x4c8], al
movzx ecx, byte [ebp - 0xc4]
movzx edx, byte [ebp + ecx - 0x4c8]
movzx eax, byte [ebp - 0xc5]
add eax, edx
mov byte [ebp - 0xc5], al
movzx ecx, byte [ebp - 0xc6]
movzx edx, byte [ebp - 0xbd]
movzx eax, byte [ebp + edx - 0x4c8]
movzx edx, byte [ebp - 0xba]
movzx edx, byte [ebp + edx - 0x4c8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x4c8]
xor ecx, eax
movzx edx, byte [ebp - 0xbe]
movzx eax, byte [ebp + edx - 0x4c8]
movzx edx, byte [ebp - 0xc0]
movzx edx, byte [ebp + edx - 0x4c8]
add eax, edx
movzx edx, byte [ebp - 0xc5]
movzx edx, byte [ebp + edx - 0x4c8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x4c8]
movzx edx, byte [ebp + eax - 0x4c8]
xor ecx, edx
mov byte [ebp - 0xbe], cl
mov al, byte [ebp - 0xc6]
mov byte [ebp - 0xc0], al
mov cl, byte [ebp - 0xbe]
mov byte [ebp - 0xca], cl
cmp dword [ebp - 0xd4], 0
jle 0x516b57
movsx dx, byte [ebp - 0xca]
mov eax, dword [ebp - 0xd4]
mov word [ebp + eax*2 - 0x86], dx
mov ecx, dword [ebp - 0x100]
add ecx, 0x14
mov dword [ebp - 0x100], ecx
mov edx, dword [ebp - 0xd4]
add edx, 1
mov dword [ebp - 0x29c], edx
jmp 0x516b86
mov eax, dword [ebp - 0x29c]
add eax, 1
mov dword [ebp - 0x29c], eax
mov ecx, dword [ebp - 0x29c]
cmp ecx, dword [ebp - 0x100]
jge 0x516df3
mov edx, dword [ebp - 0xd4]
add edx, 1
mov dword [ebp - 0xd4], edx
mov eax, dword [ebp - 0xd4]
shl eax, 1
mov dword [ebp - 0x168], eax
mov ecx, dword [ebp - 0x16c]
add ecx, dword [ebp - 0x168]
movzx edx, byte [ecx]
mov dword [ebp - 0x160], edx
mov dword [ebp - 0x164], 0xc3
mov eax, dword [ebp - 0xd4]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x170], ecx
mov edx, dword [ebp - 0x16c]
add edx, dword [ebp - 0x170]
movzx eax, byte [edx]
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x154], 0x64
mov ecx, dword [ebp - 0x160]
sub ecx, dword [ebp - 0x164]
mov dword [ebp - 0x15c], ecx
mov edx, dword [ebp - 0x150]
sub edx, dword [ebp - 0x154]
mov dword [ebp - 0x158], edx
mov eax, dword [ebp - 0x15c]
shl eax, 4
mov dword [ebp - 0x174], eax
mov ecx, dword [ebp - 0x158]
mov dword [ebp - 0x178], ecx
mov edx, dword [ebp - 0x174]
or edx, dword [ebp - 0x178]
mov dword [ebp - 0x17c], edx
mov al, byte [ebp - 0x17c]
mov byte [ebp - 0xc6], al
movzx ecx, byte [ebp - 0xc0]
mov dl, byte [ebp + ecx - 0x4c8]
mov byte [ebp - 0xc4], dl
movzx eax, byte [ebp - 0xba]
movzx ecx, byte [ebp + eax - 0x4c8]
mov dword [ebp - 0x4dc], ecx
mov dl, byte [ebp - 0xba]
add dl, 1
mov byte [ebp - 0xba], dl
movzx eax, byte [ebp - 0xbd]
add eax, dword [ebp - 0x4dc]
mov byte [ebp - 0xbd], al
movzx ecx, byte [ebp - 0xbd]
movzx edx, byte [ebp - 0xc0]
mov al, byte [ebp + ecx - 0x4c8]
mov byte [ebp + edx - 0x4c8], al
movzx ecx, byte [ebp - 0xbe]
movzx edx, byte [ebp - 0xbd]
mov al, byte [ebp + ecx - 0x4c8]
mov byte [ebp + edx - 0x4c8], al
movzx ecx, byte [ebp - 0xba]
movzx edx, byte [ebp - 0xbe]
mov al, byte [ebp + ecx - 0x4c8]
mov byte [ebp + edx - 0x4c8], al
movzx ecx, byte [ebp - 0xba]
mov dl, byte [ebp - 0xc4]
mov byte [ebp + ecx - 0x4c8], dl
movzx eax, byte [ebp - 0xc4]
movzx ecx, byte [ebp + eax - 0x4c8]
movzx edx, byte [ebp - 0xc5]
add edx, ecx
mov byte [ebp - 0xc5], dl
movzx eax, byte [ebp - 0xc6]
movzx ecx, byte [ebp - 0xbd]
movzx edx, byte [ebp + ecx - 0x4c8]
movzx ecx, byte [ebp - 0xba]
movzx ecx, byte [ebp + ecx - 0x4c8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x4c8]
xor eax, edx
movzx ecx, byte [ebp - 0xbe]
movzx edx, byte [ebp + ecx - 0x4c8]
movzx ecx, byte [ebp - 0xc0]
movzx ecx, byte [ebp + ecx - 0x4c8]
add edx, ecx
movzx ecx, byte [ebp - 0xc5]
movzx ecx, byte [ebp + ecx - 0x4c8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x4c8]
movzx ecx, byte [ebp + edx - 0x4c8]
xor eax, ecx
mov byte [ebp - 0xbe], al
mov dl, byte [ebp - 0xc6]
mov byte [ebp - 0xc0], dl
mov al, byte [ebp - 0xbe]
mov byte [ebp - 0xca], al
cmp dword [ebp - 0xd4], 0
jle 0x516dee
movsx cx, byte [ebp - 0xca]
mov edx, dword [ebp - 0xd4]
mov word [ebp + edx*2 - 0x86], cx
jmp 0x516b77
mov eax, dword [ebp - 0x100]
add eax, 1
mov dword [ebp - 0x100], eax
mov ecx, dword [ebp - 0x100]
add ecx, 0x14
mov dword [ebp - 0x100], ecx
mov edx, dword [ebp - 0xd4]
add edx, 1
mov dword [ebp - 0x2a0], edx
jmp 0x516e31
mov eax, dword [ebp - 0x2a0]
add eax, 1
mov dword [ebp - 0x2a0], eax
mov ecx, dword [ebp - 0x2a0]
cmp ecx, dword [ebp - 0x100]
jge 0x517569
mov edx, dword [ebp - 0xd4]
add edx, 1
mov dword [ebp - 0xd4], edx
mov eax, dword [ebp - 0xd4]
shl eax, 1
mov dword [ebp - 0x168], eax
mov ecx, dword [ebp - 0x16c]
add ecx, dword [ebp - 0x168]
movzx edx, byte [ecx]
mov dword [ebp - 0x160], edx
mov dword [ebp - 0x164], 0xc3
mov eax, dword [ebp - 0xd4]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x170], ecx
mov edx, dword [ebp - 0x16c]
add edx, dword [ebp - 0x170]
movzx eax, byte [edx]
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x154], 0x64
mov ecx, dword [ebp - 0x160]
sub ecx, dword [ebp - 0x164]
mov dword [ebp - 0x15c], ecx
mov edx, dword [ebp - 0x150]
sub edx, dword [ebp - 0x154]
mov dword [ebp - 0x158], edx
mov eax, dword [ebp - 0x15c]
shl eax, 4
mov dword [ebp - 0x174], eax
mov ecx, dword [ebp - 0x158]
mov dword [ebp - 0x178], ecx
mov edx, dword [ebp - 0x174]
or edx, dword [ebp - 0x178]
mov dword [ebp - 0x17c], edx
mov al, byte [ebp - 0x17c]
mov byte [ebp - 0xc6], al
movzx ecx, byte [ebp - 0xc0]
mov dl, byte [ebp + ecx - 0x4c8]
mov byte [ebp - 0xc4], dl
movzx eax, byte [ebp - 0xba]
movzx ecx, byte [ebp + eax - 0x4c8]
mov dword [ebp - 0x4e0], ecx
mov dl, byte [ebp - 0xba]
add dl, 1
mov byte [ebp - 0xba], dl
movzx eax, byte [ebp - 0xbd]
add eax, dword [ebp - 0x4e0]
mov byte [ebp - 0xbd], al
movzx ecx, byte [ebp - 0xbd]
movzx edx, byte [ebp - 0xc0]
mov al, byte [ebp + ecx - 0x4c8]
mov byte [ebp + edx - 0x4c8], al
movss xmm0, dword [0x5321fc]
movss dword [ebp - 0xe8], xmm0
movss xmm0, dword [0x532a48]
movss dword [ebp - 0x104], xmm0
movss xmm0, dword [0x532a20]
movss dword [ebp - 0xe0], xmm0
movss xmm0, dword [0x5329f4]
movss dword [ebp - 0xd8], xmm0
movss xmm0, dword [0x5329c8]
movss dword [ebp - 0xf0], xmm0
movss xmm0, dword [ebp - 0xd8]
addss xmm0, dword [ebp - 0xf0]
movss dword [ebp - 0xd8], xmm0
movss xmm0, dword [ebp - 0xd8]
subss xmm0, dword [ebp - 0xf0]
movss dword [ebp - 0xd8], xmm0
movss xmm0, dword [ebp - 0x104]
mulss xmm0, dword [ebp - 0xf0]
movss dword [ebp - 0x104], xmm0
movss xmm0, dword [ebp - 0xd8]
addss xmm0, dword [ebp - 0xf0]
movss dword [ebp - 0xd8], xmm0
movss xmm0, dword [ebp - 0xe8]
mulss xmm0, dword [ebp - 0xf0]
movss dword [ebp - 0xe8], xmm0
movss xmm0, dword [ebp - 0xf0]
comiss xmm0, dword [ebp - 0xe8]
jbe 0x5173c5
movss xmm0, dword [ebp - 0xe8]
mulss xmm0, dword [ebp - 0x104]
movss dword [ebp - 0xe8], xmm0
movss xmm0, dword [ebp - 0xf0]
divss xmm0, dword [ebp - 0xe8]
movss dword [ebp - 0xf0], xmm0
movss xmm0, dword [ebp - 0xf0]
mulss xmm0, dword [ebp - 0xe8]
movss dword [ebp - 0xf0], xmm0
movss xmm0, dword [ebp - 0xf0]
divss xmm0, dword [ebp - 0xe8]
movss dword [ebp - 0xf0], xmm0
movss xmm0, dword [ebp - 0xe0]
mulss xmm0, dword [ebp - 0xd8]
movss dword [ebp - 0xe0], xmm0
movss xmm0, dword [ebp - 0xd8]
mulss xmm0, dword [ebp - 0xf0]
movss dword [ebp - 0xd8], xmm0
movss xmm0, dword [ebp - 0xe8]
divss xmm0, dword [ebp - 0x104]
movss dword [ebp - 0xe8], xmm0
movss xmm0, dword [ebp - 0xe0]
mulss xmm0, dword [ebp - 0xd8]
movss dword [ebp - 0xe0], xmm0
movss xmm0, dword [ebp - 0xe0]
subss xmm0, dword [ebp - 0xd8]
movss dword [ebp - 0xe0], xmm0
movss xmm0, dword [ebp - 0xf0]
divss xmm0, dword [ebp - 0xe8]
movss dword [ebp - 0xf0], xmm0
movss xmm0, dword [ebp - 0xd8]
comiss xmm0, dword [ebp - 0x104]
jbe 0x5171cd
movss xmm0, dword [ebp - 0xd8]
addss xmm0, dword [ebp - 0xe8]
movss dword [ebp - 0xd8], xmm0
movss xmm0, dword [ebp - 0xd8]
addss xmm0, dword [ebp - 0xe8]
movss dword [ebp - 0xd8], xmm0
movss xmm0, dword [ebp - 0xe0]
subss xmm0, dword [ebp - 0xf0]
movss dword [ebp - 0xe0], xmm0
movss xmm0, dword [ebp - 0xd8]
addss xmm0, dword [ebp - 0xe8]
movss dword [ebp - 0xd8], xmm0
movss xmm0, dword [ebp - 0xe0]
subss xmm0, dword [ebp - 0xf0]
movss dword [ebp - 0xe0], xmm0
jmp 0x5173c0
movss xmm0, dword [ebp - 0xd8]
mulss xmm0, dword [ebp - 0xf0]
movss dword [ebp - 0xd8], xmm0
movss xmm0, dword [ebp - 0xe0]
subss xmm0, dword [ebp - 0xd8]
movss dword [ebp - 0xe0], xmm0
movss xmm0, dword [ebp - 0xd8]
divss xmm0, dword [ebp - 0xf0]
movss dword [ebp - 0xd8], xmm0
movss xmm0, dword [ebp - 0x104]
mulss xmm0, dword [ebp - 0xe0]
movss dword [ebp - 0x104], xmm0
movss xmm0, dword [ebp - 0xe8]
divss xmm0, dword [ebp - 0x104]
movss dword [ebp - 0xe8], xmm0
movss xmm0, dword [ebp - 0xf0]
addss xmm0, dword [ebp - 0x104]
movss dword [ebp - 0xf0], xmm0
movss xmm0, dword [ebp - 0xe8]
addss xmm0, dword [ebp - 0xe0]
movss dword [ebp - 0xe8], xmm0
movss xmm0, dword [ebp - 0xf0]
addss xmm0, dword [ebp - 0x104]
movss dword [ebp - 0xf0], xmm0
movss xmm0, dword [ebp - 0xe0]
addss xmm0, dword [ebp - 0xf0]
movss dword [ebp - 0xe0], xmm0
movss xmm0, dword [ebp - 0xe0]
addss xmm0, dword [ebp - 0xf0]
movss dword [ebp - 0xe0], xmm0
movss xmm0, dword [ebp - 0xd8]
comiss xmm0, dword [ebp - 0x104]
jbe 0x517348
movss xmm0, dword [ebp - 0xe0]
mulss xmm0, dword [ebp - 0xd8]
movss dword [ebp - 0xe0], xmm0
movss xmm0, dword [ebp - 0xd8]
subss xmm0, dword [ebp - 0xf0]
movss dword [ebp - 0xd8], xmm0
movss xmm0, dword [ebp - 0xe0]
addss xmm0, dword [ebp - 0xd8]
movss dword [ebp - 0xe0], xmm0
movss xmm0, dword [ebp - 0x104]
mulss xmm0, dword [ebp - 0xe0]
movss dword [ebp - 0x104], xmm0
movss xmm0, dword [ebp - 0xe0]
addss xmm0, dword [ebp - 0xd8]
movss dword [ebp - 0xe0], xmm0
jmp 0x5173c0
movss xmm0, dword [ebp - 0xe8]
subss xmm0, dword [ebp - 0xe0]
movss dword [ebp - 0xe8], xmm0
movss xmm0, dword [ebp - 0x104]
addss xmm0, dword [ebp - 0xd8]
movss dword [ebp - 0x104], xmm0
movss xmm0, dword [ebp - 0xe8]
addss xmm0, dword [ebp - 0xe0]
movss dword [ebp - 0xe8], xmm0
movss xmm0, dword [ebp - 0x104]
mulss xmm0, dword [ebp - 0xd8]
movss dword [ebp - 0x104], xmm0
movss xmm0, dword [ebp - 0xd8]
subss xmm0, dword [ebp - 0xe8]
movss dword [ebp - 0xd8], xmm0
jmp 0x517459
movss xmm0, dword [ebp - 0xd8]
addss xmm0, dword [ebp - 0xe8]
movss dword [ebp - 0xd8], xmm0
movss xmm0, dword [ebp - 0x104]
addss xmm0, dword [ebp - 0xd8]
movss dword [ebp - 0x104], xmm0
movss xmm0, dword [ebp - 0xe8]
addss xmm0, dword [ebp - 0xe0]
movss dword [ebp - 0xe8], xmm0
movss xmm0, dword [ebp - 0xe8]
subss xmm0, dword [ebp - 0xe0]
movss dword [ebp - 0xe8], xmm0
movss xmm0, dword [ebp - 0xe0]
addss xmm0, dword [ebp - 0xf0]
movss dword [ebp - 0xe0], xmm0
movzx ecx, byte [ebp - 0xbe]
movzx edx, byte [ebp - 0xbd]
mov al, byte [ebp + ecx - 0x4c8]
mov byte [ebp + edx - 0x4c8], al
movzx ecx, byte [ebp - 0xba]
movzx edx, byte [ebp - 0xbe]
mov al, byte [ebp + ecx - 0x4c8]
mov byte [ebp + edx - 0x4c8], al
movzx ecx, byte [ebp - 0xba]
mov dl, byte [ebp - 0xc4]
mov byte [ebp + ecx - 0x4c8], dl
movzx eax, byte [ebp - 0xc4]
movzx ecx, byte [ebp + eax - 0x4c8]
movzx edx, byte [ebp - 0xc5]
add edx, ecx
mov byte [ebp - 0xc5], dl
movzx eax, byte [ebp - 0xc6]
movzx ecx, byte [ebp - 0xbd]
movzx edx, byte [ebp + ecx - 0x4c8]
movzx ecx, byte [ebp - 0xba]
movzx ecx, byte [ebp + ecx - 0x4c8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x4c8]
xor eax, edx
movzx ecx, byte [ebp - 0xbe]
movzx edx, byte [ebp + ecx - 0x4c8]
movzx ecx, byte [ebp - 0xc0]
movzx ecx, byte [ebp + ecx - 0x4c8]
add edx, ecx
movzx ecx, byte [ebp - 0xc5]
movzx ecx, byte [ebp + ecx - 0x4c8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x4c8]
movzx ecx, byte [ebp + edx - 0x4c8]
xor eax, ecx
mov byte [ebp - 0xbe], al
mov dl, byte [ebp - 0xc6]
mov byte [ebp - 0xc0], dl
mov al, byte [ebp - 0xbe]
mov byte [ebp - 0xca], al
cmp dword [ebp - 0xd4], 0
jle 0x517564
movsx cx, byte [ebp - 0xca]
mov edx, dword [ebp - 0xd4]
mov word [ebp + edx*2 - 0x86], cx
jmp 0x516e22
mov eax, dword [ebp - 0x100]
add eax, 1
mov dword [ebp - 0x100], eax
mov ecx, dword [ebp - 0xd4]
add ecx, 1
mov dword [ebp - 0xd4], ecx
mov edx, dword [ebp - 0x100]
add edx, 1
mov dword [ebp - 0x100], edx
mov eax, dword [ebp - 0xd4]
shl eax, 1
mov dword [ebp - 0x168], eax
mov ecx, dword [ebp - 0x16c]
add ecx, dword [ebp - 0x168]
movzx edx, byte [ecx]
mov dword [ebp - 0x160], edx
mov dword [ebp - 0x164], 0xc3
mov eax, dword [ebp - 0xd4]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x170], ecx
mov edx, dword [ebp - 0x16c]
add edx, dword [ebp - 0x170]
movzx eax, byte [edx]
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x154], 0x64
mov ecx, dword [ebp - 0x160]
sub ecx, dword [ebp - 0x164]
mov dword [ebp - 0x15c], ecx
mov edx, dword [ebp - 0x150]
sub edx, dword [ebp - 0x154]
mov dword [ebp - 0x158], edx
mov eax, dword [ebp - 0x15c]
shl eax, 4
mov dword [ebp - 0x174], eax
mov ecx, dword [ebp - 0x158]
mov dword [ebp - 0x178], ecx
mov edx, dword [ebp - 0x174]
or edx, dword [ebp - 0x178]
mov dword [ebp - 0x17c], edx
mov al, byte [ebp - 0x17c]
mov byte [ebp - 0xc6], al
movzx ecx, byte [ebp - 0xc0]
mov dl, byte [ebp + ecx - 0x4c8]
mov byte [ebp - 0xc4], dl
movzx eax, byte [ebp - 0xba]
movzx ecx, byte [ebp + eax - 0x4c8]
mov dword [ebp - 0x4e4], ecx
mov dl, byte [ebp - 0xba]
add dl, 1
mov byte [ebp - 0xba], dl
movzx eax, byte [ebp - 0xbd]
add eax, dword [ebp - 0x4e4]
mov byte [ebp - 0xbd], al
movzx ecx, byte [ebp - 0xbd]
movzx edx, byte [ebp - 0xc0]
mov al, byte [ebp + ecx - 0x4c8]
mov byte [ebp + edx - 0x4c8], al
movzx ecx, byte [ebp - 0xbe]
movzx edx, byte [ebp - 0xbd]
mov al, byte [ebp + ecx - 0x4c8]
mov byte [ebp + edx - 0x4c8], al
movzx ecx, byte [ebp - 0xba]
movzx edx, byte [ebp - 0xbe]
mov al, byte [ebp + ecx - 0x4c8]
mov byte [ebp + edx - 0x4c8], al
movzx ecx, byte [ebp - 0xba]
mov dl, byte [ebp - 0xc4]
mov byte [ebp + ecx - 0x4c8], dl
movzx eax, byte [ebp - 0xc4]
movzx ecx, byte [ebp + eax - 0x4c8]
movzx edx, byte [ebp - 0xc5]
add edx, ecx
mov byte [ebp - 0xc5], dl
movzx eax, byte [ebp - 0xc6]
movzx ecx, byte [ebp - 0xbd]
movzx edx, byte [ebp + ecx - 0x4c8]
movzx ecx, byte [ebp - 0xba]
movzx ecx, byte [ebp + ecx - 0x4c8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x4c8]
xor eax, edx
movzx ecx, byte [ebp - 0xbe]
movzx edx, byte [ebp + ecx - 0x4c8]
movzx ecx, byte [ebp - 0xc0]
movzx ecx, byte [ebp + ecx - 0x4c8]
add edx, ecx
movzx ecx, byte [ebp - 0xc5]
movzx ecx, byte [ebp + ecx - 0x4c8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x4c8]
movzx ecx, byte [ebp + edx - 0x4c8]
xor eax, ecx
mov byte [ebp - 0xbe], al
mov dl, byte [ebp - 0xc6]
mov byte [ebp - 0xc0], dl
mov al, byte [ebp - 0xbe]
mov byte [ebp - 0xca], al
cmp dword [ebp - 0xd4], 0
jle 0x5177dd
movsx cx, byte [ebp - 0xca]
mov edx, dword [ebp - 0xd4]
mov word [ebp + edx*2 - 0x86], cx
mov eax, dword [ebp - 0xd4]
add eax, 1
mov dword [ebp - 0xd4], eax
mov ecx, dword [ebp - 0x100]
add ecx, 1
mov dword [ebp - 0x100], ecx
mov edx, dword [ebp - 0xd4]
shl edx, 1
mov dword [ebp - 0x168], edx
mov eax, dword [ebp - 0x16c]
add eax, dword [ebp - 0x168]
movzx ecx, byte [eax]
mov dword [ebp - 0x160], ecx
mov dword [ebp - 0x164], 0xc3
mov edx, dword [ebp - 0xd4]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x170], eax
mov ecx, dword [ebp - 0x16c]
add ecx, dword [ebp - 0x170]
movzx edx, byte [ecx]
mov dword [ebp - 0x150], edx
mov dword [ebp - 0x154], 0x64
mov eax, dword [ebp - 0x160]
sub eax, dword [ebp - 0x164]
mov dword [ebp - 0x15c], eax
mov ecx, dword [ebp - 0x150]
sub ecx, dword [ebp - 0x154]
mov dword [ebp - 0x158], ecx
mov edx, dword [ebp - 0x15c]
shl edx, 4
mov dword [ebp - 0x174], edx
mov eax, dword [ebp - 0x158]
mov dword [ebp - 0x178], eax
mov ecx, dword [ebp - 0x174]
or ecx, dword [ebp - 0x178]
mov dword [ebp - 0x17c], ecx
mov dl, byte [ebp - 0x17c]
mov byte [ebp - 0xc6], dl
movzx eax, byte [ebp - 0xc0]
mov cl, byte [ebp + eax - 0x4c8]
mov byte [ebp - 0xc4], cl
movzx edx, byte [ebp - 0xba]
movzx eax, byte [ebp + edx - 0x4c8]
mov dword [ebp - 0x514], eax
mov cl, byte [ebp - 0xba]
add cl, 1
mov byte [ebp - 0xba], cl
movzx edx, byte [ebp - 0xbd]
add edx, dword [ebp - 0x514]
mov byte [ebp - 0xbd], dl
movzx eax, byte [ebp - 0xbd]
movzx ecx, byte [ebp - 0xc0]
mov dl, byte [ebp + eax - 0x4c8]
mov byte [ebp + ecx - 0x4c8], dl
movzx eax, byte [ebp - 0xbe]
movzx ecx, byte [ebp - 0xbd]
mov dl, byte [ebp + eax - 0x4c8]
mov byte [ebp + ecx - 0x4c8], dl
movzx eax, byte [ebp - 0xba]
movzx ecx, byte [ebp - 0xbe]
mov dl, byte [ebp + eax - 0x4c8]
mov byte [ebp + ecx - 0x4c8], dl
movzx eax, byte [ebp - 0xba]
mov cl, byte [ebp - 0xc4]
mov byte [ebp + eax - 0x4c8], cl
movzx edx, byte [ebp - 0xc4]
movzx eax, byte [ebp + edx - 0x4c8]
movzx ecx, byte [ebp - 0xc5]
add ecx, eax
mov byte [ebp - 0xc5], cl
movzx edx, byte [ebp - 0xc6]
movzx eax, byte [ebp - 0xbd]
movzx ecx, byte [ebp + eax - 0x4c8]
movzx eax, byte [ebp - 0xba]
movzx eax, byte [ebp + eax - 0x4c8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x4c8]
xor edx, ecx
movzx eax, byte [ebp - 0xbe]
movzx ecx, byte [ebp + eax - 0x4c8]
movzx eax, byte [ebp - 0xc0]
movzx eax, byte [ebp + eax - 0x4c8]
add ecx, eax
movzx eax, byte [ebp - 0xc5]
movzx eax, byte [ebp + eax - 0x4c8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x4c8]
movzx eax, byte [ebp + ecx - 0x4c8]
xor edx, eax
mov byte [ebp - 0xbe], dl
mov cl, byte [ebp - 0xc6]
mov byte [ebp - 0xc0], cl
mov dl, byte [ebp - 0xbe]
mov byte [ebp - 0xca], dl
cmp dword [ebp - 0xd4], 0
jle 0x517a42
movsx ax, byte [ebp - 0xca]
mov ecx, dword [ebp - 0xd4]
mov word [ebp + ecx*2 - 0x86], ax
mov edx, dword [ebp - 0xd4]
add edx, 1
mov dword [ebp - 0xd4], edx
mov eax, dword [ebp - 0x100]
add eax, 1
mov dword [ebp - 0x100], eax
mov ecx, dword [ebp - 0xd4]
shl ecx, 1
mov dword [ebp - 0x168], ecx
mov edx, dword [ebp - 0x16c]
add edx, dword [ebp - 0x168]
movzx eax, byte [edx]
mov dword [ebp - 0x160], eax
mov dword [ebp - 0x164], 0xc3
mov ecx, dword [ebp - 0xd4]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x170], edx
mov eax, dword [ebp - 0x16c]
add eax, dword [ebp - 0x170]
movzx ecx, byte [eax]
mov dword [ebp - 0x150], ecx
mov dword [ebp - 0x154], 0x64
mov edx, dword [ebp - 0x160]
sub edx, dword [ebp - 0x164]
mov dword [ebp - 0x15c], edx
mov eax, dword [ebp - 0x150]
sub eax, dword [ebp - 0x154]
mov dword [ebp - 0x158], eax
mov ecx, dword [ebp - 0x15c]
shl ecx, 4
mov dword [ebp - 0x174], ecx
mov edx, dword [ebp - 0x158]
mov dword [ebp - 0x178], edx
mov eax, dword [ebp - 0x174]
or eax, dword [ebp - 0x178]
mov dword [ebp - 0x17c], eax
mov cl, byte [ebp - 0x17c]
mov byte [ebp - 0xc6], cl
movzx edx, byte [ebp - 0xc0]
mov al, byte [ebp + edx - 0x4c8]
mov byte [ebp - 0xc4], al
movzx ecx, byte [ebp - 0xba]
movzx edx, byte [ebp + ecx - 0x4c8]
mov dword [ebp - 0x510], edx
mov al, byte [ebp - 0xba]
add al, 1
mov byte [ebp - 0xba], al
movzx ecx, byte [ebp - 0xbd]
add ecx, dword [ebp - 0x510]
mov byte [ebp - 0xbd], cl
movss xmm0, dword [0x532a4c]
movss dword [ebp - 0x198], xmm0
movss xmm0, dword [0x532a28]
movss dword [ebp - 0x228], xmm0
movss xmm0, dword [0x5329f8]
movss dword [ebp - 0x1bc], xmm0
movss xmm0, dword [0x5329cc]
movss dword [ebp - 0x1a4], xmm0
movss xmm0, dword [ebp - 0x198]
addss xmm0, dword [ebp - 0x1a4]
movss dword [ebp - 0x198], xmm0
movss xmm0, dword [ebp - 0x1bc]
subss xmm0, dword [ebp - 0x1a4]
movss dword [ebp - 0x1bc], xmm0
movss xmm0, dword [ebp - 0x198]
mulss xmm0, dword [ebp - 0x1a4]
movss dword [ebp - 0x198], xmm0
movss xmm0, dword [ebp - 0x198]
mulss xmm0, dword [ebp - 0x1a4]
movss dword [ebp - 0x198], xmm0
movss xmm0, dword [ebp - 0x1bc]
comiss xmm0, dword [ebp - 0x198]
jbe 0x517c76
movss xmm0, dword [ebp - 0x198]
addss xmm0, dword [ebp - 0x1bc]
movss dword [ebp - 0x198], xmm0
movss xmm0, dword [ebp - 0x1a4]
mulss xmm0, dword [ebp - 0x228]
movss dword [ebp - 0x1a4], xmm0
movss xmm0, dword [ebp - 0x1a4]
subss xmm0, dword [ebp - 0x228]
movss dword [ebp - 0x1a4], xmm0
movss xmm0, dword [ebp - 0x198]
divss xmm0, dword [ebp - 0x1bc]
movss dword [ebp - 0x198], xmm0
jmp 0x517cf2
movss xmm0, dword [ebp - 0x1a4]
subss xmm0, dword [ebp - 0x198]
movss dword [ebp - 0x1a4], xmm0
movss xmm0, dword [ebp - 0x228]
addss xmm0, dword [ebp - 0x1bc]
movss dword [ebp - 0x228], xmm0
movss xmm0, dword [ebp - 0x1bc]
subss xmm0, dword [ebp - 0x1a4]
movss dword [ebp - 0x1bc], xmm0
movss xmm0, dword [ebp - 0x1bc]
subss xmm0, dword [ebp - 0x1a4]
movss dword [ebp - 0x1bc], xmm0
movzx edx, byte [ebp - 0xbd]
movzx eax, byte [ebp - 0xc0]
mov cl, byte [ebp + edx - 0x4c8]
mov byte [ebp + eax - 0x4c8], cl
movzx edx, byte [ebp - 0xbe]
movzx eax, byte [ebp - 0xbd]
mov cl, byte [ebp + edx - 0x4c8]
mov byte [ebp + eax - 0x4c8], cl
movzx edx, byte [ebp - 0xba]
movzx eax, byte [ebp - 0xbe]
mov cl, byte [ebp + edx - 0x4c8]
mov byte [ebp + eax - 0x4c8], cl
movzx edx, byte [ebp - 0xba]
mov al, byte [ebp - 0xc4]
mov byte [ebp + edx - 0x4c8], al
movzx ecx, byte [ebp - 0xc4]
movzx edx, byte [ebp + ecx - 0x4c8]
movzx eax, byte [ebp - 0xc5]
add eax, edx
mov byte [ebp - 0xc5], al
movzx ecx, byte [ebp - 0xc6]
movzx edx, byte [ebp - 0xbd]
movzx eax, byte [ebp + edx - 0x4c8]
movzx edx, byte [ebp - 0xba]
movzx edx, byte [ebp + edx - 0x4c8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x4c8]
xor ecx, eax
movzx edx, byte [ebp - 0xbe]
movzx eax, byte [ebp + edx - 0x4c8]
movzx edx, byte [ebp - 0xc0]
movzx edx, byte [ebp + edx - 0x4c8]
add eax, edx
movzx edx, byte [ebp - 0xc5]
movzx edx, byte [ebp + edx - 0x4c8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x4c8]
movzx edx, byte [ebp + eax - 0x4c8]
xor ecx, edx
mov byte [ebp - 0xbe], cl
mov al, byte [ebp - 0xc6]
mov byte [ebp - 0xc0], al
mov cl, byte [ebp - 0xbe]
mov byte [ebp - 0xca], cl
cmp dword [ebp - 0xd4], 0
jle 0x517e17
movsx dx, byte [ebp - 0xca]
mov eax, dword [ebp - 0xd4]
mov word [ebp + eax*2 - 0x86], dx
mov ecx, 2
imul edx, ecx, 0x2c
mov dword [ebp - 0x2ac], edx
cmp dword [ebp - 0x2ac], 0x5a
jae 0x517e30
jmp 0x517e36
call fcn.0051da65
nop
xor eax, eax
mov ecx, dword [ebp - 0x2ac]
mov word [ebp + ecx - 0x84], ax
jmp 0x517e9d
mov dword [ebp - 0x22c], 0
jmp 0x517e63
mov edx, dword [ebp - 0x22c]
add edx, 1
mov dword [ebp - 0x22c], edx
cmp dword [ebp - 0x22c], 0x2d
jge 0x517e9d
mov eax, dword [ebp - 0x22c]
shl eax, 1
mov dword [ebp - 0x2a8], eax
cmp dword [ebp - 0x2a8], 0x5a
jae 0x517e85
jmp 0x517e8b
call fcn.0051da65
nop
xor ecx, ecx
mov edx, dword [ebp - 0x2a8]
mov word [ebp + edx - 0x84], cx
jmp 0x517e54
lea eax, [ebp - 0xa8]
push eax
push 0
push 0
lea ecx, [ebp - 0x90]
push ecx
push 0x100
lea edx, [ebp - 0x84]
push edx
push SysReAllocStringLen
mov ecx, dword [ebp - 0x508]
call fcn.0051c4b0
mov byte [ebp - 0x1a5], 0
mov dword [ebp - 0x214], 0
jmp 0x517eed
mov eax, dword [ebp - 0x214]
add eax, 1
mov dword [ebp - 0x214], eax
lea ecx, [ebp - 0x90]
call fcn.00503ea0
cmp dword [ebp - 0x214], eax
jae 0x517f4e
mov ecx, dword [ebp - 0x214]
push ecx
lea ecx, [ebp - 0x90]
call fcn.004eb110
mov edx, dword [eax]
cmp dword [edx + 0x44], 0
je 0x517f21
mov byte [ebp - 0x1a5], 1
mov eax, dword [ebp - 0x214]
push eax
lea ecx, [ebp - 0x90]
call fcn.004eb110
mov ecx, dword [eax]
mov dword [ebp - 0x50c], ecx
push 0x48
mov edx, dword [ebp - 0x50c]
push edx
call fcn.0051d8f5
add esp, 8
jmp 0x517ede
lea ecx, [ebp - 0x90]
call fcn.0051ccf0
nop
mov al, byte [ebp - 0x1a5]
mov byte [ebp - 0x1ed], al
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xa8]
call fcn.004aa870
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x90]
call fcn.004eb0b0
mov al, byte [ebp - 0x1ed]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0051d6f6
mov esp, ebp
pop ebp
ret