Function at 0x40310d
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x6c
push ebx
push esi
mov esi, ecx
push edi
mov dword [ebp - 0x24], esi
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
mov dword [ebp - 0x4c], ecx
call fcn.0040110e
imul ecx, ecx, 6
movsx edx, al
movsx eax, byte [0x4298f1]
mov dword [ebp - 0x48], edx
push 1
add ecx, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
pop ebx
push 0
pop edi
sub eax, ecx
je 0x40343c
test esi, esi
jne 0x403174
mov ecx, ebx
mov edx, edi
jmp 0x403182
xorps xmm0, xmm0
movlpd qword [ebp - 0x60], xmm0
mov edx, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x60]
call fcn.00421ce0
movsd qword [ebp - 0x60], xmm0
xor eax, eax
je 0x403191
add byte [edi], cl
mov esi, 0x4298f205
add byte [ebx], dh
ror byte [ebx + 0x5d8bb475], cl
mov eax, 0x6603fe6b
movd mm2, eax
movsx eax, byte [0x4298f2]
xor edx, edx
mov esi, dword [ebp - 0x4c]
mov ebx, dword [ebp - 0x48]
imul edi, esi, 3
movd xmm2, eax
movsx eax, byte [0x4298f4]
cvtdq2pd xmm2, xmm2
add edi, ebx
mov dword [ebp - 0x4c], edi
movd xmm1, eax
cvtdq2pd xmm1, xmm1
addsd xmm1, xmm1
subsd xmm2, xmm1
mulsd xmm2, qword [ebp - 0x60]
movsd qword [ebp - 0x60], xmm2
movsx eax, byte [0x4298f1]
movsx ecx, byte [0x4298f0]
add eax, edi
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x403226
call fcn.00401108
movsx ecx, al
movsx eax, byte [0x42a530]
imul ecx, eax
add ecx, ecx
call fcn.00401111
movsx eax, al
sub ecx, eax
call fcn.0040110b
movsx eax, al
add ecx, eax
movsx eax, byte [0x4298f4]
add eax, ecx
je 0x403226
push 7
pop edi
jmp 0x40328d
movsx eax, byte [0x4298f1]
xor edx, edx
imul ecx, esi, 9
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x40328a
movsx eax, byte [0x4298f1]
xor edx, edx
movsx ecx, byte [0x4298f0]
add eax, edi
div ecx
movsx ecx, byte [0x4298f3]
movsd xmm0, qword [ebp - 0x60]
sub eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x427020]
mulsd xmm0, xmm1
cvttsd2si edi, xmm0
jmp 0x40328d
mov edi, dword [ebp - 0x5c]
movsx eax, byte [0x4298f1]
xor edx, edx
imul ecx, esi, 7
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
imul eax, edi
test eax, eax
je 0x403434
movsx eax, byte [0x4298f1]
xor edx, edx
movsx ecx, byte [0x4298f0]
add eax, ebx
lea eax, [eax + esi*8]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x427020]
movsd qword [ebp - 0x60], xmm0
xor eax, eax
je 0x4032f8
add byte [edi], cl
mov esi, 0x4298f205
add byte [ebx], dh
shl byte [esi + 0xf], cl
outsb dx, byte [esi]
enter 0xffffffffffffbe0f, 5
hlt
movsx eax, byte [0x4298f2]
xor edx, edx
movd xmm1, eax
movsx eax, byte [0x4298f4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [ebp - 0x60]
movsd qword [ebp - 0x60], xmm1
movsx eax, byte [0x4298f1]
add eax, dword [ebp - 0x4c]
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x403383
call fcn.00401108
movsx ecx, al
movsx eax, byte [0x42a530]
imul ecx, eax
add ecx, ecx
call fcn.00401111
movsx eax, al
sub ecx, eax
call fcn.0040110b
movsx eax, al
add ecx, eax
movsx eax, byte [0x4298f4]
add eax, ecx
je 0x403383
push 7
pop eax
jmp 0x403425
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 9
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x403422
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 3
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
movsd xmm0, qword [ebp - 0x60]
sub eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x427020]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
jmp 0x403425
mov eax, dword [ebp - 0x5c]
xor edi, edi
cmp edi, eax
jl 0x404a72
xor ebx, ebx
inc ebx
jmp 0x403439
xor ebx, ebx
inc ebx
xor edi, edi
mov esi, dword [ebp - 0x24]
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul ecx, ecx, 3
call fcn.0040110e
movsx eax, al
xor edx, edx
add ecx, eax
movsx eax, byte [0x4298f1]
add eax, ecx
mov dword [ebp - 0x4c], ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x4037b7
mov eax, 0x5a4d
cmp word [esi], ax
je 0x403492
mov ecx, ebx
mov edx, edi
jmp 0x4034a0
xorps xmm0, xmm0
movlpd qword [ebp - 0x60], xmm0
mov edx, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x60]
call fcn.00421ce0
movsd qword [ebp - 0x60], xmm0
xor eax, eax
je 0x4034af
add byte [edi], cl
mov esi, 0x4298f205
add byte [ebx], dh
ror byte [ebx + 0xf66b475], cl
outsb dx, byte [esi]
ror byte [edi], 1
mov esi, 0x4298f405
add bl, dh
invalid
movsx eax, byte [0x4298f2]
xor edx, edx
mov esi, dword [ebp - 0x4c]
movd xmm2, eax
movsx eax, byte [0x4298f4]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
cvtdq2pd xmm1, xmm1
addsd xmm1, xmm1
subsd xmm2, xmm1
mulsd xmm2, qword [ebp - 0x60]
movsd qword [ebp - 0x60], xmm2
movsx eax, byte [0x4298f1]
movsx ecx, byte [0x4298f0]
add eax, esi
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x40353c
call fcn.00401108
movsx ecx, al
movsx eax, byte [0x42a530]
imul ecx, eax
add ecx, ecx
call fcn.00401111
movsx eax, al
sub ecx, eax
call fcn.0040110b
movsx eax, al
add ecx, eax
movsx eax, byte [0x4298f4]
add eax, ecx
je 0x40353c
push 7
pop esi
jmp 0x4035be
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 9
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x4035bb
movsx eax, byte [0x4298f1]
xor edx, edx
movsx ecx, byte [0x4298f0]
add eax, esi
div ecx
movsx ecx, byte [0x4298f3]
movsd xmm0, qword [ebp - 0x60]
sub eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x427020]
mulsd xmm0, xmm1
cvttsd2si esi, xmm0
jmp 0x4035be
mov esi, dword [ebp - 0x5c]
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
call fcn.0040110e
movsx eax, al
xor edx, edx
lea eax, [eax + ecx*4]
movsx ecx, byte [0x4298f1]
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
imul eax, esi
test eax, eax
je 0x4037b7
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 5
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x427020]
movsd qword [ebp - 0x60], xmm0
xor eax, eax
je 0x40365f
add byte [edi], cl
mov esi, 0x4298f205
add byte [esi + 0xf], ah
outsb dx, byte [esi]
enter 0xffffffffffffbe0f, 5
hlt
movsx eax, byte [0x4298f2]
movd xmm1, eax
movsx eax, byte [0x4298f4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [ebp - 0x60]
movsd qword [ebp - 0x60], xmm1
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 3
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x403709
call fcn.00401108
movsx ecx, al
movsx eax, byte [0x42a530]
imul ecx, eax
add ecx, ecx
call fcn.00401111
movsx eax, al
sub ecx, eax
call fcn.0040110b
movsx eax, al
add ecx, eax
movsx eax, byte [0x4298f4]
add eax, ecx
je 0x403709
push 7
pop eax
jmp 0x4037ab
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 9
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x4037a8
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 3
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
movsd xmm0, qword [ebp - 0x60]
sub eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x427020]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
jmp 0x4037ab
mov eax, dword [ebp - 0x5c]
xor esi, esi
cmp esi, eax
jl 0x404a72
jmp 0x4037b9
xor esi, esi
lea eax, [ebp - 0x68]
push eax
call fcn.00404c31
mov ebx, eax
xor eax, eax
inc eax
mov dword [ebp - 0x20], ebx
cmp byte [ebx], 0
jne 0x404318
mov dword [ebp - 4], esi
cmp dword [ebp - 4], eax
jae 0x404318
call fcn.00401102
movsx ecx, al
call fcn.00401105
movsx eax, al
imul ecx, eax
imul ecx, ecx, 6
call fcn.0040110e
movsx eax, al
add eax, ecx
mov dword [ebp - 0x54], eax
call fcn.00401108
movsx esi, al
mov dword [ebp - 8], esi
call fcn.00401111
movsx edi, al
mov dword [ebp - 0xc], edi
call fcn.0040110b
movsx edx, al
mov dword [ebp - 0x10], edx
call fcn.00401102
movsx ecx, al
call fcn.00401105
movsx eax, al
imul ecx, eax
mov dword [ebp - 0x18], ecx
call fcn.0040110e
movsx eax, al
mov dword [ebp - 0x14], eax
imul eax, ecx, 3
add eax, dword [ebp - 0x14]
mov dword [ebp - 0x1c], eax
movsx eax, byte [0x42a530]
imul eax, esi
imul ecx, eax, 0xa
movsx eax, byte [0x4298f4]
sub ecx, edi
add ecx, edx
add eax, ecx
je 0x403a63
xor eax, eax
je 0x403872
add byte [edi], cl
mov esi, 0x4298f205
add byte [ebx], dh
ror byte [ebx + 0xf66e475], cl
outsb dx, byte [esi]
enter 0xffffffffffffbe0f, 5
hlt
movsx eax, byte [0x4298f2]
xor edx, edx
mov esi, dword [ebp - 0x1c]
movd xmm1, eax
movsx eax, byte [0x4298f4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x427018]
movsd qword [ebp - 0x60], xmm1
movsx eax, byte [0x4298f1]
movsx ecx, byte [0x4298f0]
add eax, esi
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x4038ee
movsx ecx, byte [0x42a530]
imul ecx, dword [ebp - 8]
movsx eax, byte [0x4298f4]
add ecx, ecx
sub ecx, dword [ebp - 0xc]
add ecx, dword [ebp - 0x10]
add eax, ecx
je 0x4038ee
mov dword [ebp - 0x2c], 7
jmp 0x403955
imul ecx, dword [ebp - 0x18], 9
xor edx, edx
movsx eax, byte [0x4298f1]
add ecx, dword [ebp - 0x14]
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x403955
movsx eax, byte [0x4298f1]
xor edx, edx
movsx ecx, byte [0x4298f0]
add eax, esi
div ecx
movsx ecx, byte [0x4298f3]
movsd xmm0, qword [ebp - 0x60]
sub eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x427020]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [ebp - 0x2c], eax
xor eax, eax
je 0x40395a
add byte [edi], cl
mov esi, 0x4298f205
add byte [ebx], dh
ror byte [ebx + 0x758be45d], cl
clc
movsx eax, byte [0x4298f2]
xor edx, edx
mov ebx, dword [ebp - 0x1c]
mov esi, dword [ebp - 8]
mov edi, dword [ebp - 0xc]
movd xmm1, eax
movsx eax, byte [0x4298f4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x427018]
movsd qword [ebp - 0x60], xmm1
movsx eax, byte [0x4298f1]
movsx ecx, byte [0x4298f0]
add eax, ebx
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x4039da
movsx ecx, byte [0x42a530]
movsx eax, byte [0x4298f4]
imul ecx, esi
add ecx, ecx
sub ecx, edi
add ecx, dword [ebp - 0x10]
add eax, ecx
je 0x4039da
mov dword [ebp - 0x28], 7
jmp 0x403a41
imul ecx, dword [ebp - 0x18], 9
xor edx, edx
movsx eax, byte [0x4298f1]
add ecx, dword [ebp - 0x14]
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x403a41
movsx eax, byte [0x4298f1]
xor edx, edx
movsx ecx, byte [0x4298f0]
add eax, ebx
div ecx
movsx ecx, byte [0x4298f3]
movsd xmm0, qword [ebp - 0x60]
sub eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x427020]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 4]
mov ebx, dword [ebp - 0x20]
mov edx, dword [ebx + eax*4 + 4]
mov eax, dword [ebp - 4]
and edx, dword [ebp - 0x28]
add edx, edx
mov ecx, dword [ebx + eax*4 + 4]
mov eax, dword [ebp - 4]
sub ecx, edx
add ecx, dword [ebp - 0x2c]
mov dword [ebx + eax*4 + 4], ecx
movsx eax, byte [0x4298f1]
xor edx, edx
add eax, dword [ebp - 0x54]
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x4040f0
movsx eax, byte [0x42a530]
imul eax, esi
imul ecx, eax, 5
movsx eax, byte [0x4298f4]
sub ecx, edi
add ecx, dword [ebp - 0x10]
add eax, ecx
je 0x403c9e
xor eax, eax
je 0x403aad
add byte [edi], cl
mov esi, 0x4298f205
add byte [ebx], dh
ror byte [ebx + 0xf66e45d], cl
outsb dx, byte [esi]
enter 0xffffffffffffbe0f, 5
hlt
movsx eax, byte [0x4298f2]
xor edx, edx
mov ebx, dword [ebp - 0x1c]
movd xmm1, eax
movsx eax, byte [0x4298f4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x427010]
movsd qword [ebp - 0x60], xmm1
movsx eax, byte [0x4298f1]
movsx ecx, byte [0x4298f0]
add eax, ebx
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x403b29
movsx ecx, byte [0x42a530]
imul ecx, dword [ebp - 8]
movsx eax, byte [0x4298f4]
add ecx, ecx
sub ecx, dword [ebp - 0xc]
add ecx, dword [ebp - 0x10]
add eax, ecx
je 0x403b29
mov dword [ebp - 0x34], 7
jmp 0x403b90
imul ecx, dword [ebp - 0x18], 9
xor edx, edx
movsx eax, byte [0x4298f1]
add ecx, dword [ebp - 0x14]
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x403b90
movsx eax, byte [0x4298f1]
xor edx, edx
movsx ecx, byte [0x4298f0]
add eax, ebx
div ecx
movsx ecx, byte [0x4298f3]
movsd xmm0, qword [ebp - 0x60]
sub eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x427020]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [ebp - 0x34], eax
xor eax, eax
je 0x403b95
add byte [edi], cl
mov esi, 0x4298f205
add byte [ebx], dh
ror byte [ebx + 0x758be45d], cl
clc
movsx eax, byte [0x4298f2]
xor edx, edx
mov ebx, dword [ebp - 0x1c]
mov esi, dword [ebp - 8]
mov edi, dword [ebp - 0xc]
movd xmm1, eax
movsx eax, byte [0x4298f4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x427010]
movsd qword [ebp - 0x60], xmm1
movsx eax, byte [0x4298f1]
movsx ecx, byte [0x4298f0]
add eax, ebx
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x403c15
movsx ecx, byte [0x42a530]
movsx eax, byte [0x4298f4]
imul ecx, esi
add ecx, ecx
sub ecx, edi
add ecx, dword [ebp - 0x10]
add eax, ecx
je 0x403c15
mov dword [ebp - 0x30], 7
jmp 0x403c7c
imul ecx, dword [ebp - 0x18], 9
xor edx, edx
movsx eax, byte [0x4298f1]
add ecx, dword [ebp - 0x14]
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x403c7c
movsx eax, byte [0x4298f1]
xor edx, edx
movsx ecx, byte [0x4298f0]
add eax, ebx
div ecx
movsx ecx, byte [0x4298f3]
movsd xmm0, qword [ebp - 0x60]
sub eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x427020]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 4]
mov ebx, dword [ebp - 0x20]
mov edx, dword [ebx + eax*4 + 4]
mov eax, dword [ebp - 4]
and edx, dword [ebp - 0x30]
add edx, edx
mov ecx, dword [ebx + eax*4 + 4]
mov eax, dword [ebp - 4]
sub ecx, edx
add ecx, dword [ebp - 0x34]
mov dword [ebx + eax*4 + 4], ecx
movsx eax, byte [0x42a530]
imul eax, esi
imul ecx, eax, 0xa
movsx eax, byte [0x4298f4]
sub ecx, edi
add ecx, dword [ebp - 0x10]
add eax, ecx
je 0x403eb5
xor eax, eax
je 0x403cc4
add byte [edi], cl
mov esi, 0x4298f205
add byte [ebx], dh
ror byte [ebx + 0xf66e45d], cl
outsb dx, byte [esi]
enter 0xffffffffffffbe0f, 5
hlt
movsx eax, byte [0x4298f2]
xor edx, edx
mov ebx, dword [ebp - 0x1c]
movd xmm1, eax
movsx eax, byte [0x4298f4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x427008]
movsd qword [ebp - 0x60], xmm1
movsx eax, byte [0x4298f1]
movsx ecx, byte [0x4298f0]
add eax, ebx
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x403d40
movsx ecx, byte [0x42a530]
imul ecx, dword [ebp - 8]
movsx eax, byte [0x4298f4]
add ecx, ecx
sub ecx, dword [ebp - 0xc]
add ecx, dword [ebp - 0x10]
add eax, ecx
je 0x403d40
mov dword [ebp - 0x3c], 7
jmp 0x403da7
imul ecx, dword [ebp - 0x18], 9
xor edx, edx
movsx eax, byte [0x4298f1]
add ecx, dword [ebp - 0x14]
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x403da7
movsx eax, byte [0x4298f1]
xor edx, edx
movsx ecx, byte [0x4298f0]
add eax, ebx
div ecx
movsx ecx, byte [0x4298f3]
movsd xmm0, qword [ebp - 0x60]
sub eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x427020]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [ebp - 0x3c], eax
xor eax, eax
je 0x403dac
add byte [edi], cl
mov esi, 0x4298f205
add byte [ebx], dh
ror byte [ebx + 0x758be45d], cl
clc
movsx eax, byte [0x4298f2]
xor edx, edx
mov ebx, dword [ebp - 0x1c]
mov esi, dword [ebp - 8]
mov edi, dword [ebp - 0xc]
movd xmm1, eax
movsx eax, byte [0x4298f4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x427008]
movsd qword [ebp - 0x60], xmm1
movsx eax, byte [0x4298f1]
movsx ecx, byte [0x4298f0]
add eax, ebx
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x403e2c
movsx ecx, byte [0x42a530]
movsx eax, byte [0x4298f4]
imul ecx, esi
add ecx, ecx
sub ecx, edi
add ecx, dword [ebp - 0x10]
add eax, ecx
je 0x403e2c
mov dword [ebp - 0x38], 7
jmp 0x403e93
imul ecx, dword [ebp - 0x18], 9
xor edx, edx
movsx eax, byte [0x4298f1]
add ecx, dword [ebp - 0x14]
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x403e93
movsx eax, byte [0x4298f1]
xor edx, edx
movsx ecx, byte [0x4298f0]
add eax, ebx
div ecx
movsx ecx, byte [0x4298f3]
movsd xmm0, qword [ebp - 0x60]
sub eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x427020]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 4]
mov ebx, dword [ebp - 0x20]
mov edx, dword [ebx + eax*4 + 4]
mov eax, dword [ebp - 4]
and edx, dword [ebp - 0x38]
add edx, edx
mov ecx, dword [ebx + eax*4 + 4]
mov eax, dword [ebp - 4]
sub ecx, edx
add ecx, dword [ebp - 0x3c]
mov dword [ebx + eax*4 + 4], ecx
movsx eax, byte [0x4298f1]
xor edx, edx
add eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x14]
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x4040f0
mov eax, dword [ebp - 4]
sub eax, 0x47
mov dword [ebp - 0x5c], eax
xor eax, eax
je 0x403eea
add byte [edi], cl
mov esi, 0x4298f205
add byte [ebx], dh
ror byte [ebx + 0xf66e45d], cl
outsb dx, byte [esi]
enter 0xffffffffffffbe0f, 5
hlt
movsx eax, byte [0x4298f2]
xor edx, edx
mov ebx, dword [ebp - 0x1c]
movd xmm1, eax
movsx eax, byte [0x4298f4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
movd xmm0, dword [ebp - 0x5c]
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm0
movsd qword [ebp - 0x60], xmm1
movsx eax, byte [0x4298f1]
movsx ecx, byte [0x4298f0]
add eax, ebx
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x403f6b
movsx ecx, byte [0x42a530]
imul ecx, dword [ebp - 8]
movsx eax, byte [0x4298f4]
add ecx, ecx
sub ecx, dword [ebp - 0xc]
add ecx, dword [ebp - 0x10]
add eax, ecx
je 0x403f6b
mov dword [ebp - 0x44], 7
jmp 0x403fd2
imul ecx, dword [ebp - 0x18], 9
xor edx, edx
movsx eax, byte [0x4298f1]
add ecx, dword [ebp - 0x14]
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x403fd2
movsx eax, byte [0x4298f1]
xor edx, edx
movsx ecx, byte [0x4298f0]
add eax, ebx
div ecx
movsx ecx, byte [0x4298f3]
movsd xmm0, qword [ebp - 0x60]
sub eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x427020]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 4]
sub eax, 0x47
mov dword [ebp - 0x5c], eax
xor eax, eax
je 0x403fe0
add byte [edi], cl
mov esi, 0x4298f205
add byte [ebx], dh
ror byte [ebx + 0xf66e45d], cl
outsb dx, byte [esi]
enter 0xffffffffffffbe0f, 5
hlt
movsx eax, byte [0x4298f2]
xor edx, edx
mov ebx, dword [ebp - 0x1c]
movd xmm1, eax
movsx eax, byte [0x4298f4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
movd xmm0, dword [ebp - 0x5c]
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm0
movsd qword [ebp - 0x60], xmm1
movsx eax, byte [0x4298f1]
movsx ecx, byte [0x4298f0]
add eax, ebx
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x404061
movsx ecx, byte [0x42a530]
imul ecx, dword [ebp - 8]
movsx eax, byte [0x4298f4]
add ecx, ecx
sub ecx, dword [ebp - 0xc]
add ecx, dword [ebp - 0x10]
add eax, ecx
je 0x404061
mov dword [ebp - 0x40], 7
jmp 0x4040c8
imul ecx, dword [ebp - 0x18], 9
xor edx, edx
movsx eax, byte [0x4298f1]
add ecx, dword [ebp - 0x14]
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x4040c8
movsx eax, byte [0x4298f1]
xor edx, edx
movsx ecx, byte [0x4298f0]
add eax, ebx
div ecx
movsx ecx, byte [0x4298f3]
movsd xmm0, qword [ebp - 0x60]
sub eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x427020]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 4]
mov ebx, dword [ebp - 0x20]
mov esi, dword [ebp - 8]
mov edi, dword [ebp - 0xc]
mov edx, dword [ebx + eax*4 + 4]
mov eax, dword [ebp - 4]
and edx, dword [ebp - 0x40]
add edx, edx
mov ecx, dword [ebx + eax*4 + 4]
mov eax, dword [ebp - 4]
sub ecx, edx
add ecx, dword [ebp - 0x44]
mov dword [ebx + eax*4 + 4], ecx
movsx ecx, byte [0x42a530]
mov edx, dword [ebp - 0x10]
movsx eax, byte [0x4298f4]
imul ecx, esi
sub ecx, edi
add ecx, edx
add eax, ecx
je 0x404309
xor eax, eax
je 0x404115
add byte [edi], cl
mov esi, 0x4298f205
add byte [ebx], dh
ror byte [ebx + 0xf66e45d], cl
outsb dx, byte [esi]
enter 0xffffffffffffbe0f, 5
hlt
movsx eax, byte [0x4298f2]
xor edx, edx
mov ebx, dword [ebp - 0x1c]
movd xmm1, eax
movsx eax, byte [0x4298f4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x427000]
movsd qword [ebp - 0x60], xmm1
movsx eax, byte [0x4298f1]
movsx ecx, byte [0x4298f0]
add eax, ebx
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x404191
movsx ecx, byte [0x42a530]
imul ecx, dword [ebp - 8]
movsx eax, byte [0x4298f4]
add ecx, ecx
sub ecx, dword [ebp - 0xc]
add ecx, dword [ebp - 0x10]
add eax, ecx
je 0x404191
mov dword [ebp - 0x4c], 7
jmp 0x4041f8
imul ecx, dword [ebp - 0x18], 9
xor edx, edx
movsx eax, byte [0x4298f1]
add ecx, dword [ebp - 0x14]
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x4041f8
movsx eax, byte [0x4298f1]
xor edx, edx
movsx ecx, byte [0x4298f0]
add eax, ebx
div ecx
movsx ecx, byte [0x4298f3]
movsd xmm0, qword [ebp - 0x60]
sub eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x427020]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [ebp - 0x4c], eax
xor eax, eax
je 0x4041fd
add byte [edi], cl
mov esi, 0x4298f205
add byte [ebx], dh
ror byte [ebx + 0x758be45d], cl
clc
movsx eax, byte [0x4298f2]
xor edx, edx
mov ebx, dword [ebp - 0x1c]
mov esi, dword [ebp - 8]
mov edi, dword [ebp - 0xc]
movd xmm1, eax
movsx eax, byte [0x4298f4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x427000]
movsd qword [ebp - 0x60], xmm1
movsx eax, byte [0x4298f1]
movsx ecx, byte [0x4298f0]
add eax, ebx
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x40427d
movsx ecx, byte [0x42a530]
movsx eax, byte [0x4298f4]
imul ecx, esi
add ecx, ecx
sub ecx, edi
add ecx, dword [ebp - 0x10]
add eax, ecx
je 0x40427d
mov dword [ebp - 0x48], 7
jmp 0x4042e4
imul ecx, dword [ebp - 0x18], 9
xor edx, edx
movsx eax, byte [0x4298f1]
add ecx, dword [ebp - 0x14]
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x4042e4
movsx eax, byte [0x4298f1]
xor edx, edx
movsx ecx, byte [0x4298f0]
add eax, ebx
div ecx
movsx ecx, byte [0x4298f3]
movsd xmm0, qword [ebp - 0x60]
sub eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x427020]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 4]
mov ebx, dword [ebp - 0x20]
mov edx, dword [ebx + eax*4 + 4]
mov eax, dword [ebp - 4]
and edx, dword [ebp - 0x48]
add edx, edx
mov ecx, dword [ebx + eax*4 + 4]
mov eax, dword [ebp - 4]
sub ecx, edx
add ecx, dword [ebp - 0x4c]
mov edx, dword [ebp - 0x10]
mov dword [ebx + eax*4 + 4], ecx
xor eax, eax
inc eax
add dword [ebp - 4], eax
cmp dword [ebp - 4], eax
jb 0x40384d
mov byte [ebx], al
mov eax, dword [ebp - 0x24]
mov esi, dword [ebx + 4]
mov eax, dword [eax + 0x3c]
mov dword [ebp - 0x20], eax
call fcn.00401105
movsx edx, al
call fcn.00401102
movsx ecx, al
imul edx, ecx
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x4046d6
cmp dword [ebp - 0x20], esi
jle 0x404374
xor ecx, ecx
inc ecx
xor eax, eax
mov edx, eax
jmp 0x404382
xorps xmm0, xmm0
movlpd qword [ebp - 0x60], xmm0
mov edx, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x60]
call fcn.00421ce0
movsd qword [ebp - 0x60], xmm0
xor eax, eax
je 0x404391
add byte [edi], cl
mov esi, 0x4298f205
add byte [esi + 0xf], ah
outsb dx, byte [esi]
ror byte [edi], 1
mov esi, 0x4298f405
add bl, dh
invalid
movsx eax, byte [0x4298f2]
movd xmm2, eax
movsx eax, byte [0x4298f4]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
cvtdq2pd xmm1, xmm1
addsd xmm1, xmm1
subsd xmm2, xmm1
mulsd xmm2, qword [ebp - 0x60]
movsd qword [ebp - 0x60], xmm2
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 3
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x40443b
call fcn.00401108
movsx ecx, al
movsx eax, byte [0x42a530]
imul ecx, eax
add ecx, ecx
call fcn.00401111
movsx eax, al
sub ecx, eax
call fcn.0040110b
movsx eax, al
add ecx, eax
movsx eax, byte [0x4298f4]
add eax, ecx
je 0x40443b
push 7
pop esi
jmp 0x4044dd
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 9
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x4044da
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 3
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
movsd xmm0, qword [ebp - 0x60]
sub eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x427020]
mulsd xmm0, xmm1
cvttsd2si esi, xmm0
jmp 0x4044dd
mov esi, dword [ebp - 0x5c]
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
call fcn.0040110e
movsx eax, al
xor edx, edx
lea eax, [eax + ecx*2]
movsx ecx, byte [0x4298f1]
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
imul eax, esi
test eax, eax
je 0x4046d6
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 3
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x427020]
movsd qword [ebp - 0x60], xmm0
xor eax, eax
je 0x40457e
add byte [edi], cl
mov esi, 0x4298f205
add byte [esi + 0xf], ah
outsb dx, byte [esi]
enter 0xffffffffffffbe0f, 5
hlt
movsx eax, byte [0x4298f2]
movd xmm1, eax
movsx eax, byte [0x4298f4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [ebp - 0x60]
movsd qword [ebp - 0x60], xmm1
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 3
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x404628
call fcn.00401108
movsx ecx, al
movsx eax, byte [0x42a530]
imul ecx, eax
add ecx, ecx
call fcn.00401111
movsx eax, al
sub ecx, eax
call fcn.0040110b
movsx eax, al
add ecx, eax
movsx eax, byte [0x4298f4]
add eax, ecx
je 0x404628
push 7
pop eax
jmp 0x4046ca
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 9
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x4046c7
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 3
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
movsd xmm0, qword [ebp - 0x60]
sub eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x427020]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
jmp 0x4046ca
mov eax, dword [ebp - 0x5c]
xor esi, esi
cmp esi, eax
jl 0x404a72
jmp 0x4046d8
xor esi, esi
mov ebx, dword [ebp - 0x20]
add ebx, dword [ebp - 0x24]
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
call fcn.0040110e
movsx eax, al
xor edx, edx
lea eax, [eax + ecx*8]
movsx ecx, byte [0x4298f1]
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x404a79
cmp dword [ebx], 0x4550
je 0x40472e
xor eax, eax
mov edx, esi
inc eax
jmp 0x40473c
xorps xmm0, xmm0
movlpd qword [ebp - 0x60], xmm0
mov edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x60]
mov ecx, eax
call fcn.00421ce0
movsd qword [ebp - 0x60], xmm0
xor eax, eax
je 0x40474d
add byte [edi], cl
mov esi, 0x4298f205
add byte [esi + 0xf], ah
outsb dx, byte [esi]
ror byte [edi], 1
mov esi, 0x4298f405
add bl, dh
invalid
movsx eax, byte [0x4298f2]
movd xmm2, eax
movsx eax, byte [0x4298f4]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
cvtdq2pd xmm1, xmm1
addsd xmm1, xmm1
subsd xmm2, xmm1
mulsd xmm2, qword [ebp - 0x60]
movsd qword [ebp - 0x60], xmm2
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 3
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x4047f7
call fcn.00401108
movsx ecx, al
movsx eax, byte [0x42a530]
imul ecx, eax
add ecx, ecx
call fcn.00401111
movsx eax, al
sub ecx, eax
call fcn.0040110b
movsx eax, al
add ecx, eax
movsx eax, byte [0x4298f4]
add eax, ecx
je 0x4047f7
push 7
pop esi
jmp 0x404899
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 9
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x404896
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 3
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
movsd xmm0, qword [ebp - 0x60]
sub eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x427020]
mulsd xmm0, xmm1
cvttsd2si esi, xmm0
jmp 0x404899
mov esi, dword [ebp - 0x5c]
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul ecx, ecx, 9
call fcn.0040110e
movsx eax, al
xor edx, edx
add ecx, eax
movsx eax, byte [0x4298f1]
add eax, ecx
mov dword [ebp - 0x5c], ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
imul eax, esi
test eax, eax
je 0x404a79
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 0xa
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x427020]
movsd qword [ebp - 0x58], xmm0
xor eax, eax
je 0x40493f
add byte [edi], cl
mov esi, 0x4298f205
add byte [esi + 0xf], ah
outsb dx, byte [esi]
enter 0xffffffffffffbe0f, 5
hlt
movsx eax, byte [0x4298f2]
movd xmm1, eax
movsx eax, byte [0x4298f4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [ebp - 0x58]
movsd qword [ebp - 0x58], xmm1
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 3
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x4049e9
call fcn.00401108
movsx ecx, al
movsx eax, byte [0x42a530]
imul ecx, eax
add ecx, ecx
call fcn.00401111
movsx eax, al
sub ecx, eax
call fcn.0040110b
movsx eax, al
add ecx, eax
movsx eax, byte [0x4298f4]
add eax, ecx
je 0x4049e9
push 7
pop eax
jmp 0x404a6c
movsx eax, byte [0x4298f1]
xor edx, edx
add eax, dword [ebp - 0x5c]
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x404a69
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 3
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
movsd xmm0, qword [ebp - 0x58]
sub eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x427020]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
jmp 0x404a6c
mov eax, dword [ebp - 0x5c]
xor ecx, ecx
cmp ecx, eax
jge 0x404a79
xor eax, eax
jmp 0x404c2c
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 6
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x427020]
movsd qword [ebp - 0x60], xmm0
xor eax, eax
je 0x404ad4
add byte [edi], cl
mov esi, 0x4298f205
add byte [esi + 0xf], ah
outsb dx, byte [esi]
enter 0xffffffffffffbe0f, 5
hlt
movsx eax, byte [0x4298f2]
movd xmm1, eax
movsx eax, byte [0x4298f4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [ebp - 0x60]
movsd qword [ebp - 0x60], xmm1
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 3
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x404b7e
call fcn.00401108
movsx ecx, al
movsx eax, byte [0x42a530]
imul ecx, eax
add ecx, ecx
call fcn.00401111
movsx eax, al
sub ecx, eax
call fcn.0040110b
movsx eax, al
add ecx, eax
movsx eax, byte [0x4298f4]
add eax, ecx
je 0x404b7e
push 7
pop eax
jmp 0x404c20
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 9
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
sub eax, ecx
je 0x404c1d
call fcn.00401105
movsx ecx, al
call fcn.00401102
movsx eax, al
imul ecx, eax
imul edx, ecx, 3
call fcn.0040110e
movsx ecx, byte [0x4298f1]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x4298f0]
div ecx
movsx ecx, byte [0x4298f3]
movsd xmm0, qword [ebp - 0x60]
sub eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x427020]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
jmp 0x404c20
mov eax, dword [ebp - 0x5c]
xor ecx, ecx
cmp ecx, eax
jge 0x404c2c
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x24]
pop edi
pop esi
pop ebx
leave
ret