Function at 0x475eb0
Capabilities:
Set registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x60483b
mov eax, dword fs:[0]
push eax
sub esp, 0x244
mov eax, dword [0x69cef4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
call fcn.0048b900
test al, al
je 0x475f01
push edi
push ebx
pop ecx
push esi
pop ecx
push edi
push eax
pop edi
push esi
push ebx
pop esi
push ebp
pop edx
push ebp
push ecx
pop eax
push esp
pop esp
pop ebp
push eax
push esi
push eax
pop esi
pop edx
pop edx
push ebp
call fcn.0048bba0
test al, al
je 0x475f1f
pop ebp
push edx
push ebx
push ebp
pop edi
push edi
push esi
push esi
push edx
push eax
pop eax
pop ebp
push esp
pop ebx
pop edx
pop edi
push esp
push ebx
pop esp
push edi
push edi
call fcn.0048b6d0
test al, al
je 0x475f39
push ebp
pop ecx
push edi
push esp
pop ecx
pop ebp
push ebp
push esp
pop ebp
pop ebp
pop edx
push eax
pop eax
pop ebp
push esi
pop esp
pop ecx
xor eax, eax
mov dword [ebp - 0x24c], 0
mov dword [ebp - 0x234], 7
mov dword [ebp - 0x238], 0
mov word [ebp - 0x248], ax
push 0x208
push eax
mov dword [ebp - 4], eax
lea eax, [ebp - 0x218]
push eax
call fcn.005d4520
add esp, 0xc
lea ecx, [ebp - 0x248]
push 0x43
push str.SoftwareMicrosoftWindowsCurrentVersionShell_ExtensionsApproved
call fcn.00407280
cmp dword [ebp - 0x234], 8
lea ecx, [ebp - 0x24c]
push ecx
push 0xf013f
lea eax, [ebp - 0x248]
cmovae eax, dword [ebp - 0x248]
push 0
push eax
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov dword [ebp - 0x250], eax
call fcn.0048bb30
test al, al
je 0x475fe3
pop eax
pop esi
pop edx
pop ebp
pop eax
push ebx
pop ebx
push eax
push ecx
push esp
pop edi
push edi
push edx
pop edx
push eax
push edi
push ebx
push edx
pop edx
push ebp
pop eax
push edx
pop esi
push esi
pop ebp
push ebx
push eax
push esp
cmp dword [ebp - 0x250], 0
jne 0x4760b9
push 0x17
xor eax, eax
mov dword [ebp - 0x21c], 7
push str.GoodZip_Shell_Extension
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x220], 0
mov word [ebp - 0x230], ax
call fcn.00407280
cmp dword [ebp - 0x21c], 8
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x218]
cmovae ecx, dword [ebp - 0x230]
nop dword [eax]
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx], ax
lea edx, [edx + 2]
test ax, ax
jne 0x476040
lea ecx, [ebp - 0x218]
lea edx, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x476060
sub ecx, edx
sar ecx, 1
lea eax, [ecx + ecx]
push eax
lea eax, [ebp - 0x218]
push eax
push 1
push 0
push str.99DBFBB4_9D93_4F50_94F7_74A39CBBEE52
push dword [ebp - 0x24c]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
push dword [ebp - 0x24c]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, dword [ebp - 0x21c]
cmp eax, 8
jb 0x4760b9
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.00407380
call fcn.0048b900
test al, al
je 0x4760dc
push edi
push ebx
pop ecx
push esi
pop ecx
push edi
push eax
pop edi
push esi
push ebx
pop esi
push ebp
pop edx
push ebp
push ecx
pop eax
push esp
pop esp
pop ebp
push eax
push esi
push eax
pop esi
pop edx
pop edx
push ebp
call fcn.0048bba0
test al, al
je 0x4760fa
pop ebp
push edx
push ebx
push ebp
pop edi
push edi
push esi
push esi
push edx
push eax
pop eax
pop ebp
push esp
pop ebx
pop edx
pop edi
push esp
push ebx
pop esp
push edi
push edi
call fcn.0048b6d0
test al, al
je 0x476114
push ebp
pop ecx
push edi
push esp
pop ecx
pop ebp
push ebp
push esp
pop ebp
pop ebp
pop edx
push eax
pop eax
pop ebp
push esi
pop esp
pop ecx
mov eax, dword [ebp - 0x234]
cmp eax, 8
jb 0x476132
inc eax
lea ecx, [ebp - 0x248]
push eax
push dword [ebp - 0x248]
call fcn.00407380
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005ca59c
mov esp, ebp
pop ebp
ret