Function at 0x1000237c
Capabilities:
Contain obfuscated stackstrings
Query or enumerate registry key
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x124
push ebx
push esi
push edi
call dword [sym.imp.KERNEL32.dll_GetVersion]
cmp eax, 0x80000000
jae 0x10002400
lea eax, [ebp - 4]
mov dword [ebp - 4], 0x12341234
push eax
lea eax, [ebp - 4]
push 4
push eax
call sym.HCADHook.dat_Ordinal_3
mov ecx, dword [ebp + 8]
mov eax, dword [ebp - 4]
add esp, 0xc
cmp eax, dword [ecx]
jbe 0x100023ba
mov dword [ecx], eax
lea eax, [ebp - 4]
mov dword [ebp - 4], 0x82341234
push eax
lea eax, [ebp - 4]
push 4
push eax
call sym.HCADHook.dat_Ordinal_3
mov ecx, dword [ebp + 0xc]
mov eax, dword [ebp - 4]
add esp, 0xc
cmp eax, dword [ecx]
jbe 0x100023df
mov dword [ecx], eax
lea eax, [ebp - 4]
mov dword [ebp - 4], 0x22346234
push eax
lea eax, [ebp - 4]
push 4
push eax
call sym.HCADHook.dat_Ordinal_3
mov eax, dword [ebp - 4]
add esp, 0xc
jmp 0x1000257f
xor ebx, ebx
mov byte [ebp - 0x14], 0x53
mov byte [ebp - 0x12], 0x53
mov byte [ebp - 0xd], 0x53
mov byte [ebp - 0x10], 0x45
mov byte [ebp - 9], 0x70
mov byte [ebp - 8], bl
mov byte [ebp - 0x11], 0x54
mov byte [ebp - 0xa], 0x75
mov byte [ebp - 0x13], 0x59
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push eax
call fcn.10003639
pop ecx
mov dword [ebp - 4], ebx
push 0x40
mov byte [ebp - 0xf], 0x4d
mov byte [ebp - 0xe], 0x5c
lea esi, [ebp - 0x124]
pop edi
call fcn.10003646
shl eax, 0x10
mov dword [esi], eax
add esi, 4
dec edi
jne 0x10002446
lea eax, [ebp - 4]
mov byte [ebp - 0xc], 0x65
push eax
lea eax, [ebp - 0x14]
push eax
push 0x80000002
mov byte [ebp - 0xb], 0x74
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyA]
test eax, eax
je 0x1000247c
xor eax, eax
jmp 0x1000257f
lea eax, [ebp - 0x24]
push eax
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_RegQueryInfoKeyA]
lea eax, [ebp - 0x24]
mov byte [ebp - 0x13], 0x79
push eax
mov byte [ebp - 0x12], 0x73
call fcn.10002248
mov edi, dword [ebp + 0xc]
pop ecx
cmp eax, dword [edi]
jle 0x100024ae
mov dword [edi], eax
lea esi, [ebp - 0x28]
mov dword [ebp + 0xc], 0x40
call fcn.10003646
or dword [esi], eax
sub esi, 4
dec dword [ebp + 0xc]
jne 0x100024b8
mov eax, dword [edi]
mov byte [ebp - 0x11], 0x74
xor eax, dword [ebp - 0x84]
mov byte [ebp - 0x10], 0x65
mov byte [ebp - 7], 0x76
mov byte [ebp - 6], bl
mov dword [ebp - 0x108], eax
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x124]
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x14]
push ebx
push eax
push dword [ebp - 4]
mov byte [ebp - 0xf], 0x6d
mov byte [ebp - 0xa], 0x69
mov byte [ebp - 9], 0x78
mov dword [ebp - 0x1c], 0x100
mov byte [ebp - 0xe], 0x50
mov byte [ebp - 0xd], 0x72
mov byte [ebp - 8], 0x62
mov dword [ebp - 0x18], 3
mov byte [ebp - 0xc], 0x65
mov byte [ebp - 0xb], 0x66
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
je 0x10002541
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x10002475
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp + 8]
xor eax, dword [ebp - 0x84]
mov byte [ebp - 0x12], 0x41
mov byte [ebp - 8], 0x45
mov byte [ebp - 0xd], 0x42
cmp eax, dword [ecx]
jle 0x10002566
mov byte [ebp - 8], 0x46
mov dword [ecx], eax
push dword [ebp - 4]
mov byte [ebp - 0x10], 0x43
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, dword [ebp - 0xe4]
xor eax, dword [ebp - 0xcc]
pop edi
pop esi
pop ebx
leave
ret