Function at 0x40119c
Capabilities:
Query or enumerate registry value

Disassembly:
sub eax, 1
mov di, 0xec5e
mov ebx, 0x984
inc ebx
push ebx
mov ebx, 0x22d6
imul ebx, ebx, 0x36
test ebx, 0x1f6b
je 0x40118e
shl ebx, 1
or ebx, eax
rol ebx, 2
sub ebx, dword [0x480972]
rol ebx, 2
sub ebx, 0x969
dec ebx
rol ebx, 1
add ebx, dword [0x4810e5]
add ebx, 0x112
mov edi, 0x1f4d
sub ebx, edi
pop dword [0x480d19]
add dword [0x480401], ebx
leave
ret
or eax, 0x52
setns bl
dec ebx
push 0
pop esi
push esi
call dword [sym.imp.KERNEL32.DLL_GetModuleHandleA]
mov dword [0x480765], 0
mov edi, dword [0x480765]
push edi
call dword [sym.imp.GDI32.DLL_CreateFontIndirectW]
mov esi, 0x77149b39
push esi
mov edx, 0xe5b71
add edx, 0x39b3d9
push edx
mov esi, 0x40d3d8
mov eax, esi
mov dword [0x480265], 0x73230
add eax, dword [0x480265]
push eax
mov ecx, 0
mov esi, ecx
push esi
mov ebx, 0x356bd6
add ebx, 0x12a2aa
push ebx
push 0x3341a9
pop edi
mov ebx, 0x14bf59
add edi, ebx
push edi
mov eax, 0x6b
push eax
push 0
pop esi
push esi
call dword [sym.imp.ADVAPI32.DLL_RegEnumValueA]
or eax, eax
je 0x4011a2
push eax
call 0x40119c
sub esi, 2
add esi, 1
sub ebx, eax
inc ebx
mov dword [0x480375], 0
mov ebx, dword [0x480375]
push ebx
call dword [sym.imp.KERNEL32.DLL_GetModuleHandleA]
mov dword [0x480569], 0
mov eax, dword [0x480569]
push eax
mov dword [0x4809b0], 0
mov ecx, dword [0x4809b0]
push ecx
call dword [sym.imp.KERNEL32.DLL_CreateDirectoryW]
or eax, eax
jne 0x401147
sub eax, 0x64
call 0x401234
dec esi
mov esi, 0x41
sub eax, dword [0x4e2007]
lea eax, [esi + 9]
inc eax
mov esi, edi
mov ebx, 0x1328
imul esi, ebx, 0x13
sub esi, 0x353
je 0x4012f0
mov ebx, 0x1a8b
add esi, ebx
dec esi
sub esi, 0xf23
inc esi
mov eax, 0xdd7
sub esi, eax
shr esi, 6
mov ebx, 0xf6c
sub esi, ebx
ror esi, 8
add esi, dword [0x481015]
inc esi
add esi, dword [0x480365]
shr esi, 1
ror esi, 1
add esi, 0x419
mov edi, 0xf2c
sub esi, edi
push esi
pop dword [0x4804aa]
mov ebx, 0x480070
mov dword [ebx], esi
ret
push ebp
mov ebp, esp
sub esp, 0x4c
push edi
push esi
lea ebx, [esi + 0x4802ea]
inc ebx
cmp ebx, 0xc9f
je 0x402b45
or ebx, esi
shr ebx, 1
add ebx, dword [0x4808f2]
sub ebx, 0x600
or ebx, esi
mov ebx, 0x1379
imul ebx, ebx, 0x22
mov edi, 0x4805e9
mov dword [edi], ebx
push esi
lea eax, [0x480300]
push eax
call fcn.004015c4
or al, al
je 0x402b63
add eax, 1
push 0
push 0
push 0x80000000
call dword [sym.imp.ADVAPI32.DLL_RegOpenKeyW]
push 0
push 0x140ec
push 0xff895
lea eax, [0x480c0f]
push eax
push 0x1507b
push 0
call fcn.0040184c
xor esi, esi
add esi, dword [0x48091e]
sub esi, 0x665
jne 0x402bba
mov ebx, 0x168b
sub esi, ebx
mov eax, 0x1e92
add esi, eax
add esi, dword [0x4805ad]
ror esi, 7
xor eax, esi
ror esi, 3
or esi, dword [0x48110d]
jne 0x402bf0
or esi, edi
dec esi
add esi, 0xf47
sub esi, dword [0x480ca6]
mov edi, 0x5e5
add esi, edi
or esi, eax
dec esi
or esi, ebx
mov eax, esi
or eax, edi
mov edx, eax
mov edi, 0x15f
sub edx, edi
xor esi, edx
dec edx
add dword [0x48053a], edx
push 0
call dword [sym.imp.user32.dll_GetDC]
push 0x894
pop esi
xor eax, esi
push esi
pop dword [0x480eb0]
add dword [0x481079], esi
push 0x8f48
push 0x6fd71
push 0
push edi
push 0
call fcn.00401480
test al, al
je 0x402c31
or eax, 0x1f
sub ebx, eax
inc eax
mov dword [ebp - 0x28], eax
mov eax, edi
rol eax, 7
or eax, 0x1ce0
jne 0x402c65
mov eax, 0x5af
imul eax, eax, 0x27
add eax, 0x83b
shl eax, 1
add eax, 0x7a8
mov ebx, 0x511
sub eax, ebx
rol eax, 1
add eax, 0x5ef
mov esi, eax
test dword [ebp - 0x38], esi
jne 0x402c82
mov edi, 0x220
sub esi, edi
mov edi, 0x1091
add esi, edi
sub esi, 0x839
or esi, eax
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x44], 0x50fadead
mov edx, dword [ebp - 0x44]
push edx
mov edx, 0x38463e
mov esi, edx
mov dword [ebp - 0x30], 0xfc662
add esi, dword [ebp - 0x30]
push esi
mov edx, 0x319ca3
mov ebx, edx
add ebx, 0x166cc0
push ebx
xor ecx, ecx
push ecx
push 0x45bdb0
pop eax
mov dword [0x4808c5], 0x24bcf
add eax, dword [0x4808c5]
push eax
mov dword [ebp - 0x40], 0x3f1e43
mov ecx, dword [ebp - 0x40]
mov dword [ebp - 0x4c], 0x8e7f0
add ecx, dword [ebp - 0x4c]
push ecx
mov ecx, 0x2e
push ecx
xor edx, edx
push edx
call dword [sym.imp.ADVAPI32.DLL_RegEnumValueA]
or eax, eax
je 0x401297
push 0xf77c0
push esi
push 0x75bb2
call fcn.00401374
xor eax, eax
rol eax, 8
cmp eax, 0xa82
jne 0x402d3f
inc eax
sub eax, dword [0x48053f]
mov esi, 0x6f5
add eax, esi
inc eax
or eax, esi
sub eax, 0x96
or eax, ebx
ror eax, 1
xor esi, eax
shl eax, 4
or eax, ebx
shr eax, 2
mov esi, 0x1958
sub eax, esi
inc eax
sub eax, dword [0x481030]
test dword [str.__D_f_b__d_b_f_f__bld_f_fd_f___HH], eax
je 0x402d7e
shr eax, 1
rol eax, 1
mov ebx, 0x197e
add eax, ebx
or eax, edi
xor ebx, eax
inc eax
mov edi, 0x15d2
imul eax, edi, 0x57
add eax, dword [0x480f0c]
inc eax
mov ebx, 0x24ba
imul eax, ebx, 0x3d
rol eax, 1
mov ebx, eax
sub ebx, dword [0x480131]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x4c], 0x3b4fc0
mov eax, dword [ebp - 0x4c]
add eax, 0xcb75c
push eax
mov dword [ebp - 0x20], 0
mov esi, dword [ebp - 0x20]
push esi
call dword [sym.imp.KERNEL32.DLL_lstrcmpi]
inc eax
jne 0x40119c
push 0
push 0x400000
push 0
push 0
push 0x17
push 0x2d
push 0x1a
push 0x1d
push 0x300
push 0
push 0
push 0x10
call dword [sym.imp.user32.dll_CreateWindowExA]
mov esi, 0xe4
shr esi, 3
push esi
inc esi
test dword [0x480f38], esi
je 0x402de7
ror esi, 5
shr esi, 6
rol esi, 1
pop dword [0x480887]
mov ecx, 0x480bfd
mov dword [ecx], esi
push eax
call dword [sym.imp.user32.dll_UpdateWindow]
lea esi, [esi + 0x4807fb]
shr esi, 1
push esi
dec esi
push esi
pop dword [0x480bcf]
pop dword [0x48113d]
mov dword [ebp - 0x4c], esi
sub eax, 0x7dc934
mov edi, ebx
or edi, esi
or edi, dword [0x4807ef]
jne 0x402e54
xor esi, edi
inc edi
sub edi, dword [0x48120a]
ror edi, 1
inc edi
mov ecx, edi
add ecx, 0xd6b
mov edi, 0x2266
add ecx, edi
add ecx, dword [0x480e59]
sub ecx, 0x6ad
inc ecx
add ecx, 0x6c7
mov dword [ebp - 4], ecx
sub eax, 0xff42078f
mov dword [0x4807df], eax
mov dword [ebp - 0x34], 0
mov eax, dword [ebp - 0x34]
push eax
call dword [sym.imp.ADVAPI32.DLL_RegFlushKey]
push dword [0x4807df]
xor ecx, ecx
push ecx
call dword [sym.imp.GDI32.DLL_CreateFontIndirectW]
or eax, eax
jne 0x401141
mov eax, ebx
sub eax, 0x99b
test dword [0x48025f], eax
je 0x402eb0
inc eax
mov esi, 0x2486
sub eax, esi
xor ebx, eax
shl eax, 1
mov eax, 0xd50
imul eax, eax, 0x3f
rol eax, 3
mov dword [ebp - 0x34], eax
ret