Function at 0x100031dd
Capabilities:
Query or enumerate registry value

Disassembly:
push 0xc98
mov eax, 0x100782d0
call fcn.1006002c
mov esi, ecx
mov dword [ebp - 0xc9c], esi
xor ebx, ebx
mov dword [ebp - 4], ebx
push 0x100831f5
mov dword [ebp - 0xca4], esi
mov dword [ebp - 0xca0], ebx
call fcn.10008c66
push 0x72
pop ecx
push 0x69
pop eax
push 0x75
mov dword [ebp - 4], ebx
mov word [ebp - 0x68], ax
mov word [ebp - 0x7c], ax
pop eax
push 0x41
mov word [ebp - 0x52], ax
pop eax
push 0x5c
mov word [ebp - 0x86], ax
pop eax
push 0x53
mov word [ebp - 0x80], ax
pop eax
push 0x73
pop edi
push 0x66
mov word [ebp - 0x90], ax
pop eax
push 0x63
mov word [ebp - 0x70], ax
pop eax
push 0x54
mov word [ebp - 0x7a], ax
mov word [ebp - 0x50], cx
mov word [ebp - 0x42], cx
pop ecx
push 0x20
pop eax
push 0x57
pop edx
push 0x6e
mov word [ebp - 0x5c], ax
pop eax
push 0x69
mov word [ebp - 0x4a], ax
pop eax
push 0x65
mov word [ebp - 0x3e], ax
pop eax
push 0x4e
mov word [ebp - 0x4c], ax
pop eax
push 0x45
mov word [ebp - 0x5a], ax
pop eax
push 0x5c
mov word [ebp - 0x82], ax
pop eax
push 0x56
mov word [ebp - 0x6c], ax
pop eax
push 0x4f
mov word [ebp - 0x46], ax
pop eax
push 0x6f
mov word [ebp - 0x8a], cx
mov word [ebp - 0x58], cx
pop ecx
push 0x43
mov word [ebp - 0x8e], ax
pop eax
mov dword [ebp - 0xca0], 1
mov word [ebp - 0x74], di
mov word [ebp - 0x6a], dx
mov word [ebp - 0x76], cx
mov word [ebp - 0x3c], cx
mov word [ebp - 0x5e], di
mov word [ebp - 0x40], di
mov word [ebp - 0x54], ax
push 0x64
pop edi
push 0x46
pop eax
push 0x72
mov word [ebp - 0x8c], ax
pop eax
push 0x6e
mov word [ebp - 0x4e], ax
mov word [ebp - 0x88], dx
pop edx
push 0x77
pop eax
push 0x72
mov word [ebp - 0x60], ax
pop eax
push 0x74
mov word [ebp - 0x78], ax
xor eax, eax
mov word [ebp - 0x38], ax
mov word [ebp - 0x72], cx
pop ecx
push 0x52
pop eax
push 0x4d
mov word [ebp - 0x84], ax
pop eax
push 0x6f
mov word [ebp - 0x7e], ax
pop eax
push 0x65
mov word [ebp - 0x62], ax
mov word [ebp - 0x22], ax
mov word [ebp - 0x66], dx
mov word [ebp - 0x3a], dx
pop edx
push 0x5c
mov word [ebp - 0x44], dx
pop edx
push 0x63
pop eax
push 0x50
mov word [ebp - 0x1c], ax
pop eax
push 0x61
mov word [ebp - 0x26], ax
pop eax
push 0x75
mov word [ebp - 0x2a], ax
pop eax
push 0x49
mov word [ebp - 0x1e], ax
pop eax
push 0x67
mov word [ebp - 0x18], ax
pop eax
mov word [ebp - 0x30], ax
push 0x69
xor eax, eax
mov word [ebp - 0x14], ax
pop eax
push 0x44
mov word [ebp - 0x2e], ax
mov word [ebp - 0x32], ax
pop eax
push 0x6c
mov word [ebp - 0x34], ax
pop eax
push 0x72
mov word [ebp - 0x28], ax
pop eax
mov word [ebp - 0x64], di
mov word [ebp - 0x48], cx
mov word [ebp - 0x6e], cx
mov word [ebp - 0x56], dx
mov word [ebp - 0x20], di
mov word [ebp - 0x1a], cx
mov word [ebp - 0x16], di
mov word [ebp - 0x2c], cx
mov word [ebp - 0x24], ax
mov dword [ebp - 0xc90], ebx
push 0x7fc
lea eax, [ebp - 0xc8c]
push ebx
push eax
call fcn.1005b850
add esp, 0xc
lea eax, [ebp - 0xc94]
push eax
push 0x101
push ebx
lea eax, [ebp - 0x90]
push eax
push reloc.WS2_32.dll_bind
mov dword [ebp - 0xc98], 0x800
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x100034b8
lea eax, [ebp - 0xc98]
push eax
lea eax, [ebp - 0xc90]
push eax
push ebx
push ebx
lea eax, [ebp - 0x34]
push eax
push dword [ebp - 0xc94]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x100034ac
push 0x3ff
lea eax, [ebp - 0x48f]
push ebx
push eax
mov byte [ebp - 0x490], bl
call fcn.1005b850
push dword [ebp - 0xc98]
lea edx, [ebp - 0x490]
lea ecx, [ebp - 0xc90]
call fcn.100031a1
lea ecx, [ebp - 0x490]
add esp, 0x10
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10003463
sub ecx, edx
lea edi, [ecx + 1]
cmp edi, 0x3fffffff
jg 0x1000349d
lea eax, [edi + edi]
call fcn.1006e830
mov esi, esp
call fcn.10001b90
push eax
push edi
lea edx, [ebp - 0x490]
mov ecx, esi
call fcn.10001b94
mov esi, dword [ebp - 0xc9c]
mov ebx, eax
push ebx
push 0x1008329c
push esi
call fcn.1000c74f
add esp, 0xc
push dword [ebp - 0xc94]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, esi
lea esp, [ebp - 0xcb4]
call fcn.1005ffea
ret