Function at 0x4cf77b
Capabilities:
Set registry value

Disassembly:
push ebp
sub esp, 0x8c
lea ebp, [esp - 4]
mov eax, dword [0x70b744]
xor eax, ebp
mov dword [ebp + 0x8c], eax
push 0x1d8
mov eax, 0x5d41df
call fcn.005234b0
sub esp, 0x1c
mov edi, ecx
mov ecx, esp
mov dword [ebp - 0x38], esp
push 0x7324ec
mov dword [ebp - 0x3c], edi
call fcn.0041186e
xor ebx, ebx
mov dword [ebp - 4], ebx
or dword [ebp - 4], 0xffffffff
mov ecx, edi
call fcn.004ce6b8
add edi, 4
mov byte [ebp - 0xe], al
mov eax, dword [edi + 4]
mov eax, dword [eax]
push edi
push eax
lea ecx, [ebp - 0x2c]
call fcn.0044024b
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x20], eax
mov eax, dword [edi + 4]
push edi
push eax
jmp 0x4cfdb9
lea ecx, [ebp - 0x24]
call fcn.004cb07f
push eax
lea ecx, [ebp + 0x70]
call fcn.0041186e
xor esi, esi
inc esi
mov dword [ebp - 4], esi
lea ecx, [ebp - 0x24]
call fcn.004cb07f
mov edi, eax
lea ecx, [ebp - 0x24]
add edi, 0x1c
call fcn.004cb07f
cmp byte [eax + 0x20], bl
je 0x4cfd99
push 5
push ebx
lea eax, [ebp - 0x13c]
push eax
lea ecx, [ebp + 0x70]
call fcn.004143f5
mov byte [ebp - 4], 2
push str.User:
mov ecx, eax
call fcn.0040614f
neg eax
sbb al, al
inc al
mov byte [ebp - 0xd], al
mov byte [ebp - 4], 1
push ebx
push esi
lea ecx, [ebp - 0x13c]
call fcn.00410779
cmp byte [ebp - 0xd], bl
lea ecx, [ebp + 0x70]
je 0x4cf8a0
push 0xffffffffffffffff
push 5
lea eax, [ebp - 0xcc]
push eax
mov dword [ebp - 0x1c], reloc.WSOCK32.dll_accept
call fcn.004143f5
mov byte [ebp - 4], 3
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp + 0x70]
call fcn.004106e6
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xcc]
jmp 0x4cf91f
push 8
push ebx
lea eax, [ebp - 0x94]
push eax
call fcn.004143f5
mov byte [ebp - 4], 4
push str.Machine:
mov ecx, eax
call fcn.0040614f
neg eax
sbb al, al
inc al
mov byte [ebp - 0xd], al
mov byte [ebp - 4], 1
push ebx
push esi
lea ecx, [ebp - 0x94]
call fcn.00410779
cmp byte [ebp - 0xd], bl
je 0x4cfd99
xor eax, eax
cmp byte [ebp - 0xe], bl
push 0xffffffffffffffff
setne al
push 8
lea ecx, [ebp + 0x70]
add eax, reloc.WSOCK32.dll_accept
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x104]
push eax
call fcn.004143f5
mov byte [ebp - 4], 5
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp + 0x70]
call fcn.004106e6
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x104]
push ebx
push esi
call fcn.00410779
push 0x7324ec
lea ecx, [ebp + 0x1c]
call fcn.0041186e
mov byte [ebp - 4], 6
push esi
push 0xffffffffffffffff
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp + 0x70]
mov dword [ebp - 0x18], 0x5c
call fcn.00415402
mov esi, eax
cmp esi, 0xffffffff
je 0x4cf9bc
push esi
push ebx
lea eax, [ebp - 0xb0]
push eax
lea ecx, [ebp + 0x70]
call fcn.004143f5
mov byte [ebp - 4], 7
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp + 0x1c]
call fcn.00401f2c
mov byte [ebp - 4], 6
push ebx
push 1
lea ecx, [ebp - 0xb0]
call fcn.00410779
push 0xffffffffffffffff
inc esi
push esi
lea eax, [ebp - 0xe8]
push eax
lea ecx, [ebp + 0x70]
call fcn.004143f5
mov byte [ebp - 4], 8
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp + 0x70]
call fcn.004106e6
mov byte [ebp - 4], 6
push ebx
push 1
lea ecx, [ebp - 0xe8]
call fcn.00410779
cmp dword [ebp + 0x34], 8
mov eax, dword [ebp + 0x20]
jae 0x4cf9c8
lea eax, [ebp + 0x20]
lea ecx, [ebp - 0x78]
push ecx
lea ecx, [ebp - 0x14]
push ecx
push ebx
push 0x20006
push ebx
push ebx
push ebx
push eax
push dword [ebp - 0x1c]
call dword [0x71f5cc]
test eax, eax
jne 0x4cfd38
mov ecx, dword [edi]
cmp ecx, ebx
je 0x4cf9fd
mov eax, dword [ecx]
call dword [eax + 4]
mov esi, 0x710138
jmp 0x4cfa04
mov esi, 0x710138
mov eax, esi
push 0x7101e4
mov ecx, eax
call fcn.0051da20
test al, al
je 0x4cfa34
push edi
call fcn.0042cd07
cmp dword [ebp + 0x88], 8
mov eax, dword [eax]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp + 0x74]
pop ecx
jae 0x4cfa2f
lea eax, [ebp + 0x74]
lea ecx, [ebp - 0x50]
jmp 0x4cfa78
mov ecx, dword [edi]
cmp ecx, ebx
je 0x4cfa41
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x4cfa43
mov eax, esi
push 0x70fa2c
mov ecx, eax
call fcn.0051da20
test al, al
je 0x4cfa8d
push edi
call fcn.004b9218
mov al, byte [eax]
pop ecx
xor ecx, ecx
cmp al, bl
mov eax, dword [ebp + 0x74]
setne cl
cmp dword [ebp + 0x88], 8
mov dword [ebp - 0x38], ecx
jae 0x4cfa75
lea eax, [ebp + 0x74]
lea ecx, [ebp - 0x38]
push 4
push ecx
push 4
push ebx
push eax
push dword [ebp - 0x14]
call dword [0x71f5e8]
jmp 0x4cfd2d
mov ecx, dword [edi]
cmp ecx, ebx
je 0x4cfa9a
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x4cfa9c
mov eax, esi
push 0x70fa38
mov ecx, eax
call fcn.0051da20
test al, al
je 0x4cfb72
lea eax, [ebp + 0x54]
push edi
push eax
call fcn.004b945d
pop ecx
pop ecx
mov byte [ebp - 4], 9
push str.BuddyLoginPWAES
lea ecx, [ebp + 0x70]
call fcn.0040614f
test eax, eax
jne 0x4cfb2d
cmp dword [ebp + 0x6c], 8
mov eax, dword [ebp + 0x68]
lea eax, [eax + eax + 2]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp + 0x58]
jae 0x4cfae7
lea eax, [ebp + 0x58]
push ebx
lea ecx, [ebp - 0x1c]
push ecx
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.004e6474
add esp, 0x10
mov byte [ebp - 4], 0xa
cmp dword [ebp + 0x88], 8
mov eax, dword [ebp + 0x74]
jae 0x4cfb0c
lea eax, [ebp + 0x74]
push dword [ebp - 0x1c]
push dword [ebp - 0x74]
push 3
push ebx
push eax
push dword [ebp - 0x14]
call dword [0x71f5e8]
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x74]
call fcn.00448c99
jmp 0x4cfb5e
cmp dword [ebp + 0x6c], 8
mov ecx, dword [ebp + 0x58]
jae 0x4cfb39
lea ecx, [ebp + 0x58]
cmp dword [ebp + 0x88], 8
mov eax, dword [ebp + 0x74]
jae 0x4cfb48
lea eax, [ebp + 0x74]
mov edx, dword [ebp + 0x68]
lea edx, [edx + edx + 2]
push edx
push ecx
push 1
push ebx
push eax
push dword [ebp - 0x14]
call dword [0x71f5e8]
mov byte [ebp - 4], 6
push ebx
push 1
lea ecx, [ebp + 0x54]
call fcn.00410779
jmp 0x4cfd2d
mov ecx, dword [edi]
cmp ecx, ebx
je 0x4cfb7f
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x4cfb81
mov eax, esi
push 0x70fc70
mov ecx, eax
call fcn.0051da20
test al, al
je 0x4cfd2d
lea eax, [ebp - 0x4c]
push edi
push eax
call fcn.00404947
pop ecx
pop ecx
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x3c]
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.004ceaa5
mov byte [ebp - 4], 0xc
cmp dword [ebp - 0x64], ebx
jle 0x4cfd15
call fcn.004c1998
cmp eax, 6
jl 0x4cfbf3
cmp dword [ebp + 0x88], 8
mov eax, dword [ebp + 0x74]
jae 0x4cfbdb
lea eax, [ebp + 0x74]
push dword [ebp - 0x64]
push dword [ebp - 0x60]
push 7
push ebx
push eax
push dword [ebp - 0x14]
call dword [0x71f5e8]
jmp 0x4cfd15
sub esp, 0x1c
lea eax, [ebp + 0x70]
mov ecx, esp
mov dword [ebp - 0x18], esp
push eax
call fcn.0041186e
mov byte [ebp - 4], 0xd
lea eax, [ebp]
push eax
mov byte [ebp - 4], 0xc
call fcn.004adf6c
add esp, 0x20
mov byte [ebp - 4], 0xe
push ebx
lea ecx, [ebp + 0x38]
mov dword [ebp + 0x50], 0xf
call fcn.0040fe4b
mov byte [ebp - 4], 0xf
lea eax, [ebp - 0x4c]
push eax
push dword [ebp - 0x48]
lea ecx, [ebp - 0x6c]
call fcn.004ae5f2
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x30], eax
jmp 0x4cfcad
lea ecx, [ebp - 0x34]
call fcn.0040eef0
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x18], esp
push eax
call fcn.0041186e
mov byte [ebp - 4], 0x10
lea eax, [ebp - 0x120]
push eax
mov byte [ebp - 4], 0xf
call fcn.004adf6c
add esp, 0x20
mov byte [ebp - 4], 0x11
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp + 0x38]
call fcn.0040f8d7
mov byte [ebp - 4], 0xf
push ebx
push 1
lea ecx, [ebp - 0x120]
call fcn.004108b7
push ebx
lea ecx, [ebp + 0x38]
call fcn.004cea7b
lea ecx, [ebp - 0x34]
call fcn.0040ccd5
lea eax, [ebp - 0x4c]
push eax
push dword [ebp - 0x44]
lea ecx, [ebp - 0x58]
call fcn.004ae5f2
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x34]
call fcn.00411999
test al, al
je 0x4cfc4d
cmp dword [ebp + 0x50], 0x10
mov ecx, dword [ebp + 0x3c]
jae 0x4cfcd8
lea ecx, [ebp + 0x3c]
cmp dword [ebp + 0x18], 0x10
mov eax, dword [ebp + 4]
jae 0x4cfce4
lea eax, [ebp + 4]
mov edx, dword [ebp + 0x4c]
inc edx
push edx
push ecx
push 7
push ebx
push eax
push dword [ebp - 0x14]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov byte [ebp - 4], 0xe
push ebx
push 1
lea ecx, [ebp + 0x38]
call fcn.004108b7
mov byte [ebp - 4], 0xc
push ebx
push 1
lea ecx, [ebp]
call fcn.004108b7
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x64]
call fcn.00401491
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x4c]
call fcn.004021a4
push dword [ebp - 0x14]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x4cfd81
call dword [sym.imp.KERNEL32.dll_GetLastError]
push str.Opening__1_:__2___.Win32SaveProperties.cpp__259_
lea ecx, [ebp - 0x1e4]
mov dword [ebp - 0x18], eax
call fcn.00403e35
mov byte [ebp - 4], 0x12
lea ecx, [ebp + 0x1c]
push ecx
push eax
call fcn.00405a7c
lea ecx, [ebp - 0x18]
push ecx
push eax
call fcn.0041d1e8
push eax
call fcn.004b9650
add esp, 0x14
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x1e4]
call fcn.00401441
mov byte [ebp - 4], 1
push ebx
push 1
lea ecx, [ebp + 0x1c]
call fcn.00410779
or dword [ebp - 4], 0xffffffff
push ebx
push 1
jmp 0x4cfd9f
or dword [ebp - 4], 0xffffffff
push ebx
push esi
lea ecx, [ebp + 0x70]
call fcn.00410779
lea ecx, [ebp - 0x24]
call fcn.00411f0a
mov eax, dword [ebp - 0x3c]
add eax, 4
push eax
push dword [eax + 4]
lea ecx, [ebp - 0x2c]
call fcn.0044024b
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x24]
call fcn.00411999
test al, al
je 0x4cf7f4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x8c]
xor ecx, ebp
call fcn.0051d721
add ebp, 0x90
leave
ret