Function at 0x4150d5
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x48
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x30], 0
push 0x80000301
push 0
push 1
push reloc.WS2_32.dll_connect
push 0
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
test eax, eax
jne 0x415153
mov eax, 0x4a1734
push eax
push 2
mov ebx, 0x134
call fcn.00445ce0
add esp, 0x1c
mov dword [ebp - 0x34], eax
push 0x4a175e
push dword [ebp - 0x34]
call fcn.004017d6
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x415197
push ebx
call fcn.0044401c
add esp, 4
cmp dword [ebp - 0x38], 0
je 0x415235
push reloc.WS2_32.dll_connect
push 0
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
test eax, eax
jne 0x4151b6
mov eax, 0x4a1734
push eax
push 1
mov ebx, 0x130
call fcn.00446410
add esp, 0x10
mov dword [ebp - 0x3c], eax
fild dword [ebp - 0x3c]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fsub qword [0x4a1714]
fstp qword [ebp - 0x44]
fld qword [ebp - 0x44]
call fcn.00401316
push 0x80000301
push 0
push eax
push reloc.WS2_32.dll_connect
push 0
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
test eax, eax
jne 0x415203
mov eax, 0x4a1734
push eax
push 2
mov ebx, 0x138
call fcn.00445b30
add esp, 0x1c
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
push eax
mov ebx, dword [ebp + 0xc]
mov ebx, dword [ebx]
test ebx, ebx
je 0x41522f
push ebx
call fcn.0044401c
add esp, 4
pop eax
mov ebx, dword [ebp + 0xc]
mov dword [ebx], eax
push dword [ebp + 8]
call fcn.00415044
mov dword [ebp + 8], eax
mov dword [ebp - 0x34], esp
lea eax, [ebp - 8]
push eax
push 0xf003f
push 0
mov ebx, dword [ebp + 0xc]
push dword [ebx]
push dword [ebp + 8]
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
nop
nop
nop
nop
cmp dword [ebp - 0x34], esp
je 0x41527f
push 0x109
push 0x4010b8e
push 6
call fcn.00444022
add esp, 0xc
mov dword [ebp - 4], eax
mov dword [ebp - 0xc], 0
cmp dword [ebp - 4], 0
jne 0x41596c
mov dword [ebp - 0x10], 0xff
push 0x80000301
push 0
push 0xff
push 1
mov ebx, 0x184
call fcn.00445ba0
add esp, 0x10
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x4152cf
push ebx
call fcn.0044401c
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x34], esp
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 0x14]
push dword [ebp - 0x18]
push dword [ebp - 8]
call dword [sym.imp.ADVAPI32.dll_RegEnumValueA]
nop
nop
nop
nop
cmp dword [ebp - 0x34], esp
je 0x41531d
push 0x209
push 0x4010b8e
push 6
call fcn.00444022
add esp, 0xc
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x41592f
push 0x80000301
push 0
push 0x100
push 1
mov ebx, 0x1bc
call fcn.00445890
add esp, 0x10
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
push eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x41535f
push ebx
call fcn.0044401c
add esp, 4
pop eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], 0x100
push 0
mov ebx, 0x350
call fcn.00445820
add esp, 4
push 0x80000301
push 0
push dword [ebp - 0x10]
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x415399
mov eax, 0x4a1734
push eax
push 2
mov ebx, 0x134
call fcn.00445ce0
add esp, 0x1c
mov dword [ebp - 0x34], eax
push 0x4a1734
push dword [ebp - 0x34]
call fcn.004017d6
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x4153dd
push ebx
call fcn.0044401c
add esp, 4
cmp dword [ebp - 0x38], 0
je 0x41541e
push 0x4a1d61
push dword [ebp - 0x24]
mov ecx, 2
call fcn.00401bcb
add esp, 8
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
push eax
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x415413
push ebx
call fcn.0044401c
add esp, 4
pop eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], 1
push 0x80000301
push 0
push dword [ebp - 0x10]
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x41543b
mov eax, 0x4a1734
push eax
push 2
mov ebx, 0x134
call fcn.00445ce0
add esp, 0x1c
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x38], esp
lea eax, [ebp - 0x20]
push eax
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x415462
add eax, 8
push eax
lea eax, [ebp - 0x2c]
push eax
push 0
push dword [ebp - 0x34]
push dword [ebp - 8]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
nop
nop
nop
nop
cmp dword [ebp - 0x38], esp
je 0x415498
push 0x3dd
push 0x4010b8e
push 6
call fcn.00444022
add esp, 0xc
mov dword [ebp - 0x3c], eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x4154ab
push ebx
call fcn.0044401c
add esp, 4
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x28], eax
mov eax, 0x4a1734
push eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x4154c7
push ebx
call fcn.0044401c
add esp, 4
pop eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x2c], 1
jne 0x415555
push 0
push 0
push 0
push 0x80000301
push 0
push 0xa
push OleUIBusyA
push 0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x4154fa
mov eax, 0x4a171c
push eax
push 3
mov ebx, 0x19c
call fcn.00447690
add esp, 0x28
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], ecx
mov ecx, dword [ebp - 0x34]
cmp ecx, reloc.WS2_32.dll_connect
je 0x415538
push 0x48e
push 0x4010b8e
push 5
call fcn.00444022
add esp, 0xc
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x41554c
push ebx
call fcn.0044401c
add esp, 4
pop eax
mov dword [ebp - 0x30], eax
jmp 0x4157ea
cmp dword [ebp - 0x2c], 2
jne 0x4155df
push 0
push 0
push 0
push 0x80000301
push 0
push 0xa
push OleUIBusyA
push 0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x415584
mov eax, 0x4a171c
push eax
push 3
mov ebx, 0x19c
call fcn.00447690
add esp, 0x28
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], ecx
mov ecx, dword [ebp - 0x34]
cmp ecx, reloc.WS2_32.dll_connect
je 0x4155c2
push 0x503
push 0x4010b8e
push 5
call fcn.00444022
add esp, 0xc
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x4155d6
push ebx
call fcn.0044401c
add esp, 4
pop eax
mov dword [ebp - 0x30], eax
jmp 0x4157ea
cmp dword [ebp - 0x2c], 3
jne 0x415649
push OleUIBusyA
push 0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x4155fc
mov eax, 0x4a171c
push eax
push 1
mov ebx, 0x9dc
call fcn.00444d40
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x168
call fcn.00445310
add esp, 0x10
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
push eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x415640
push ebx
call fcn.0044401c
add esp, 4
pop eax
mov dword [ebp - 0x30], eax
jmp 0x4157ea
cmp dword [ebp - 0x2c], 4
jne 0x41571d
push 0
push 0
push 0
push 0x80000301
push 0
push 4
push OleUIBusyA
push 0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x415678
mov eax, 0x4a171c
push eax
push 3
mov ebx, 0x19c
call fcn.00447690
add esp, 0x28
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], ecx
mov ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x3c]
cmp ecx, reloc.WS2_32.dll_connect
jne 0x4156b0
test eax, eax
jne 0x4156c1
mov eax, 0x4a1734
jmp 0x4156c1
cmp ecx, 0x80000005
jne 0x4156c1
test eax, eax
jne 0x4156c1
mov eax, 0x4a171c
push ecx
push edx
push eax
push 1
mov ebx, 0x168
call fcn.00445310
add esp, 0x10
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x34]
cmp ecx, reloc.WS2_32.dll_connect
je 0x4156f0
cmp ecx, 0x80000005
jne 0x415700
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x415700
push ebx
call fcn.0044401c
add esp, 4
mov eax, dword [ebp - 0x40]
push eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x415714
push ebx
call fcn.0044401c
add esp, 4
pop eax
mov dword [ebp - 0x30], eax
jmp 0x4157ea
cmp dword [ebp - 0x2c], 7
jne 0x4157d0
mov ebx, 6
call fcn.00402bed
push OleUIBusyA
push 0
push 0x4a1d68
push OleUIBusyA
push 0
push 0x4a1c83
push OleUIBusyA
push 0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x41575c
mov eax, 0x4a171c
push eax
push 5
mov ebx, 0x1b8
call fcn.00447a30
add esp, 0x40
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
push eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x415786
push ebx
call fcn.0044401c
add esp, 4
pop eax
mov dword [ebp - 0x1c], eax
push OleUIBusyA
push 0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x41579d
mov eax, 0x4a171c
push eax
push 1
mov ebx, 0x168
call fcn.00445310
add esp, 0x10
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
push eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x4157c7
push ebx
call fcn.0044401c
add esp, 4
pop eax
mov dword [ebp - 0x30], eax
jmp 0x4157ea
mov eax, 0x4a1d71
push eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x4157e6
push ebx
call fcn.0044401c
add esp, 4
pop eax
mov dword [ebp - 0x30], eax
push 0x80000301
push 0
push dword [ebp - 0x10]
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x415807
mov eax, 0x4a1734
push eax
push 2
mov ebx, 0x134
call fcn.00445ce0
add esp, 0x1c
mov dword [ebp - 0x34], eax
push 0x80000301
push 0
push dword [ebp - 0x2c]
push 1
mov ebx, 0x168
call fcn.00445310
add esp, 0x10
mov dword [ebp - 0x38], eax
push 0x4a1d08
push dword [ebp - 0x30]
push dword [ebp - 0x38]
push 0x4a1a81
push dword [ebp - 0x34]
push dword [ebp - 0x24]
mov ecx, 6
call fcn.00401bcb
add esp, 0x18
mov dword [ebp - 0x3c], eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x415872
push ebx
call fcn.0044401c
add esp, 4
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x415882
push ebx
call fcn.0044401c
add esp, 4
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x415896
push ebx
call fcn.0044401c
add esp, 4
pop eax
mov dword [ebp - 0x24], eax
inc dword [ebp - 0x18]
mov dword [ebp - 0x10], 0xff
push 0x80000301
push 0
push 0xff
push 1
mov ebx, 0x184
call fcn.00445ba0
add esp, 0x10
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x4158d9
push ebx
call fcn.0044401c
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x34], esp
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 0x14]
push dword [ebp - 0x18]
push dword [ebp - 8]
call dword [sym.imp.ADVAPI32.dll_RegEnumValueA]
nop
nop
nop
nop
cmp dword [ebp - 0x34], esp
je 0x415927
push 0x899
push 0x4010b8e
push 6
call fcn.00444022
add esp, 0xc
mov dword [ebp - 4], eax
jmp 0x415320
cmp dword [ebp - 0xc], 0
jne 0x41596c
inc dword [ebp - 0x18]
push dword [ebp - 0x24]
push 0x4a1d7a
mov ecx, 2
call fcn.00401bcb
add esp, 8
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
push eax
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x415968
push ebx
call fcn.0044401c
add esp, 4
pop eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x34], esp
push dword [ebp - 8]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
nop
nop
nop
nop
cmp dword [ebp - 0x34], esp
je 0x415998
push 0x9e4
push 0x4010b8e
push 6
call fcn.00444022
add esp, 0xc
mov eax, dword [ebp - 0x24]
test eax, eax
je 0x4159b4
push eax
mov ebx, eax
call fcn.00401b60
inc eax
push eax
call fcn.0044402e
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x4159b9
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x4159ca
push ebx
call fcn.0044401c
add esp, 4
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x4159da
push ebx
call fcn.0044401c
add esp, 4
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x4159ea
push ebx
call fcn.0044401c
add esp, 4
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x4159fa
push ebx
call fcn.0044401c
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 8