Function at 0x549af0
Capabilities:
Set registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5af610
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
test eax, eax
mov dword [ebp - 0x10], esp
mov esi, ecx
mov dword [ebp - 4], 0
je 0x549e27
mov ecx, dword [esi + 0x3a0]
test ecx, ecx
jne 0x549b3d
push eax
mov ecx, esi
call fcn.0054cc00
test al, al
je 0x549e27
mov edx, dword [esi + 0x100]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x549b75
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
mov ebx, dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push ecx
push edx
push 1
push eax
mov eax, dword [esi + 0x3a0]
push str.FRCType
push eax
call ebx
jmp 0x549b7b
mov ebx, dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov edx, dword [esi + 0x104]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x549bab
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
push ecx
mov ecx, dword [esi + 0x3a0]
push edx
push 1
push eax
push str.owWPage
push ecx
call ebx
mov edx, dword [esi + 0x108]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x549bdb
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
push ecx
push edx
mov edx, dword [esi + 0x3a0]
push 1
push eax
push str.owWPCookies
push edx
call ebx
mov edx, dword [esi + 0x10c]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x549c0b
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
push ecx
push edx
push 1
push eax
mov eax, dword [esi + 0x3a0]
push str.owWPUser
push eax
call ebx
mov edx, dword [esi + 0x110]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x549c34
mov ecx, dword [esi + 0x3a0]
push edx
push str.owWPEncPwd
push ecx
call fcn.0053f990
add esp, 0xc
mov edx, dword [esi + 0xc8]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x549c64
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
push ecx
push edx
mov edx, dword [esi + 0x3a0]
push 1
push eax
push str.Url0
push edx
call ebx
mov edx, dword [esi + 0x130]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x549c94
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
push ecx
push edx
push 1
push eax
mov eax, dword [esi + 0x3a0]
push str.U0_PD
push eax
call ebx
mov edx, dword [esi + 0x134]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x549cc4
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
push ecx
mov ecx, dword [esi + 0x3a0]
push edx
push 1
push eax
push str.U0_c
push ecx
call ebx
mov edx, dword [esi + 0x138]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x549cf4
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
push ecx
push edx
mov edx, dword [esi + 0x3a0]
push 1
push eax
push str.U0_u
push edx
call ebx
mov edx, dword [esi + 0x13c]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x549d1d
mov eax, dword [esi + 0x3a0]
push edx
push str.U0_EncP
push eax
call fcn.0053f990
add esp, 0xc
mov edx, dword [esi + 0x140]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x549d4d
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
push ecx
mov ecx, dword [esi + 0x3a0]
push edx
push 1
push eax
push str.U0_PDMT
push ecx
call ebx
mov edx, dword [esi + 0x118]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x549d7d
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
push ecx
push edx
mov edx, dword [esi + 0x3a0]
push 1
push eax
push str.FR_FNCD
push edx
call ebx
mov ecx, dword [esi + 0x124]
lea eax, [esi + 0x120]
test ecx, ecx
jl 0x549da9
jg 0x549d94
cmp dword [eax], 0
jbe 0x549da9
push 8
push eax
mov eax, dword [esi + 0x3a0]
push 0
push 0
push str.FRFileSize
push eax
call ebx
mov edx, dword [esi + 0x2d0]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x549dd9
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
push ecx
mov ecx, dword [esi + 0x3a0]
push edx
push 1
push eax
push str.AccLngH
push ecx
call ebx
mov al, byte [esi + 0x156]
test al, al
je 0x549e02
mov eax, dword [esi + 0x3a0]
lea edx, [ebp + 8]
push 4
push edx
push 4
push 0
push str.bOUD_Ch
push eax
mov dword [ebp + 8], 1
call ebx
mov ecx, dword [esi + 0x128]
lea eax, [esi + 0x128]
test ecx, ecx
jle 0x549e27
mov ecx, dword [esi + 0x3a0]
push 4
push eax
push 0
push 0
push str.st_time
push ecx
call ebx
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 4