Function at 0x100057d6
Capabilities:
Set registry value

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x6bc
mov eax, dword [0x10014010]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, dword [ebp + 0xc]
xor ebx, ebx
push 0x100020dc
mov dword [ebp - 0x6b4], ebx
call fcn.10006383
pop ecx
call fcn.10005e51
test eax, eax
jne 0x10005831
push 0x100017a4
push ebx
push ebx
push 0x100020c0
push 0x536
push 0x10001280
call fcn.100064d5
add esp, 0x18
xor eax, eax
jmp 0x10005d82
lea eax, [ebp - 0x6b0]
push eax
mov dword [ebp - 0x6b0], 0x94
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
test eax, eax
jne 0x10005865
push ebx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x100020b0
push 0x100020c0
push 0x53f
jmp 0x1000581d
cmp dword [ebp - 0x6a0], 2
je 0x10005894
push dword [ebp - 0x6a0]
push 0x1000208c
push ebx
push ebx
push 0x100020c0
push 0x54d
push 0x10001280
call fcn.100064d5
add esp, 0x1c
jmp 0x1000582a
cmp dword [ebp - 0x6ac], 4
jae 0x100058b6
push dword [ebp - 0x6ac]
push 0x10002068
push ebx
push ebx
push 0x100020c0
push 0x553
jmp 0x10005885
cmp esi, ebx
jne 0x100058d0
push 0x10001f20
push ebx
push ebx
push 0x100020c0
push 0x55d
jmp 0x1000581d
push esi
call fcn.1000488a
test eax, eax
je 0x1000582a
push edi
mov edi, 0x104
push edi
lea eax, [ebp - 0x61c]
push eax
push 0x7d0
push dword [0x10015064]
call fcn.100056d4
test eax, eax
jne 0x10005913
push 0x10002050
push ebx
push ebx
push 0x100020c0
push 0x56d
jmp 0x1000595e
lea eax, [ebp - 0x61c]
push edi
push eax
call fcn.10006bf9
mov dword [ebp - 0x6b8], eax
mov eax, dword [esi + 8]
pop ecx
pop ecx
cmp eax, ebx
jne 0x10005933
xor eax, eax
jmp 0x1000593c
push edi
push eax
call fcn.10006bf9
pop ecx
pop ecx
add eax, dword [ebp - 0x6b8]
lea eax, [eax + eax - 4]
cmp eax, 0x208
jbe 0x10005972
push 0x10002030
push ebx
push ebx
push 0x100020c0
push 0x572
push 0x10001280
call fcn.100064d5
add esp, 0x18
xor eax, eax
jmp 0x10005d81
push dword [esi + 8]
lea eax, [ebp - 0x61c]
push eax
lea eax, [ebp - 0x20c]
push edi
push eax
call fcn.10004ab2
add esp, 0x10
lea eax, [ebp - 0x6bc]
push eax
lea eax, [ebp - 0x6b4]
push eax
push ebx
push 2
push ebx
push ebx
push ebx
lea eax, [ebp - 0x20c]
push eax
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
cmp eax, ebx
je 0x100059cc
push ebx
push eax
push 0x1000201c
push 0x100020c0
push 0x583
jmp 0x10005cf4
push edi
lea eax, [ebp - 0x414]
push eax
push dword [esi + 0xc]
call dword [sym.imp.ole32.dll_StringFromGUID2]
test eax, eax
jne 0x100059f7
push ebx
push ebx
push 0x10001720
push 0x100020c0
push 0x58d
jmp 0x10005cf4
push edi
lea eax, [ebp - 0x20c]
push eax
push 0x7d1
push dword [0x10015064]
call fcn.100056d4
test eax, eax
jne 0x10005a29
push 0x10002050
push ebx
push ebx
push 0x100020c0
push 0x593
jmp 0x10005cf4
lea eax, [ebp - 0x414]
push edi
push eax
call fcn.10006bf9
pop ecx
pop ecx
lea eax, [eax + eax + 2]
push eax
lea eax, [ebp - 0x414]
push eax
push 1
push ebx
lea eax, [ebp - 0x20c]
push eax
push dword [ebp - 0x6b4]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
cmp eax, ebx
je 0x10005a74
push ebx
push eax
push 0x10002008
push 0x100020c0
push 0x5a0
jmp 0x10005cf4
push edi
lea eax, [ebp - 0x20c]
push eax
push 0x7d2
push dword [0x10015064]
call fcn.100056d4
test eax, eax
jne 0x10005aa6
push 0x10002050
push ebx
push ebx
push 0x100020c0
push 0x5a9
jmp 0x10005cf4
mov eax, dword [esi + 0x10]
cmp eax, ebx
jne 0x10005ab1
xor eax, eax
jmp 0x10005aba
push edi
push eax
call fcn.10006bf9
pop ecx
pop ecx
lea eax, [eax + eax + 2]
push eax
push dword [esi + 0x10]
lea eax, [ebp - 0x20c]
push 1
push ebx
push eax
push dword [ebp - 0x6b4]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
cmp eax, ebx
je 0x10005af2
push ebx
push eax
push 0x10002008
push 0x100020c0
push 0x5b6
jmp 0x10005cf4
push edi
lea eax, [ebp - 0x20c]
push eax
push 0x7d3
push dword [0x10015064]
call fcn.100056d4
test eax, eax
jne 0x10005b24
push 0x10001ff4
push ebx
push ebx
push 0x100020c0
push 0x5bf
jmp 0x10005cf4
mov eax, dword [esi + 0x14]
cmp eax, ebx
jne 0x10005b2f
xor eax, eax
jmp 0x10005b38
push edi
push eax
call fcn.10006bf9
pop ecx
pop ecx
lea eax, [eax + eax + 2]
push eax
push dword [esi + 0x14]
lea eax, [ebp - 0x20c]
push 1
push ebx
push eax
push dword [ebp - 0x6b4]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
cmp eax, ebx
je 0x10005b70
push ebx
push eax
push 0x10002008
push 0x100020c0
push 0x5cc
jmp 0x10005cf4
push edi
lea eax, [ebp - 0x20c]
push eax
push 0x7d5
push dword [0x10015064]
call fcn.100056d4
test eax, eax
jne 0x10005ba2
push 0x10002050
push ebx
push ebx
push 0x100020c0
push 0x5d5
jmp 0x10005cf4
mov eax, dword [esi + 0x18]
cmp eax, ebx
jne 0x10005bad
xor eax, eax
jmp 0x10005bb6
push edi
push eax
call fcn.10006bf9
pop ecx
pop ecx
lea eax, [eax + eax + 2]
push eax
push dword [esi + 0x18]
lea eax, [ebp - 0x20c]
push 1
push ebx
push eax
push dword [ebp - 0x6b4]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
cmp eax, ebx
je 0x10005bee
push ebx
push eax
push 0x10002008
push 0x100020c0
push 0x5e2
jmp 0x10005cf4
push edi
lea eax, [ebp - 0x20c]
push eax
push 0x7d4
push dword [0x10015064]
call fcn.100056d4
test eax, eax
jne 0x10005c20
push 0x10002050
push ebx
push ebx
push 0x100020c0
push 0x5eb
jmp 0x10005cf4
mov eax, dword [esi + 0x1c]
cmp eax, ebx
jne 0x10005c2b
xor eax, eax
jmp 0x10005c34
push edi
push eax
call fcn.10006bf9
pop ecx
pop ecx
lea eax, [eax + eax + 2]
push eax
push dword [esi + 0x1c]
lea eax, [ebp - 0x20c]
push 1
push ebx
push eax
push dword [ebp - 0x6b4]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
cmp eax, ebx
je 0x10005c6c
push ebx
push eax
push 0x10002008
push 0x100020c0
push 0x5f8
jmp 0x10005cf4
cmp dword [esi], 4
jne 0x10005d45
cmp dword [esi + 0x20], ebx
je 0x10005d45
push edi
lea eax, [ebp - 0x20c]
push eax
push 0x7d6
push dword [0x10015064]
call fcn.100056d4
test eax, eax
jne 0x10005cad
push 0x10002050
push ebx
push ebx
push 0x100020c0
push 0x604
jmp 0x10005cf4
mov eax, dword [esi + 0x20]
cmp eax, ebx
jne 0x10005cb8
xor eax, eax
jmp 0x10005cc1
push edi
push eax
call fcn.10006bf9
pop ecx
pop ecx
lea eax, [eax + eax + 2]
push eax
push dword [esi + 0x20]
lea eax, [ebp - 0x20c]
push 1
push ebx
push eax
push dword [ebp - 0x6b4]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
cmp eax, ebx
je 0x10005d45
push ebx
push eax
push 0x10002008
push 0x100020c0
push 0x611
push 0x10001280
call fcn.100064d5
add esp, 0x18
cmp dword [ebp - 0x6b4], ebx
je 0x10005d37
push dword [ebp - 0x6b4]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp eax, ebx
je 0x10005d37
push ebx
push eax
push 0x100012f8
push 0x100020c0
push 0x621
push 0x10001280
call fcn.100064d5
add esp, 0x18
push 0x10001fd0
call fcn.10006383
xor eax, eax
jmp 0x10005d80
push dword [ebp - 0x6b4]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp eax, ebx
je 0x10005d73
push ebx
push eax
push 0x100012f8
push 0x100020c0
push 0x617
push 0x10001280
call fcn.100064d5
add esp, 0x18
push 0x10001fa8
call fcn.10006383
xor eax, eax
inc eax
pop ecx
pop edi
mov ecx, dword [ebp - 4]
pop esi
xor ecx, ebp
pop ebx
call fcn.10006df2
leave
ret 8