Function at 0x10009c97
Capabilities:
Query or enumerate registry value

Disassembly:
mov eax, 0x10018277
call fcn.10011b90
sub esp, 0x8c
push esi
push edi
mov esi, 0x824
xor edi, edi
cmp dword [ebp + 0x18], esi
mov dword [ebp - 0x10], edi
jne 0x10009eb2
cmp dword [ebp + 0x20], esi
jne 0x10009eb2
push ebx
xor ebx, ebx
cmp dword [ebp + 0x10], edi
mov dword [ebp + 0x18], edi
setne bl
push 0xf003f
push str.SOFTWARECNNICCdnClientConsole
push SysReAllocString
lea ecx, [ebp + 0x18]
mov dword [ebp - 4], edi
mov dword [ebp + 0x20], edi
call fcn.10009eda
test eax, eax
jne 0x10009d89
lea eax, [ebp + 0x10]
mov dword [ebp - 0x14], edi
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x14]
push eax
push edi
mov edi, dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
push str.EnableIdn
push dword [ebp + 0x18]
mov dword [ebp + 0x10], 4
call edi
test eax, eax
jne 0x10009d38
mov eax, dword [ebp - 0x18]
cmp dword [0x10026a68], eax
je 0x10009d38
mov dword [0x10026a68], eax
mov dword [ebp + 0x20], 1
lea eax, [ebp + 0x10]
and dword [ebp - 0x14], 0
push eax
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x14]
push eax
push 0
push str.EnableKw
mov dword [ebp + 0x10], 4
push dword [ebp + 0x18]
call edi
test eax, eax
jne 0x10009d76
mov eax, dword [ebp - 0x1c]
cmp dword [0x10026a6c], eax
je 0x10009d76
mov dword [0x10026a6c], eax
mov dword [ebp + 0x20], 1
cmp dword [ebp + 0x18], 0
je 0x10009d89
push dword [ebp + 0x18]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
and dword [ebp + 0x18], 0
mov edi, ebx
push dword [ebp + 0xc]
imul edi, edi, 0x104a
lea eax, [edi + 0x100208a4]
push eax
call dword [sym.imp.SHLWAPI.dll_StrCmpW]
test eax, eax
jne 0x10009dd7
cmp dword [ebp + 0x20], eax
jne 0x10009dd7
mov esi, dword [sym.imp.KERNEL32.dll_lstrcpyW]
lea eax, [edi + 0x10022938]
push eax
push dword [ebp + 0x14]
call esi
lea eax, [edi + 0x100249cc]
push eax
push dword [ebp + 0x1c]
call esi
mov eax, dword [ebx*4 + 0x10026a60]
mov dword [ebp - 0x10], eax
jmp 0x10009ea2
lea ecx, [ebp - 0x98]
call fcn.1000b71e
mov eax, dword [ebp + 8]
and dword [ebp - 0x30], 0
mov dword [ebp - 0x44], eax
mov eax, dword [0x1001f6cc]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 1
mov dword [ebp - 0x38], 0x20000000
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x20], esi
call fcn.1000ba26
test eax, eax
je 0x10009e32
cmp eax, 1
jne 0x10009e5f
mov eax, dword [ebp - 0x30]
test eax, eax
jbe 0x10009e5f
push 2
pop ecx
cmp eax, ecx
jbe 0x10009e58
cmp eax, 4
jbe 0x10009e53
cmp eax, 5
jne 0x10009e5f
mov dword [ebp - 0x10], 3
jmp 0x10009e5f
mov dword [ebp - 0x10], ecx
jmp 0x10009e5f
mov dword [ebp - 0x10], 1
push dword [ebp + 0xc]
mov esi, dword [sym.imp.KERNEL32.dll_lstrcpyW]
lea eax, [edi + 0x100208a4]
push eax
call esi
push dword [ebp + 0x14]
lea eax, [edi + 0x10022938]
push eax
call esi
push dword [ebp + 0x1c]
lea eax, [edi + 0x100249cc]
push eax
call esi
mov eax, dword [ebp - 0x10]
and byte [ebp - 4], 0
lea ecx, [ebp - 0x98]
mov dword [ebx*4 + 0x10026a60], eax
call fcn.1000b737
cmp dword [ebp + 0x18], 0
pop ebx
je 0x10009eb2
push dword [ebp + 0x18]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x10]
pop edi
pop esi
mov dword fs:[0], ecx
leave
ret 0x1c