Function at 0x407907
Capabilities:
Set registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x58
push ebx
push esi
xor ebx, ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov esi, eax
push 0x50
lea eax, [ebp - 0x58]
push ebx
push eax
add esi, 0x40
call fcn.00413780
push 0x50
lea eax, [ebp - 0x58]
push eax
push esi
call fcn.00412b30
add esp, 0x18
test eax, eax
je 0x407950
push 4
push 0x41f814
push esi
call fcn.00412b30
add esp, 0xc
test eax, eax
jne 0x407958
xor eax, eax
inc eax
jmp 0x407b24
push edi
push 0x50
call fcn.00412340
mov edi, eax
movzx eax, byte [esi + 0xf]
push eax
movzx eax, byte [esi + 0xe]
push eax
movzx eax, byte [esi + 0xd]
push eax
movzx eax, byte [esi + 0xc]
push eax
movzx eax, byte [esi + 0xb]
push eax
movzx eax, byte [esi + 0xa]
push eax
movzx eax, byte [esi + 9]
push eax
movzx eax, byte [esi + 8]
push eax
movzx eax, byte [esi + 7]
push eax
movzx eax, byte [esi + 6]
push eax
movzx eax, byte [esi + 5]
push eax
movzx eax, byte [esi + 4]
push eax
movzx eax, byte [esi + 3]
push eax
movzx eax, byte [esi + 2]
push eax
movzx eax, byte [esi + 1]
push eax
movzx eax, byte [esi]
push eax
push str.SoftwareTrymedia_SystemsActiveMARK_Software_
push str._s_02X_02X_02X_02X_02X_02X_02X_02X_02X_02X_02X_02X_02X_02X_02X_02X
push edi
call fcn.0041274d
add esp, 0x50
push ebx
lea eax, [ebp - 4]
push eax
push ebx
push 0xf003f
push ebx
push 0x420081
push ebx
push edi
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExA]
push edi
mov dword [ebp - 8], eax
call fcn.004137e0
cmp dword [ebp - 8], ebx
pop ecx
je 0x4079f8
xor eax, eax
jmp 0x407b23
push 0x10
lea ecx, [ebp - 0x58]
lea eax, [esi + 0x10]
push ecx
push eax
call fcn.00412b30
mov edi, dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
add esp, 0xc
test eax, eax
je 0x407a2f
push 0x10
lea eax, [esi + 0x10]
push eax
push 3
push ebx
push str.onetimepop
push dword [ebp - 4]
call edi
test eax, eax
jne 0x407b18
push 0x10
lea ecx, [ebp - 0x58]
lea eax, [esi + 0x20]
push ecx
push eax
call fcn.00412b30
add esp, 0xc
test eax, eax
je 0x407a60
push 0x10
lea eax, [esi + 0x20]
push eax
push 3
push ebx
push str.tracking
push dword [ebp - 4]
call edi
test eax, eax
jne 0x407b18
push 0x10
lea ecx, [ebp - 0x58]
lea eax, [esi + 0x30]
push ecx
push eax
call fcn.00412b30
add esp, 0xc
test eax, eax
je 0x407a91
push 0x10
lea eax, [esi + 0x30]
push eax
push 3
push ebx
push str.affiliate
push dword [ebp - 4]
call edi
test eax, eax
jne 0x407b18
push 6
lea ecx, [ebp - 0x58]
lea eax, [esi + 0x40]
push ecx
push eax
call fcn.00412b30
add esp, 0xc
test eax, eax
je 0x407abe
push 6
lea eax, [esi + 0x40]
push eax
push 3
push ebx
push str.currency
push dword [ebp - 4]
call edi
test eax, eax
jne 0x407b18
push 5
lea ecx, [ebp - 0x58]
lea eax, [esi + 0x46]
push ecx
push eax
call fcn.00412b30
add esp, 0xc
test eax, eax
je 0x407aeb
push 5
lea eax, [esi + 0x46]
push eax
push 3
push ebx
push str.price
push dword [ebp - 4]
call edi
test eax, eax
jne 0x407b18
push 5
lea eax, [ebp - 0x58]
push eax
add esi, 0x4b
push esi
call fcn.00412b30
add esp, 0xc
test eax, eax
je 0x407b15
push 5
push esi
push 3
push ebx
push str.timestamp
push dword [ebp - 4]
call edi
test eax, eax
jne 0x407b18
xor ebx, ebx
inc ebx
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, ebx
pop edi
pop esi
pop ebx
leave
ret