Function at 0x436620
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5353dd
mov eax, dword fs:[0]
push eax
sub esp, 0x9c
mov eax, dword [0x580400]
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 eax, ecx
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0xa8]
push eax
mov dword [ebp - 0x78], 0
call fcn.00437f00
mov edi, eax
mov dword [ebp - 0x44], edi
cmp byte [edi], 0
jne 0x437294
mov dword [ebp - 0x28], 0
cmp dword [ebp - 0x28], 0x10
jae 0x437294
call fcn.00413dc0
movsx esi, al
call fcn.00413db0
movsx eax, al
imul esi, eax
mov dword [ebp - 0x30], esi
call fcn.00413df0
movsx edi, al
lea eax, [esi*8]
sub eax, esi
mov dword [ebp - 0x38], edi
add eax, edi
mov dword [ebp - 0x54], eax
call fcn.00413dd0
movsx edx, al
mov dword [ebp - 0x40], edx
call fcn.00413e00
movsx eax, al
mov dword [ebp - 0x3c], eax
call fcn.00413de0
mov edi, dword [ebp - 0x44]
movsx eax, al
mov dword [ebp - 0x2c], eax
nop
movsx ecx, byte [0x5813b0]
imul ecx, edx
sub ecx, dword [ebp - 0x3c]
add ecx, eax
movsx eax, byte [0x580488]
add eax, ecx
je 0x43691f
xor eax, eax
je 0x436703
add byte [edi], cl
mov esi, 0x58048605
add byte [ebx], dh
ror byte [ebx + 0x7d8bd075], cl
enter 0xf66, 0x6e
enter 0xffffffffffffbe0f, 5
mov byte [eax + ebx*2], al
add byte [ebp + 0xb50c], cl
add byte [eax], al
movsx eax, byte [0x580486]
xor edx, edx
mov esi, dword [ebp - 0x30]
mov edi, dword [ebp - 0x38]
movd xmm1, eax
movsx eax, byte [0x580488]
lea ecx, [esi*4]
cvtdq2pd xmm1, xmm1
add ecx, edi
mov dword [ebp - 0x34], ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x551338]
movsd qword [ebp - 0x24], xmm1
movsx eax, byte [0x580485]
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x436791
movsx eax, byte [0x5813b0]
imul eax, dword [ebp - 0x40]
lea ecx, [eax + eax*2]
movsx eax, byte [0x580488]
sub ecx, dword [ebp - 0x3c]
add ecx, dword [ebp - 0x2c]
add eax, ecx
je 0x436791
mov dword [ebp - 0x5c], 8
jmp 0x4367fc
movsx eax, byte [0x580485]
lea ecx, [esi + esi*4]
add eax, edi
xor edx, edx
lea eax, [eax + ecx*2]
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x4367fc
movsx eax, byte [0x580485]
xor edx, edx
add eax, dword [ebp - 0x34]
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
movsd xmm0, qword [ebp - 0x24]
sub ecx, eax
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
shr ecx, 0x1f
addsd xmm1, qword [ecx*8 + 0x551850]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [ebp - 0x5c], eax
xor eax, eax
je 0x436801
add byte [edi], cl
mov esi, 0x58048605
add byte [ebx], dh
shl byte [esi + 0xf], cl
outsb dx, byte [esi]
enter 0xffffffffffffbe0f, 5
mov byte [eax + ebx*2], al
add bl, dh
invalid
movsx eax, byte [0x580486]
xor edx, edx
movd xmm1, eax
movsx eax, byte [0x580488]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x551338]
movsd qword [ebp - 0x24], xmm1
movsx eax, byte [0x580485]
add eax, dword [ebp - 0x34]
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x436884
movsx eax, byte [0x5813b0]
imul eax, dword [ebp - 0x40]
lea ecx, [eax + eax*2]
movsx eax, byte [0x580488]
sub ecx, dword [ebp - 0x3c]
add ecx, dword [ebp - 0x2c]
add eax, ecx
je 0x436884
mov esi, dword [ebp - 0x30]
mov dword [ebp - 0x58], 8
jmp 0x4368fd
movsx eax, byte [0x580485]
xor edx, edx
mov esi, dword [ebp - 0x30]
mov edi, dword [ebp - 0x38]
add eax, edi
lea ecx, [esi + esi*4]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x4368fd
movsx eax, byte [0x580485]
lea ecx, [esi*4]
add eax, edi
xor edx, edx
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
movsd xmm0, qword [ebp - 0x24]
sub ecx, eax
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
shr ecx, 0x1f
addsd xmm1, qword [ecx*8 + 0x551850]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x28]
mov edi, dword [ebp - 0x44]
mov dl, byte [eax + edi + 1]
mov eax, dword [ebp - 0x28]
and dl, byte [ebp - 0x58]
add dl, dl
mov cl, byte [eax + edi + 1]
mov eax, dword [ebp - 0x28]
sub cl, dl
add cl, byte [ebp - 0x5c]
mov byte [eax + edi + 1], cl
movsx eax, byte [0x580485]
xor edx, edx
add eax, dword [ebp - 0x54]
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x437037
movsx eax, byte [0x5813b0]
imul eax, dword [ebp - 0x40]
lea ecx, [eax + eax*2]
movsx eax, byte [0x580488]
add ecx, ecx
sub ecx, dword [ebp - 0x3c]
add ecx, dword [ebp - 0x2c]
add eax, ecx
je 0x436b8b
xor eax, eax
je 0x43696f
add byte [edi], cl
mov esi, 0x58048605
add byte [ebx], dh
ror byte [ebx + 0x7d8bd075], cl
enter 0xf66, 0x6e
enter 0xffffffffffffbe0f, 5
mov byte [eax + ebx*2], al
add byte [ebp + 0xb50c], cl
add byte [eax], al
movsx eax, byte [0x580486]
xor edx, edx
mov esi, dword [ebp - 0x30]
mov edi, dword [ebp - 0x38]
movd xmm1, eax
movsx eax, byte [0x580488]
lea ecx, [esi*4]
cvtdq2pd xmm1, xmm1
add ecx, edi
mov dword [ebp - 0x34], ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x551340]
movsd qword [ebp - 0x24], xmm1
movsx eax, byte [0x580485]
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x4369fd
movsx eax, byte [0x5813b0]
imul eax, dword [ebp - 0x40]
lea ecx, [eax + eax*2]
movsx eax, byte [0x580488]
sub ecx, dword [ebp - 0x3c]
add ecx, dword [ebp - 0x2c]
add eax, ecx
je 0x4369fd
mov dword [ebp - 0x64], 8
jmp 0x436a68
movsx eax, byte [0x580485]
lea ecx, [esi + esi*4]
add eax, edi
xor edx, edx
lea eax, [eax + ecx*2]
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x436a68
movsx eax, byte [0x580485]
xor edx, edx
add eax, dword [ebp - 0x34]
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
movsd xmm0, qword [ebp - 0x24]
sub ecx, eax
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
shr ecx, 0x1f
addsd xmm1, qword [ecx*8 + 0x551850]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [ebp - 0x64], eax
xor eax, eax
je 0x436a6d
add byte [edi], cl
mov esi, 0x58048605
add byte [ebx], dh
shl byte [esi + 0xf], cl
outsb dx, byte [esi]
enter 0xffffffffffffbe0f, 5
mov byte [eax + ebx*2], al
add bl, dh
invalid
movsx eax, byte [0x580486]
xor edx, edx
movd xmm1, eax
movsx eax, byte [0x580488]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x551340]
movsd qword [ebp - 0x24], xmm1
movsx eax, byte [0x580485]
add eax, dword [ebp - 0x34]
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x436af0
movsx eax, byte [0x5813b0]
imul eax, dword [ebp - 0x40]
lea ecx, [eax + eax*2]
movsx eax, byte [0x580488]
sub ecx, dword [ebp - 0x3c]
add ecx, dword [ebp - 0x2c]
add eax, ecx
je 0x436af0
mov esi, dword [ebp - 0x30]
mov dword [ebp - 0x60], 8
jmp 0x436b69
movsx eax, byte [0x580485]
xor edx, edx
mov esi, dword [ebp - 0x30]
mov edi, dword [ebp - 0x38]
add eax, edi
lea ecx, [esi + esi*4]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x436b69
movsx eax, byte [0x580485]
lea ecx, [esi*4]
add eax, edi
xor edx, edx
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
movsd xmm0, qword [ebp - 0x24]
sub ecx, eax
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
shr ecx, 0x1f
addsd xmm1, qword [ecx*8 + 0x551850]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x28]
mov edi, dword [ebp - 0x44]
mov dl, byte [eax + edi + 1]
mov eax, dword [ebp - 0x28]
and dl, byte [ebp - 0x60]
add dl, dl
mov cl, byte [eax + edi + 1]
mov eax, dword [ebp - 0x28]
sub cl, dl
add cl, byte [ebp - 0x64]
mov byte [eax + edi + 1], cl
movsx ecx, byte [0x5813b0]
imul ecx, dword [ebp - 0x40]
movsx eax, byte [0x580488]
sub ecx, dword [ebp - 0x3c]
add ecx, dword [ebp - 0x2c]
add eax, ecx
je 0x436dcc
xor eax, eax
je 0x436bb0
add byte [edi], cl
mov esi, 0x58048605
add byte [ebx], dh
ror byte [ebx + 0x7d8bd075], cl
enter 0xf66, 0x6e
enter 0xffffffffffffbe0f, 5
mov byte [eax + ebx*2], al
add byte [ebp + 0xb50c], cl
add byte [eax], al
movsx eax, byte [0x580486]
xor edx, edx
mov esi, dword [ebp - 0x30]
mov edi, dword [ebp - 0x38]
movd xmm1, eax
movsx eax, byte [0x580488]
lea ecx, [esi*4]
cvtdq2pd xmm1, xmm1
add ecx, edi
mov dword [ebp - 0x34], ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x551348]
movsd qword [ebp - 0x24], xmm1
movsx eax, byte [0x580485]
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x436c3e
movsx eax, byte [0x5813b0]
imul eax, dword [ebp - 0x40]
lea ecx, [eax + eax*2]
movsx eax, byte [0x580488]
sub ecx, dword [ebp - 0x3c]
add ecx, dword [ebp - 0x2c]
add eax, ecx
je 0x436c3e
mov dword [ebp - 0x6c], 8
jmp 0x436ca9
movsx eax, byte [0x580485]
lea ecx, [esi + esi*4]
add eax, edi
xor edx, edx
lea eax, [eax + ecx*2]
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x436ca9
movsx eax, byte [0x580485]
xor edx, edx
add eax, dword [ebp - 0x34]
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
movsd xmm0, qword [ebp - 0x24]
sub ecx, eax
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
shr ecx, 0x1f
addsd xmm1, qword [ecx*8 + 0x551850]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [ebp - 0x6c], eax
xor eax, eax
je 0x436cae
add byte [edi], cl
mov esi, 0x58048605
add byte [ebx], dh
shl byte [esi + 0xf], cl
outsb dx, byte [esi]
enter 0xffffffffffffbe0f, 5
mov byte [eax + ebx*2], al
add bl, dh
invalid
movsx eax, byte [0x580486]
xor edx, edx
movd xmm1, eax
movsx eax, byte [0x580488]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x551348]
movsd qword [ebp - 0x24], xmm1
movsx eax, byte [0x580485]
add eax, dword [ebp - 0x34]
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x436d31
movsx eax, byte [0x5813b0]
imul eax, dword [ebp - 0x40]
lea ecx, [eax + eax*2]
movsx eax, byte [0x580488]
sub ecx, dword [ebp - 0x3c]
add ecx, dword [ebp - 0x2c]
add eax, ecx
je 0x436d31
mov esi, dword [ebp - 0x30]
mov dword [ebp - 0x68], 8
jmp 0x436daa
movsx eax, byte [0x580485]
xor edx, edx
mov esi, dword [ebp - 0x30]
mov edi, dword [ebp - 0x38]
add eax, edi
lea ecx, [esi + esi*4]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x436daa
movsx eax, byte [0x580485]
lea ecx, [esi*4]
add eax, edi
xor edx, edx
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
movsd xmm0, qword [ebp - 0x24]
sub ecx, eax
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
shr ecx, 0x1f
addsd xmm1, qword [ecx*8 + 0x551850]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x28]
mov edi, dword [ebp - 0x44]
mov dl, byte [eax + edi + 1]
mov eax, dword [ebp - 0x28]
and dl, byte [ebp - 0x68]
add dl, dl
mov cl, byte [eax + edi + 1]
mov eax, dword [ebp - 0x28]
sub cl, dl
add cl, byte [ebp - 0x6c]
mov byte [eax + edi + 1], cl
movsx eax, byte [0x580485]
xor edx, edx
add eax, dword [ebp - 0x38]
movsx ecx, byte [0x580484]
lea eax, [eax + esi*2]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x437034
mov eax, dword [ebp - 0x28]
add eax, 0x3c
mov dword [ebp - 0x34], eax
xor eax, eax
je 0x436e03
add byte [edi], cl
mov esi, 0x58048605
add byte [ebx], dh
ror byte [ebx + 0x7d8bd075], cl
enter 0xf66, 0x6e
enter 0xffffffffffffbe0f, 5
mov byte [eax + ebx*2], al
add byte [ebp + 0xb50c], cl
add byte [eax], al
movsx eax, byte [0x580486]
xor edx, edx
mov esi, dword [ebp - 0x30]
mov edi, dword [ebp - 0x38]
movd xmm1, eax
movsx eax, byte [0x580488]
lea ecx, [esi*4]
cvtdq2pd xmm1, xmm1
add ecx, edi
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
movd xmm0, dword [ebp - 0x34]
cvtdq2pd xmm0, xmm0
mov dword [ebp - 0x34], ecx
mulsd xmm1, xmm0
movsd qword [ebp - 0x24], xmm1
movsx eax, byte [0x580485]
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x436e96
movsx eax, byte [0x5813b0]
imul eax, dword [ebp - 0x40]
lea ecx, [eax + eax*2]
movsx eax, byte [0x580488]
sub ecx, dword [ebp - 0x3c]
add ecx, dword [ebp - 0x2c]
add eax, ecx
je 0x436e96
mov dword [ebp - 0x74], 8
jmp 0x436f01
movsx eax, byte [0x580485]
lea ecx, [esi + esi*4]
add eax, edi
xor edx, edx
lea eax, [eax + ecx*2]
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x436f01
movsx eax, byte [0x580485]
xor edx, edx
add eax, dword [ebp - 0x34]
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
movsd xmm0, qword [ebp - 0x24]
sub ecx, eax
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
shr ecx, 0x1f
addsd xmm1, qword [ecx*8 + 0x551850]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0x28]
add eax, 0x3c
mov dword [ebp - 0x20], eax
xor eax, eax
je 0x436f0f
add byte [edi], cl
mov esi, 0x58048605
add byte [ebx], dh
shl byte [esi + 0xf], cl
outsb dx, byte [esi]
enter 0xffffffffffffbe0f, 5
mov byte [eax + ebx*2], al
add bl, dh
invalid
movsx eax, byte [0x580486]
xor edx, edx
movd xmm1, eax
movsx eax, byte [0x580488]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
movd xmm0, dword [ebp - 0x20]
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm0
movsd qword [ebp - 0x24], xmm1
movsx eax, byte [0x580485]
add eax, dword [ebp - 0x34]
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x436f97
movsx eax, byte [0x5813b0]
imul eax, dword [ebp - 0x40]
lea ecx, [eax + eax*2]
movsx eax, byte [0x580488]
sub ecx, dword [ebp - 0x3c]
add ecx, dword [ebp - 0x2c]
add eax, ecx
je 0x436f97
mov esi, dword [ebp - 0x30]
mov dword [ebp - 0x70], 8
jmp 0x437010
movsx eax, byte [0x580485]
xor edx, edx
mov esi, dword [ebp - 0x30]
mov edi, dword [ebp - 0x38]
add eax, edi
lea ecx, [esi + esi*4]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x437010
movsx eax, byte [0x580485]
lea ecx, [esi*4]
add eax, edi
xor edx, edx
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
movsd xmm0, qword [ebp - 0x24]
sub ecx, eax
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
shr ecx, 0x1f
addsd xmm1, qword [ecx*8 + 0x551850]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x28]
mov edi, dword [ebp - 0x44]
mov dl, byte [eax + edi + 1]
mov eax, dword [ebp - 0x28]
and dl, byte [ebp - 0x70]
add dl, dl
mov cl, byte [eax + edi + 1]
mov eax, dword [ebp - 0x28]
sub cl, dl
add cl, byte [ebp - 0x74]
mov byte [eax + edi + 1], cl
jmp 0x437037
mov edi, dword [ebp - 0x44]
movsx ecx, byte [0x5813b0]
mov edx, dword [ebp - 0x40]
movsx eax, byte [0x580488]
imul ecx, edx
shl ecx, 3
sub ecx, dword [ebp - 0x3c]
add ecx, dword [ebp - 0x2c]
add eax, ecx
je 0x437280
xor eax, eax
je 0x437061
add byte [edi], cl
mov esi, 0x58048605
add byte [ebx], dh
ror byte [ebx + 0x7d8bd075], cl
enter 0xf66, 0x6e
enter 0xffffffffffffbe0f, 5
mov byte [eax + ebx*2], al
add byte [ebp + 0xb50c], cl
add byte [eax], al
movsx eax, byte [0x580486]
xor edx, edx
mov esi, dword [ebp - 0x30]
mov edi, dword [ebp - 0x38]
movd xmm1, eax
movsx eax, byte [0x580488]
lea ecx, [esi*4]
cvtdq2pd xmm1, xmm1
add ecx, edi
mov dword [ebp - 0x34], ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x551350]
movsd qword [ebp - 0x24], xmm1
movsx eax, byte [0x580485]
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x4370ef
movsx eax, byte [0x5813b0]
imul eax, dword [ebp - 0x40]
lea ecx, [eax + eax*2]
movsx eax, byte [0x580488]
sub ecx, dword [ebp - 0x3c]
add ecx, dword [ebp - 0x2c]
add eax, ecx
je 0x4370ef
mov dword [ebp - 0x50], 8
jmp 0x43715a
movsx eax, byte [0x580485]
lea ecx, [esi + esi*4]
add eax, edi
xor edx, edx
lea eax, [eax + ecx*2]
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x43715a
movsx eax, byte [0x580485]
xor edx, edx
add eax, dword [ebp - 0x34]
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
movsd xmm0, qword [ebp - 0x24]
sub ecx, eax
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
shr ecx, 0x1f
addsd xmm1, qword [ecx*8 + 0x551850]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [ebp - 0x50], eax
xor eax, eax
je 0x43715f
add byte [edi], cl
mov esi, 0x58048605
add byte [ebx], dh
shl byte [esi + 0xf], cl
outsb dx, byte [esi]
enter 0xffffffffffffbe0f, 5
mov byte [eax + ebx*2], al
add bl, dh
invalid
movsx eax, byte [0x580486]
xor edx, edx
movd xmm1, eax
movsx eax, byte [0x580488]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x551350]
movsd qword [ebp - 0x24], xmm1
movsx eax, byte [0x580485]
add eax, dword [ebp - 0x34]
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x4371e2
movsx eax, byte [0x5813b0]
imul eax, dword [ebp - 0x40]
lea ecx, [eax + eax*2]
movsx eax, byte [0x580488]
sub ecx, dword [ebp - 0x3c]
add ecx, dword [ebp - 0x2c]
add eax, ecx
je 0x4371e2
mov esi, dword [ebp - 0x30]
mov dword [ebp - 0x48], 8
jmp 0x43725b
movsx eax, byte [0x580485]
xor edx, edx
mov esi, dword [ebp - 0x30]
mov edi, dword [ebp - 0x38]
add eax, edi
lea ecx, [esi + esi*4]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x43725b
movsx eax, byte [0x580485]
lea ecx, [esi*4]
add eax, edi
xor edx, edx
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
movsd xmm0, qword [ebp - 0x24]
sub ecx, eax
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
shr ecx, 0x1f
addsd xmm1, qword [ecx*8 + 0x551850]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x28]
mov edi, dword [ebp - 0x44]
mov dl, byte [eax + edi + 1]
mov eax, dword [ebp - 0x28]
and dl, byte [ebp - 0x48]
add dl, dl
mov cl, byte [eax + edi + 1]
mov eax, dword [ebp - 0x28]
sub cl, dl
add cl, byte [ebp - 0x50]
mov edx, dword [ebp - 0x40]
mov byte [eax + edi + 1], cl
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0x10
mov eax, dword [ebp - 0x2c]
jb 0x4366e0
lea eax, [edi + 1]
mov byte [edi], 1
push eax
call dword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
add esp, 4
mov esi, eax
mov dword [ebp - 0x50], esi
call fcn.00413dc0
mov dl, al
mov byte [ebp - 0x19], dl
call fcn.00413db0
movsx ecx, al
mov byte [ebp - 0x1a], al
movsx eax, dl
imul ecx, eax
mov dword [ebp - 0x20], ecx
call fcn.00413df0
movsx edx, al
mov byte [ebp - 0x1b], al
movsx eax, byte [0x580485]
add eax, ecx
mov dword [ebp - 0x54], edx
movsx ecx, byte [0x580484]
add eax, edx
xor edx, edx
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x437ed2
test esi, esi
je 0x437309
mov ecx, 1
xor edx, edx
jmp 0x437317
xorps xmm0, xmm0
movlpd qword [ebp - 0x4c], xmm0
mov edx, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x4c]
call fcn.005340d0
movsd qword [ebp - 0x4c], xmm0
xor eax, eax
je 0x437326
add byte [edi], cl
mov esi, 0x58048605
add byte [ebx], dh
ror byte [ebx + 0x7d8be075], cl
lodsb al, byte [esi]
movsx eax, byte [0x580486]
xor edx, edx
mov esi, dword [ebp - 0x20]
mov edi, dword [ebp - 0x54]
movd xmm2, eax
movsx eax, byte [0x580488]
cvtdq2pd xmm2, xmm2
lea ecx, [edi + esi*4]
mov dword [ebp - 0x20], ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
addsd xmm1, xmm1
subsd xmm2, xmm1
mulsd xmm2, qword [ebp - 0x4c]
movsd qword [ebp - 0x4c], xmm2
movsx eax, byte [0x580485]
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x4373be
call fcn.00413dd0
movsx ecx, al
movsx eax, byte [0x5813b0]
imul ecx, eax
lea ecx, [ecx + ecx*2]
call fcn.00413e00
movsx eax, al
sub ecx, eax
call fcn.00413de0
movsx eax, al
add ecx, eax
movsx eax, byte [0x580488]
add eax, ecx
je 0x4373be
mov esi, 8
jmp 0x43742d
movsx eax, byte [0x580485]
lea ecx, [esi + esi*4]
add eax, edi
xor edx, edx
lea eax, [eax + ecx*2]
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x43742a
movsx eax, byte [0x580485]
lea ecx, [edi + esi*4]
add eax, ecx
xor edx, edx
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
movsd xmm0, qword [ebp - 0x4c]
sub ecx, eax
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
shr ecx, 0x1f
addsd xmm1, qword [ecx*8 + 0x551850]
mulsd xmm0, xmm1
cvttsd2si esi, xmm0
jmp 0x43742d
mov esi, dword [ebp - 0x20]
movsx eax, byte [ebp - 0x19]
movsx ecx, byte [ebp - 0x1a]
imul ecx, eax
movsx eax, byte [0x580485]
lea edx, [eax + ecx*2]
movsx eax, byte [ebp - 0x1b]
movsx ecx, byte [0x580484]
add eax, edx
xor edx, edx
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
imul ecx, esi
test ecx, ecx
je 0x437629
movsx eax, byte [ebp - 0x1a]
movsx ecx, byte [ebp - 0x19]
imul ecx, eax
movsx eax, byte [0x580485]
lea edx, [ecx + ecx*2]
movsx ecx, byte [0x580484]
add edx, eax
movsx eax, byte [ebp - 0x1b]
add eax, edx
xor edx, edx
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
shr ecx, 0x1f
addsd xmm0, qword [ecx*8 + 0x551850]
movsd qword [ebp - 0x18], xmm0
xor eax, eax
je 0x4374ba
add byte [edi], cl
mov esi, 0x58048605
add byte [ebx], dh
shl byte [esi + 0xf], cl
outsb dx, byte [esi]
enter 0xffffffffffffbe0f, 5
mov byte [eax + ebx*2], al
add bl, dh
invalid
movsx eax, byte [0x580486]
xor edx, edx
movd xmm1, eax
movsx eax, byte [0x580488]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [ebp - 0x18]
movsd qword [ebp - 0x18], xmm1
movsx eax, byte [0x580485]
add eax, dword [ebp - 0x20]
movsx ecx, byte [0x580484]
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x43754a
call fcn.00413dd0
movsx ecx, al
movsx eax, byte [0x5813b0]
imul ecx, eax
lea ecx, [ecx + ecx*2]
call fcn.00413e00
movsx eax, al
sub ecx, eax
call fcn.00413de0
movsx eax, al
add ecx, eax
movsx eax, byte [0x580488]
add eax, ecx
je 0x43754a
mov eax, 8
jmp 0x4375ef
call fcn.00413dc0
movsx ecx, al
call fcn.00413db0
movsx eax, al
imul ecx, eax
lea ecx, [ecx + ecx*4]
call fcn.00413df0
movsx eax, al
lea edx, [eax + ecx*2]
movsx eax, byte [0x580485]
movsx ecx, byte [0x580484]
add eax, edx
xor edx, edx
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
sub ecx, eax
je 0x4375ec
call fcn.00413dc0
movsx ecx, al
call fcn.00413db0
movsx eax, al
imul ecx, eax
call fcn.00413df0
movsx eax, al
lea edx, [eax + ecx*4]
movsx eax, byte [0x580485]
movsx ecx, byte [0x580484]
add eax, edx
xor edx, edx
div ecx
mov ecx, eax
movsx eax, byte [0x580487]
movsd xmm0, qword [ebp - 0x18]
sub ecx, eax
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
shr ecx, 0x1f
addsd xmm1, qword [ecx*8 + 0x551850]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
jmp 0x4375ef
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp ecx, eax
jge 0x437ed2
mov edi, dword [ebp - 0x7c]
xorps xmm0, xmm0
mov edx, dword [ebp - 0x50]
movups xmmword [edi], xmm0
mov dword [edi + 0x10], ecx
mov dword [edi + 0x14], ecx
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x437610
sub ecx, esi
push ecx
push edx
mov ecx, edi
call fcn.0046a110
mov eax, edi
jmp 0x437ed2
movsx ecx, byte [ebp - 0x1a]
xor edx, edx
movsx eax, byte [ebp - 0x19]
imul eax, ecx
movsx ecx, byte [0x580485]
add eax, ecx
movsx ecx, byte [ebp - 0x1b]
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
movsx ecx, byte [0x580487]
sub eax, ecx
je 0x437ed2
call fcn.00413dd0
movsx ecx, al
mov dword [ebp - 0x44], ecx
call fcn.00413e00
movsx edx, al
mov dword [ebp - 0x38], edx
call fcn.00413de0
movsx esi, al
movsx eax, byte [0x5813b0]
imul eax, ecx
mov dword [ebp - 0x2c], esi
lea ecx, [eax + eax*4]
movsx eax, byte [0x580488]
add ecx, ecx
sub ecx, edx
add ecx, esi
add eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x551850]
movsd qword [ebp - 0x24], xmm0
xor eax, eax
je 0x4376b8
add byte [edi], cl
mov esi, 0x58048605
add byte [esi + 0xf], ah
outsb dx, byte [esi]
enter 0xffffffffffffbe0f, 5
mov byte [eax + ebx*2], al
add bl, dh
invalid
movsx eax, byte [0x580486]
movd xmm1, eax
movsx eax, byte [0x580488]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [ebp - 0x24]
movsd qword [ebp - 0x24], xmm1
call fcn.00413dc0
movsx ecx, al
call fcn.00413db0
movsx eax, al
imul ecx, eax
call fcn.00413df0
movsx eax, al
xor edx, edx
lea eax, [eax + ecx*4]
movsx ecx, byte [0x580485]
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
movsx ecx, byte [0x580487]
sub eax, ecx
je 0x43774e
movsx eax, byte [0x5813b0]
imul eax, dword [ebp - 0x44]
lea ecx, [eax + eax*2]
movsx eax, byte [0x580488]
sub ecx, dword [ebp - 0x38]
add ecx, dword [ebp - 0x2c]
add eax, ecx
je 0x43774e
mov esi, 8
jmp 0x4377ef
call fcn.00413dc0
movsx ecx, al
call fcn.00413db0
movsx eax, al
imul ecx, eax
lea ecx, [ecx + ecx*4]
call fcn.00413df0
movsx eax, al
xor edx, edx
lea eax, [eax + ecx*2]
movsx ecx, byte [0x580485]
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
movsx ecx, byte [0x580487]
sub eax, ecx
je 0x4377ec
call fcn.00413dc0
movsx ecx, al
call fcn.00413db0
movsx eax, al
imul ecx, eax
call fcn.00413df0
movsx eax, al
xor edx, edx
lea eax, [eax + ecx*4]
movsx ecx, byte [0x580485]
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
movsx ecx, byte [0x580487]
movsd xmm0, qword [ebp - 0x24]
sub eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x551850]
mulsd xmm0, xmm1
cvttsd2si esi, xmm0
jmp 0x4377ef
mov esi, dword [ebp - 0x20]
call fcn.00413dc0
movsx ecx, al
call fcn.00413db0
movsx eax, al
imul ecx, eax
lea ecx, [ecx + ecx*2]
call fcn.00413df0
movsx eax, al
xor edx, edx
lea eax, [eax + ecx*2]
movsx ecx, byte [0x580485]
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
mov edx, eax
call fcn.00413dc0
mov byte [ebp - 0x1b], al
call fcn.00413db0
mov byte [ebp - 0x1a], al
call fcn.00413df0
movsx ecx, byte [0x580487]
sub edx, ecx
mov byte [ebp - 0x19], al
imul edx, esi
test edx, edx
je 0x437c4c
xor eax, eax
je 0x437857
add byte [edi], cl
mov esi, 0x5804860d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x58048805
add byte [esi + 0xf], ah
outsb dx, byte [esi]
leave
movsx ecx, byte [0x580486]
xor edx, edx
movsx eax, byte [0x580488]
movd xmm1, ecx
movsx ecx, byte [ebp - 0x1b]
movd xmm0, eax
movsx eax, byte [ebp - 0x1a]
cvtdq2pd xmm0, xmm0
cvtdq2pd xmm1, xmm1
addsd xmm0, xmm0
imul ecx, eax
subsd xmm1, xmm0
mulsd xmm1, qword [0x5511a8]
movsd qword [ebp - 0x24], xmm1
movsx eax, byte [0x580485]
lea eax, [eax + ecx*4]
movsx ecx, byte [ebp - 0x19]
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
movsx ecx, byte [0x580487]
sub eax, ecx
je 0x4378da
movsx eax, byte [0x5813b0]
imul eax, dword [ebp - 0x44]
lea ecx, [eax + eax*2]
movsx eax, byte [0x580488]
sub ecx, dword [ebp - 0x38]
add ecx, dword [ebp - 0x2c]
add eax, ecx
jne 0x43792e
call fcn.00413dc0
movsx ecx, al
call fcn.00413db0
movsx eax, al
imul ecx, eax
lea ecx, [ecx + ecx*4]
call fcn.00413df0
movsx eax, al
xor edx, edx
lea eax, [eax + ecx*2]
movsx ecx, byte [0x580485]
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
movsx ecx, byte [0x580487]
sub eax, ecx
je 0x43792e
mov al, byte [0x580485]
mov al, byte [0x580484]
mov al, byte [0x580487]
movsd xmm0, qword [ebp - 0x24]
call fcn.00413dc0
movsx ecx, al
call fcn.00413db0
movsx eax, al
imul ecx, eax
lea edx, [ecx + ecx*8]
call fcn.00413df0
movsx ecx, byte [0x580485]
movsx eax, al
add eax, edx
xor edx, edx
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
movsx ecx, byte [0x580487]
sub eax, ecx
je 0x437ed2
call fcn.00413dc0
movsx ecx, al
call fcn.00413db0
movsx eax, al
imul ecx, eax
call fcn.00413df0
movsx eax, al
xor edx, edx
lea eax, [eax + ecx*4]
movsx ecx, byte [0x580485]
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
movsx ecx, byte [0x580487]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x551850]
movsd qword [ebp - 0x24], xmm0
xor eax, eax
je 0x4379ca
add byte [edi], cl
mov esi, 0x58048605
add byte [esi + 0xf], ah
outsb dx, byte [esi]
enter 0xffffffffffffbe0f, 5
mov byte [eax + ebx*2], al
add bl, dh
invalid
movsx eax, byte [0x580486]
movd xmm1, eax
movsx eax, byte [0x580488]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [ebp - 0x24]
movsd qword [ebp - 0x24], xmm1
call fcn.00413dc0
movsx ecx, al
call fcn.00413db0
movsx eax, al
imul ecx, eax
call fcn.00413df0
movsx eax, al
xor edx, edx
lea eax, [eax + ecx*4]
movsx ecx, byte [0x580485]
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
movsx ecx, byte [0x580487]
sub eax, ecx
je 0x437a75
call fcn.00413dd0
movsx ecx, al
movsx eax, byte [0x5813b0]
imul ecx, eax
lea ecx, [ecx + ecx*2]
call fcn.00413e00
movsx eax, al
sub ecx, eax
call fcn.00413de0
movsx eax, al
add ecx, eax
movsx eax, byte [0x580488]
add eax, ecx
je 0x437a75
mov esi, 8
jmp 0x437b16
call fcn.00413dc0
movsx ecx, al
call fcn.00413db0
movsx eax, al
imul ecx, eax
lea ecx, [ecx + ecx*4]
call fcn.00413df0
movsx eax, al
xor edx, edx
lea eax, [eax + ecx*2]
movsx ecx, byte [0x580485]
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
movsx ecx, byte [0x580487]
sub eax, ecx
je 0x437b13
call fcn.00413dc0
movsx ecx, al
call fcn.00413db0
movsx eax, al
imul ecx, eax
call fcn.00413df0
movsx eax, al
xor edx, edx
lea eax, [eax + ecx*4]
movsx ecx, byte [0x580485]
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
movsx ecx, byte [0x580487]
movsd xmm0, qword [ebp - 0x24]
sub eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x551850]
mulsd xmm0, xmm1
cvttsd2si esi, xmm0
jmp 0x437b16
mov esi, dword [ebp - 0x20]
call fcn.00413dc0
movsx ecx, al
call fcn.00413db0
movsx eax, al
imul ecx, eax
lea ecx, [ecx + ecx*4]
call fcn.00413df0
movsx eax, al
xor edx, edx
lea ecx, [eax + ecx*2]
movsx eax, byte [0x580485]
add eax, ecx
mov dword [ebp - 0x20], ecx
movsx ecx, byte [0x580484]
div ecx
movsx ecx, byte [0x580487]
sub eax, ecx
imul eax, esi
test eax, eax
je 0x437ed2
xor eax, eax
je 0x437b67
add byte [edi], cl
mov esi, 0x58048605
add byte [esi + 0xf], ah
outsb dx, byte [esi]
enter 0xffffffffffffbe0f, 5
mov byte [eax + ebx*2], al
add bl, dh
invalid
movsx eax, byte [0x580486]
movd xmm1, eax
movsx eax, byte [0x580488]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x5511b0]
movsd qword [ebp - 0x18], xmm1
call fcn.00413dc0
movsx ecx, al
call fcn.00413db0
movsx eax, al
imul ecx, eax
call fcn.00413df0
movsx eax, al
xor edx, edx
lea eax, [eax + ecx*4]
movsx ecx, byte [0x580485]
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
movsx ecx, byte [0x580487]
sub eax, ecx
je 0x437c0f
call fcn.00413dd0
movsx ecx, al
movsx eax, byte [0x5813b0]
imul ecx, eax
lea ecx, [ecx + ecx*2]
call fcn.00413e00
movsx eax, al
sub ecx, eax
call fcn.00413de0
movsx eax, al
add ecx, eax
movsx eax, byte [0x580488]
add eax, ecx
jne 0x437ed2
movsx eax, byte [0x580485]
xor edx, edx
add eax, dword [ebp - 0x20]
movsx ecx, byte [0x580484]
div ecx
movsx ecx, byte [0x580487]
sub eax, ecx
je 0x437ed2
mov al, byte [0x580485]
mov al, byte [0x580484]
mov al, byte [0x580487]
movsd xmm0, qword [ebp - 0x18]
jmp 0x437ed2
movsx eax, byte [ebp - 0x1a]
xor edx, edx
movsx ecx, byte [ebp - 0x1b]
imul ecx, eax
lea eax, [ecx*8]
sub eax, ecx
movsx ecx, byte [0x580485]
add eax, ecx
movsx ecx, byte [ebp - 0x19]
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
movsx ecx, byte [0x580487]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x551850]
movsd qword [ebp - 0x24], xmm0
xor eax, eax
je 0x437ca1
add byte [edi], cl
mov esi, 0x58048605
add byte [esi + 0xf], ah
outsb dx, byte [esi]
enter 0xffffffffffffbe0f, 5
mov byte [eax + ebx*2], al
add bl, dh
invalid
movsx eax, byte [0x580486]
movd xmm1, eax
movsx eax, byte [0x580488]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [ebp - 0x24]
movsd qword [ebp - 0x24], xmm1
call fcn.00413dc0
movsx ecx, al
call fcn.00413db0
movsx eax, al
imul ecx, eax
call fcn.00413df0
movsx eax, al
xor edx, edx
lea eax, [eax + ecx*4]
movsx ecx, byte [0x580485]
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
movsx ecx, byte [0x580487]
sub eax, ecx
je 0x437d37
movsx eax, byte [0x5813b0]
imul eax, dword [ebp - 0x44]
lea ecx, [eax + eax*2]
movsx eax, byte [0x580488]
sub ecx, dword [ebp - 0x38]
add ecx, dword [ebp - 0x2c]
add eax, ecx
je 0x437d37
mov eax, 8
jmp 0x437dd8
call fcn.00413dc0
movsx ecx, al
call fcn.00413db0
movsx eax, al
imul ecx, eax
lea ecx, [ecx + ecx*4]
call fcn.00413df0
movsx eax, al
xor edx, edx
lea eax, [eax + ecx*2]
movsx ecx, byte [0x580485]
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
movsx ecx, byte [0x580487]
sub eax, ecx
je 0x437dd5
call fcn.00413dc0
movsx ecx, al
call fcn.00413db0
movsx eax, al
imul ecx, eax
call fcn.00413df0
movsx eax, al
xor edx, edx
lea eax, [eax + ecx*4]
movsx ecx, byte [0x580485]
add eax, ecx
movsx ecx, byte [0x580484]
div ecx
movsx ecx, byte [0x580487]
movsd xmm0, qword [ebp - 0x24]
sub eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
shr eax, 0x1f
addsd xmm1, qword [eax*8 + 0x551850]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
jmp 0x437dd8
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp ecx, eax
jge 0x437ed2
mov dword [ebp - 4], 1
xorps xmm0, xmm0
push ecx
mov dword [ebp - 0x84], ecx
xor eax, eax
movups xmmword [ebp - 0x94], xmm0
push 0x104
lea ecx, [ebp - 0x94]
mov dword [ebp - 0x80], 7
mov word [ebp - 0x94], ax
mov dword [ebp - 0x78], 4
call fcn.00468010
nop dword [eax]
nop word [eax + eax]
cmp dword [ebp - 0x80], 7
lea eax, [ebp - 0x94]
mov edi, dword [ebp - 0x84]
cmova eax, dword [ebp - 0x94]
push eax
push edi
call fcn.004dba68
mov ecx, dword [ebp - 0x84]
mov esi, eax
mov dword [ebp - 0x20], edx
cmp esi, ecx
ja 0x437e7f
cmp dword [ebp - 0x80], 7
lea ecx, [ebp - 0x94]
mov edx, eax
jbe 0x437e71
mov ecx, dword [ebp - 0x94]
mov dword [ebp - 0x84], esi
xor esi, esi
mov word [ecx + edx*2], si
jmp 0x437e92
push ecx
mov eax, esi
sub eax, ecx
lea ecx, [ebp - 0x94]
push eax
call fcn.00468010
mov eax, esi
cmp eax, edi
jae 0x437e30
mov eax, dword [ebp - 0x20]
mov dword [ebp - 4], 0
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], 0x580470
mov dword [ebp - 0x78], 2
test eax, eax
jne 0x437eee
mov esi, dword [ebp - 0x7c]
push ecx
push esi
lea ecx, [ebp - 0x94]
call fcn.00469400
lea ecx, [ebp - 0x94]
call fcn.00413110
mov eax, esi
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.005335a0
mov esp, ebp
pop ebp
ret
lea edx, [ebp - 0x18]
call fcn.00413990
int3