Function at 0x1006e340
Capabilities:
Contain obfuscated stackstrings
Get hostname

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100bec4e
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x30
push esi
push edi
mov eax, dword [0x100fbe80]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, ecx
mov dword [ebp - 0x14], ecx
mov edi, dword [ebx + 8]
xorps xmm0, xmm0
mov dword [ebp - 0x24], edi
xor ecx, ecx
mov dword [ebp - 0x18], 0
movups xmmword [edi], xmm0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 7
mov word [edi], cx
mov dword [ebp - 4], ecx
mov ecx, dword [ebx + 0xc]
mov dword [ebp - 0x18], 1
cmp ecx, 3
ja case.default.0x1006e216
jmp dword [ecx*4 + 0x1006e330]
xor esi, esi
jmp 0x1006e239
mov esi, 0xfde8
jmp 0x1006e239
mov esi, 0xfde9
jmp 0x1006e239
mov esi, 0x4e3
jmp 0x1006e239
mov esi, dword [ebp - 0x24]
cmp dword [eax + 0x14], 0x10
jb 0x1006e244
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
push 0
push 0
push 0xffffffffffffffff
push eax
push 0
push esi
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x1006e313
xor ecx, ecx
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.100925a0
add esp, 4
mov dword [ebp - 0x20], eax
push dword [ebp - 0x1c]
push eax
push 0xffffffffffffffff
push dword [ebp - 0x14]
push 0
push esi
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov esi, dword [ebp - 0x20]
xorps xmm0, xmm0
mov ecx, esi
mov dword [ebp - 0x2c], 0
movups xmmword [ebp - 0x3c], xmm0
mov dword [ebp - 0x28], 0
lea edx, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x1006e2b0
sub ecx, edx
sar ecx, 1
push ecx
push esi
lea ecx, [ebp - 0x3c]
call fcn.1000db40
lea eax, [ebp - 0x3c]
mov ecx, edi
push eax
call fcn.1000d830
mov ecx, dword [ebp - 0x28]
cmp ecx, 8
jb 0x1006e30a
mov edx, dword [ebp - 0x3c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006e300
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006e32b
push ecx
push edx
call fcn.10092592
add esp, 8
push esi
call fcn.10092762
add esp, 4
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 8
call fcn.10097635
sbb eax, 0x211006e2
loop 268886845
adc byte [eax], ch
loop 0x1006e341
adc byte [edi], ch
loop 0x1006e345
adc byte [ebp - 0x75], dl
in al, dx
mov ebp, esp
push 0xffffffffffffffff
push 0x100beeba
mov eax, dword fs:[0]
push eax
sub esp, 0x1f0
mov eax, dword [0x100fbe80]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
xorps xmm0, xmm0
mov dword [ebp - 0xfc], 0
xor ecx, ecx
mov dword [ebp - 0xf8], 7
movups xmmword [ebp - 0x10c], xmm0
mov word [ebp - 0x10c], cx
mov dword [ebp - 4], ecx
push 0xa
mov word [ebp - 0x30], cx
lea ecx, [ebp - 0x48]
push 0xc
push ecx
push eax
movups xmmword [ebp - 0x48], xmm0
movq qword [ebp - 0x38], xmm0
call fcn.1009fa6f
lea ecx, [ebp - 0x48]
add esp, 0x10
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x1006e3c1
sub ecx, edx
lea eax, [ebp - 0x48]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x10c]
call fcn.1000c560
mov dword [ebp - 4], 1
lea ecx, [ebp - 0xc4]
push 0xd
xorps xmm0, xmm0
mov dword [ebp - 0xb4], 0
push str.SessionStart
movups xmmword [ebp - 0xc4], xmm0
mov dword [ebp - 0xb0], 0
call fcn.1000db40
mov edi, 0x7ffffffe
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0xb4]
mov eax, edi
mov esi, dword [ebp - 0xfc]
sub eax, edx
cmp eax, esi
jb 0x1006fa50
cmp dword [ebp - 0xb0], 8
lea ecx, [ebp - 0xc4]
push esi
cmovae ecx, dword [ebp - 0xc4]
lea eax, [ebp - 0x10c]
cmp dword [ebp - 0xf8], 8
cmovae eax, dword [ebp - 0x10c]
push eax
push edx
push ecx
push ecx
push dword [ebp - 0xa8]
lea ecx, [ebp - 0x2c]
call fcn.1000f590
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp - 0xdc]
call fcn.1000d8c0
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 4
call fcn.1006fb10
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0xc8]
cmp ecx, 8
jb 0x1006e4d9
mov edx, dword [ebp - 0xdc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006e4cf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa55
push ecx
push edx
call fcn.10092592
add esp, 8
xor eax, eax
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0xc8], 7
mov word [ebp - 0xdc], ax
cmp ecx, 8
jb 0x1006e534
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006e52a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa55
push ecx
push edx
call fcn.10092592
add esp, 8
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0xb0]
cmp ecx, 8
jb 0x1006e578
mov edx, dword [ebp - 0xc4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006e56e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa55
push ecx
push edx
call fcn.10092592
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0xf8]
cmp ecx, 8
jb 0x1006e5bf
mov edx, dword [ebp - 0x10c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006e5b5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa55
push ecx
push edx
call fcn.10092592
add esp, 8
push 0xc
xorps xmm0, xmm0
mov dword [ebp - 0xb4], 0
push str.Application
lea ecx, [ebp - 0xc4]
mov dword [ebp - 0xb0], 0
movups xmmword [ebp - 0xc4], xmm0
call fcn.1000db40
mov dword [ebp - 4], 5
mov eax, edi
mov ecx, dword [ebp - 0xb4]
sub eax, ecx
cmp eax, 9
jb 0x1006fa5a
cmp dword [ebp - 0xb0], 8
lea eax, [ebp - 0xc4]
push 9
cmovae eax, dword [ebp - 0xc4]
push 0x100e2c2c
push ecx
push eax
push ecx
push dword [ebp - 0xa8]
lea ecx, [ebp - 0x2c]
call fcn.1000f590
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0xdc]
call fcn.1000d8c0
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 7
call fcn.1006fb10
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0xc8]
cmp ecx, 8
jb 0x1006e69b
mov edx, dword [ebp - 0xdc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006e691
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa5f
push ecx
push edx
call fcn.10092592
add esp, 8
xor eax, eax
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0xc8], 7
mov word [ebp - 0xdc], ax
cmp ecx, 8
jb 0x1006e6f6
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006e6ec
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa5f
push ecx
push edx
call fcn.10092592
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0xb0]
cmp ecx, 8
jb 0x1006e73d
mov edx, dword [ebp - 0xc4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006e733
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa5f
push ecx
push edx
call fcn.10092592
add esp, 8
push 8
xorps xmm0, xmm0
mov dword [ebp - 0xb4], 0
push str.Version
lea ecx, [ebp - 0xc4]
mov dword [ebp - 0xb0], 0
movups xmmword [ebp - 0xc4], xmm0
call fcn.1000db40
mov dword [ebp - 4], 8
mov eax, edi
mov ecx, dword [ebp - 0xb4]
sub eax, ecx
cmp eax, 7
jb 0x1006fa64
cmp dword [ebp - 0xb0], 8
lea eax, [ebp - 0xc4]
push 7
cmovae eax, dword [ebp - 0xc4]
push 0x100e2c4c
push ecx
push eax
push ecx
push dword [ebp - 0xa8]
lea ecx, [ebp - 0x2c]
call fcn.1000f590
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 9
push eax
lea ecx, [ebp - 0xdc]
call fcn.1000d8c0
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0xa
call fcn.1006fb10
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0xc8]
cmp ecx, 8
jb 0x1006e819
mov edx, dword [ebp - 0xdc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006e80f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa69
push ecx
push edx
call fcn.10092592
add esp, 8
xor eax, eax
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0xc8], 7
mov word [ebp - 0xdc], ax
cmp ecx, 8
jb 0x1006e874
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006e86a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa69
push ecx
push edx
call fcn.10092592
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0xb0]
cmp ecx, 8
jb 0x1006e8bb
mov edx, dword [ebp - 0xc4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006e8b1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa69
push ecx
push edx
call fcn.10092592
add esp, 8
lea ecx, [ebp - 0x2c]
call fcn.100733f0
mov esi, eax
mov dword [ebp - 4], 0xb
lea ecx, [ebp - 0xc4]
push 3
xorps xmm0, xmm0
mov dword [ebp - 0xb4], 0
push 0x100e5d60
movups xmmword [ebp - 0xc4], xmm0
mov dword [ebp - 0xb0], 0
call fcn.1000db40
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0xc4]
cmp dword [ebp - 0xb0], 8
push dword [ebp - 0xb4]
cmovae eax, dword [ebp - 0xc4]
push eax
push ecx
mov ecx, esi
call fcn.1000c970
xor ecx, ecx
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0xf4], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0xe4], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
lea eax, [ebp - 0xf4]
mov byte [ebp - 4], 0xd
push eax
lea ecx, [ebp - 0xdc]
call fcn.1000d8c0
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0xe
call fcn.1006fb10
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0xc8]
cmp ecx, 8
jb 0x1006e9b6
mov edx, dword [ebp - 0xdc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006e9ac
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa6e
push ecx
push edx
call fcn.10092592
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0xe0]
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0xc8], 7
mov word [ebp - 0xdc], ax
cmp ecx, 8
jb 0x1006ea17
mov edx, dword [ebp - 0xf4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006ea0d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa6e
push ecx
push edx
call fcn.10092592
add esp, 8
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0xb0]
cmp ecx, 8
jb 0x1006ea5b
mov edx, dword [ebp - 0xc4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006ea51
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa6e
push ecx
push edx
call fcn.10092592
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x1006ea9c
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006ea92
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa6e
push ecx
push edx
call fcn.10092592
add esp, 8
push 0x40
lea eax, [ebp - 0xa4]
push 0
push eax
call fcn.10094470
add esp, 0xc
mov dword [ebp - 0xa8], 0x1f
lea eax, [ebp - 0xa8]
push eax
lea eax, [ebp - 0xa4]
push eax
call dword [sym.imp.KERNEL32.dll_GetComputerNameW]
xorps xmm0, xmm0
mov dword [ebp - 0x114], 0
lea ecx, [ebp - 0xa4]
mov dword [ebp - 0x110], 0
movups xmmword [ebp - 0x124], xmm0
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x1006eaf4
sub ecx, edx
lea eax, [ebp - 0xa4]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x124]
call fcn.1000db40
mov dword [ebp - 4], 0xf
lea ecx, [ebp - 0xc4]
push 0xc
xorps xmm0, xmm0
mov dword [ebp - 0xb4], 0
push str.NetBiosName
movups xmmword [ebp - 0xc4], xmm0
mov dword [ebp - 0xb0], 0
call fcn.1000db40
mov byte [ebp - 4], 0x10
lea eax, [ebp - 0xc4]
cmp dword [ebp - 0xb0], 8
push dword [ebp - 0xb4]
cmovae eax, dword [ebp - 0xc4]
push eax
push ecx
lea ecx, [ebp - 0x124]
call fcn.1000c970
xor ecx, ecx
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0xf4], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0xe4], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
lea eax, [ebp - 0xf4]
mov byte [ebp - 4], 0x11
push eax
lea ecx, [ebp - 0xdc]
call fcn.1000d8c0
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x12
call fcn.1006fb10
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0xc8]
cmp ecx, 8
jb 0x1006ec0b
mov edx, dword [ebp - 0xdc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006ec01
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa73
push ecx
push edx
call fcn.10092592
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0xe0]
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0xc8], 7
mov word [ebp - 0xdc], ax
cmp ecx, 8
jb 0x1006ec6c
mov edx, dword [ebp - 0xf4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006ec62
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa73
push ecx
push edx
call fcn.10092592
add esp, 8
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0xb0]
cmp ecx, 8
jb 0x1006ecb0
mov edx, dword [ebp - 0xc4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006eca6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa73
push ecx
push edx
call fcn.10092592
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x110]
cmp ecx, 8
jb 0x1006ecf7
mov edx, dword [ebp - 0x124]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006eced
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa73
push ecx
push edx
call fcn.10092592
add esp, 8
lea ecx, [ebp - 0x2c]
call fcn.10073bb0
mov esi, eax
mov dword [ebp - 4], 0x13
lea ecx, [ebp - 0xc4]
push 9
xorps xmm0, xmm0
mov dword [ebp - 0xb4], 0
push str.Computer
movups xmmword [ebp - 0xc4], xmm0
mov dword [ebp - 0xb0], 0
call fcn.1000db40
mov byte [ebp - 4], 0x14
lea eax, [ebp - 0xc4]
cmp dword [ebp - 0xb0], 8
push dword [ebp - 0xb4]
cmovae eax, dword [ebp - 0xc4]
push eax
push ecx
mov ecx, esi
call fcn.1000c970
xor ecx, ecx
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0xf4], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0xe4], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
lea eax, [ebp - 0xf4]
mov byte [ebp - 4], 0x15
push eax
lea ecx, [ebp - 0xdc]
call fcn.1000d8c0
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x16
call fcn.1006fb10
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0xc8]
cmp ecx, 8
jb 0x1006edf2
mov edx, dword [ebp - 0xdc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006ede8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa78
push ecx
push edx
call fcn.10092592
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0xe0]
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0xc8], 7
mov word [ebp - 0xdc], ax
cmp ecx, 8
jb 0x1006ee53
mov edx, dword [ebp - 0xf4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006ee49
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa78
push ecx
push edx
call fcn.10092592
add esp, 8
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0xb0]
cmp ecx, 8
jb 0x1006ee97
mov edx, dword [ebp - 0xc4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006ee8d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa78
push ecx
push edx
call fcn.10092592
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x1006eed8
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006eece
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa78
push ecx
push edx
call fcn.10092592
add esp, 8
lea ecx, [ebp - 0x2c]
call fcn.10074540
mov esi, eax
mov dword [ebp - 4], 0x17
lea ecx, [ebp - 0xc4]
push 5
xorps xmm0, xmm0
mov dword [ebp - 0xb4], 0
push str.SIMD
movups xmmword [ebp - 0xc4], xmm0
mov dword [ebp - 0xb0], 0
call fcn.1000db40
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0xc4]
cmp dword [ebp - 0xb0], 8
push dword [ebp - 0xb4]
cmovae eax, dword [ebp - 0xc4]
push eax
push ecx
mov ecx, esi
call fcn.1000c970
xor ecx, ecx
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0xf4], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0xe4], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
lea eax, [ebp - 0xf4]
mov byte [ebp - 4], 0x19
push eax
lea ecx, [ebp - 0xdc]
call fcn.1000d8c0
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x1a
call fcn.1006fb10
mov byte [ebp - 4], 0x19
mov ecx, dword [ebp - 0xc8]
cmp ecx, 8
jb 0x1006efd3
mov edx, dword [ebp - 0xdc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006efc9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa7d
push ecx
push edx
call fcn.10092592
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0xe0]
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0xc8], 7
mov word [ebp - 0xdc], ax
cmp ecx, 8
jb 0x1006f034
mov edx, dword [ebp - 0xf4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006f02a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa7d
push ecx
push edx
call fcn.10092592
add esp, 8
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0xb0]
cmp ecx, 8
jb 0x1006f078
mov edx, dword [ebp - 0xc4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006f06e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa7d
push ecx
push edx
call fcn.10092592
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x18]
cmp ecx, 8
jb 0x1006f0b9
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006f0af
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa7d
push ecx
push edx
call fcn.10092592
add esp, 8
mov edx, 0x1e
call fcn.1002a5e0
movsd qword [ebp - 0xac], xmm0
call fcn.100744a0
mov ecx, eax
call fcn.100b7090
divsd xmm0, qword [ebp - 0xac]
xor ecx, ecx
mov dword [ebp - 0xb4], 0
mov dword [ebp - 0xb0], 7
addsd xmm0, qword [0x100e86e8]
cvttsd2si eax, xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0xc4], xmm0
mov word [ebp - 0xc4], cx
mov dword [ebp - 4], 0x1b
push 0xa
mov word [ebp - 0x30], cx
lea ecx, [ebp - 0x48]
push 0xc
push ecx
push eax
movups xmmword [ebp - 0x48], xmm0
movq qword [ebp - 0x38], xmm0
call fcn.1009fa6f
lea ecx, [ebp - 0x48]
add esp, 0x10
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x1006f140
sub ecx, edx
lea eax, [ebp - 0x48]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0xc4]
call fcn.1000c560
mov dword [ebp - 4], 0x1c
call fcn.100744f0
mov ecx, eax
call fcn.100b7090
divsd xmm0, qword [ebp - 0xac]
xor ecx, ecx
mov dword [ebp - 0x114], 0
mov dword [ebp - 0x110], 7
addsd xmm0, qword [0x100e86e8]
cvttsd2si eax, xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x124], xmm0
mov word [ebp - 0x124], cx
mov byte [ebp - 4], 0x1d
push 0xa
mov word [ebp - 0x30], cx
lea ecx, [ebp - 0x48]
push 0xc
push ecx
push eax
movups xmmword [ebp - 0x48], xmm0
movq qword [ebp - 0x38], xmm0
call fcn.1009fa6f
lea ecx, [ebp - 0x48]
add esp, 0x10
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x1006f1d5
sub ecx, edx
lea eax, [ebp - 0x48]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x124]
call fcn.1000c560
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0xdc]
push 4
xorps xmm0, xmm0
mov dword [ebp - 0xcc], 0
push str.RAM
movups xmmword [ebp - 0xdc], xmm0
mov dword [ebp - 0xc8], 0
call fcn.1000db40
mov byte [ebp - 4], 0x1f
mov edx, dword [ebp - 0xcc]
sub edi, edx
mov esi, dword [ebp - 0x114]
cmp edi, esi
jb 0x1006fa82
cmp dword [ebp - 0xc8], 8
lea ecx, [ebp - 0xdc]
push esi
cmovae ecx, dword [ebp - 0xdc]
lea eax, [ebp - 0x124]
cmp dword [ebp - 0x110], 8
cmovae eax, dword [ebp - 0x124]
push eax
push edx
push ecx
push ecx
push dword [ebp - 0xa8]
lea ecx, [ebp - 0xf4]
call fcn.1000f590
push 1
push 0x100e1b3c
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x20
call fcn.1000c560
mov dword [ebp - 0x12c], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x13c], xmm0
mov dword [ebp - 0x128], 0
xor ecx, ecx
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x13c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x12c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
mov byte [ebp - 4], 0x21
lea eax, [ebp - 0xc4]
cmp dword [ebp - 0xb0], 8
lea ecx, [ebp - 0x13c]
push dword [ebp - 0xb4]
cmovae eax, dword [ebp - 0xc4]
push eax
call fcn.1000c560
mov dword [ebp - 0xfc], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x10c], xmm0
mov dword [ebp - 0xf8], 0
xor ecx, ecx
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x10c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0xfc], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
push 2
push 0x100e5da4
lea ecx, [ebp - 0x10c]
mov byte [ebp - 4], 0x22
call fcn.1000c560
xor ecx, ecx
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x2c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x1c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x23
push eax
lea ecx, [ebp - 0x154]
call fcn.1000d8c0
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 0x24
call fcn.1006fb10
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0x140]
cmp ecx, 8
jb 0x1006f3f0
mov edx, dword [ebp - 0x154]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006f3e6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa87
push ecx
push edx
call fcn.10092592
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x22
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x144], 0
mov dword [ebp - 0x140], 7
mov word [ebp - 0x154], ax
cmp ecx, 8
jb 0x1006f44b
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006f441
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa87
push ecx
push edx
call fcn.10092592
add esp, 8
mov byte [ebp - 4], 0x21
mov ecx, dword [ebp - 0xf8]
cmp ecx, 8
jb 0x1006f48f
mov edx, dword [ebp - 0x10c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006f485
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa87
push ecx
push edx
call fcn.10092592
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x128]
mov dword [ebp - 0xfc], 0
mov dword [ebp - 0xf8], 7
mov word [ebp - 0x10c], ax
cmp ecx, 8
jb 0x1006f4f0
mov edx, dword [ebp - 0x13c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006f4e6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa87
push ecx
push edx
call fcn.10092592
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x1f
mov ecx, dword [ebp - 0xe0]
mov dword [ebp - 0x12c], 0
mov dword [ebp - 0x128], 7
mov word [ebp - 0x13c], ax
cmp ecx, 8
jb 0x1006f551
mov edx, dword [ebp - 0xf4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006f547
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa87
push ecx
push edx
call fcn.10092592
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x1e
mov ecx, dword [ebp - 0xc8]
mov dword [ebp - 0xe4], 0
mov dword [ebp - 0xe0], 7
mov word [ebp - 0xf4], ax
cmp ecx, 8
jb 0x1006f5b2
mov edx, dword [ebp - 0xdc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006f5a8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa87
push ecx
push edx
call fcn.10092592
add esp, 8
mov byte [ebp - 4], 0x1c
mov ecx, dword [ebp - 0x110]
cmp ecx, 8
jb 0x1006f5f6
mov edx, dword [ebp - 0x124]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006f5ec
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa87
push ecx
push edx
call fcn.10092592
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0xb0]
cmp ecx, 8
jb 0x1006f63d
mov edx, dword [ebp - 0xc4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006f633
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1006fa87
push ecx
push edx
call fcn.10092592
add esp, 8
mov eax, dword fs:[0x2c]
mov ecx, dword [0x10101ec8]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x10103948]
cmp eax, dword [ecx + 4]
jle 0x1006f6a9
push 0x10103948
call fcn.1009289a
add esp, 4
cmp dword [0x10103948], 0xffffffff
jne 0x1006f6a9
push 0x58
push 0
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
push 0x10103948
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, qword [0x100e87b0]
cvtpd2ps xmm0, xmm0
movss dword [0x1010394c], xmm0
call fcn.10092850
add esp, 4
movss xmm0, dword [0x1010394c]
mulss xmm0, dword [0x100e8848]
push ecx
movss dword [ebp - 0xa8], xmm0
fld dword [ebp - 0xa8]
fstp dword [esp]
call fcn.100b9090
xorps xmm0, xmm0
mov dword [ebp - 0xb4], 0
xor eax, eax
mov dword [ebp - 0xb0], 7
movups xmmword [ebp - 0xc4], xmm0
mov word [ebp - 0xc4], ax
fstp dword [ebp - 0xa8]
mov dword [ebp - 4], 0x25
push 0xa
mov word [ebp - 0x14], ax
lea eax, [ebp - 0x2c]
push 0xc
push eax
cvttss2si eax, dword [ebp - 0xa8]
movups xmmword [ebp - 0x2c], xmm0
push eax
movq qword [ebp - 0x1c], xmm0
call fcn.1009fa6f
lea ecx, [ebp - 0x2c]
add esp, 0x14
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x1006f730
sub ecx, edx
lea eax, [ebp - 0x2c]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0xc4]
call fcn.1000c560
mov dword [ebp - 4], 0x26
mov esi, dword [sym.imp.USER32.dll_GetSystemMetrics]
push 1
call esi
xorps xmm0, xmm0
mov dword [ebp - 0xcc], 0
xor ecx, ecx
mov dword [ebp - 0xc8], 7
movups xmmword [ebp - 0xdc], xmm0
mov word [ebp - 0xdc], cx
mov byte [ebp - 4], 0x27
push 0xa
mov word [ebp - 0x14], cx
lea ecx, [ebp - 0x2c]
push 0xc
push ecx
push eax
movups xmmword [ebp - 0x2c], xmm0
movq qword [ebp - 0x1c], xmm0
call fcn.1009fa6f
lea ecx, [ebp - 0x2c]
add esp, 0x10
lea edx, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x1006f7b0
sub ecx, edx
lea eax, [ebp - 0x2c]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0xdc]
call fcn.1000c560
push 0
call esi
xorps xmm0, xmm0
mov dword [ebp - 0x144], 0
xor ecx, ecx
mov dword [ebp - 0x140], 7
movups xmmword [ebp - 0x154], xmm0
mov word [ebp - 0x154], cx
mov byte [ebp - 4], 0x29
push 0xa
mov word [ebp - 0x14], cx
lea ecx, [ebp - 0x2c]
push 0xc
push ecx
push eax
movups xmmword [ebp - 0x2c], xmm0
movq qword [ebp - 0x1c], xmm0
call fcn.1009fa6f
lea ecx, [ebp - 0x2c]
add esp, 0x10
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x1006f822
sub ecx, edx
lea eax, [ebp - 0x2c]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x154]
call fcn.1000c560
push 0x50
call esi
xorps xmm0, xmm0
mov dword [ebp - 0xe4], 0
xor ecx, ecx
mov dword [ebp - 0xe0], 7
movups xmmword [ebp - 0xf4], xmm0
mov word [ebp - 0xf4], cx
mov byte [ebp - 4], 0x2b
push 0xa
mov word [ebp - 0x4c], cx
lea ecx, [ebp - 0x64]
push 0xc
push ecx
push eax
movups xmmword [ebp - 0x64], xmm0
movq qword [ebp - 0x54], xmm0
call fcn.1009fa6f
lea ecx, [ebp - 0x64]
add esp, 0x10
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x1006f894
sub ecx, edx
lea eax, [ebp - 0x64]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0xf4]
call fcn.1000c560
push str.Display
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x2c
call fcn.1000dc30
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x2d
push ecx
mov edx, eax
lea ecx, [ebp - 0x1fc]
call fcn.1002b260
push str.__1:
mov edx, eax
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0x1e4]
call fcn.1000c710
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 0x2f
push ecx
mov edx, eax
lea ecx, [ebp - 0x1cc]
call fcn.100158d0
push 0x100e51c8
mov edx, eax
mov byte [ebp - 4], 0x30
lea ecx, [ebp - 0x1b4]
call fcn.1000c710
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x31
push ecx
mov edx, eax
lea ecx, [ebp - 0x19c]
call fcn.100158d0
push 0x100e5dbc
mov edx, eax
mov byte [ebp - 4], 0x32
lea ecx, [ebp - 0x184]
call fcn.1000c710
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0x33
push ecx
mov edx, eax
lea ecx, [ebp - 0x16c]
call fcn.100158d0
push 0x100e5db8
mov edx, eax
mov byte [ebp - 4], 0x34
lea ecx, [ebp - 0x10c]
call fcn.1000c710
add esp, 0x20
push eax
lea ecx, [ebp - 0x13c]
mov byte [ebp - 4], 0x35
call fcn.1000d8c0
lea ecx, [ebp - 0x13c]
mov byte [ebp - 4], 0x36
call fcn.1006fb10
lea ecx, [ebp - 0x13c]
call fcn.1000dc80
lea ecx, [ebp - 0x10c]
call fcn.1000dc80
lea ecx, [ebp - 0x16c]
call fcn.1000dc80
lea ecx, [ebp - 0x184]
call fcn.1000dc80
lea ecx, [ebp - 0x19c]
call fcn.1000dc80
lea ecx, [ebp - 0x1b4]
call fcn.1000dc80
lea ecx, [ebp - 0x1cc]
call fcn.1000dc80
lea ecx, [ebp - 0x1e4]
call fcn.1000dc80
lea ecx, [ebp - 0x1fc]
call fcn.1000dc80
lea ecx, [ebp - 0x48]
call fcn.1000dc80
lea ecx, [ebp - 0xf4]
call fcn.1000dc80
lea ecx, [ebp - 0x154]
call fcn.1000dc80
lea ecx, [ebp - 0xdc]
call fcn.1000dc80
lea ecx, [ebp - 0xc4]
call fcn.1000dc80
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10092561
mov esp, ebp
pop ebp
ret
call fcn.1000d980
call fcn.10097635
call fcn.1000d980
call fcn.10097635
call fcn.1000d980
call fcn.10097635
call fcn.10097635
call fcn.10097635
call fcn.10097635
call fcn.10097635
call fcn.1000d980
call fcn.10097635
int3