Function at 0x10057398
Capabilities:
Set registry value

Disassembly:
push 0x26c
mov eax, 0x100f104d
call fcn.10082248
mov dword [ebp - 0x278], ecx
mov esi, dword [ebp + 8]
lea eax, [ebp - 0x218]
xor ebx, ebx
push 0x208
push ebx
push eax
mov dword [ebp - 0x264], ebx
mov dword [ebp - 0x268], ebx
mov dword [ebp - 0x274], ebx
mov dword [ebp - 0x270], ebx
mov dword [ebp - 0x26c], ebx
call fcn.100a25c0
add esp, 0xc
mov dword [ebp - 0x238], ebx
xor eax, eax
lea ecx, [ebp - 0x248]
mov word [ebp - 0x248], ax
push 7
pop edi
push 0x100fc528
mov dword [ebp - 0x234], edi
call fcn.10022050
push str.0704e2de_5157_5340_a429_fec62d76ff47
lea ecx, [ebp - 0x248]
mov dword [ebp - 4], ebx
call fcn.1003768b
push 0x100fc57c
lea ecx, [ebp - 0x248]
call fcn.1003768b
cmp dword [ebp - 0x234], 8
lea ecx, [ebp - 0x264]
push ebx
push ecx
push ebx
push 0xf003f
push ebx
push ebx
lea eax, [ebp - 0x248]
cmovae eax, dword [ebp - 0x248]
push ebx
push eax
push esi
mov esi, dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
call esi
test eax, eax
jne 0x100577f8
push str.AntZipAccer
lea ecx, [ebp - 0x260]
mov dword [ebp - 0x250], ebx
mov dword [ebp - 0x24c], edi
mov word [ebp - 0x260], ax
call fcn.10022050
push str._Class
lea ecx, [ebp - 0x260]
mov byte [ebp - 4], 1
call fcn.1003768b
cmp dword [ebp - 0x24c], 8
lea ecx, [ebp - 0x260]
lea edx, [ebp - 0x218]
cmovae ecx, dword [ebp - 0x260]
sub edx, ecx
movzx eax, word [ecx]
mov word [edx + ecx], ax
lea ecx, [ecx + 2]
test ax, ax
jne 0x100574ba
lea ecx, [ebp - 0x218]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x100574d2
mov edi, dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
sub ecx, edx
sar ecx, 1
lea eax, [ecx + ecx]
push eax
lea eax, [ebp - 0x218]
push eax
push 1
push ebx
push 0x100f55e0
push dword [ebp - 0x264]
call edi
cmp dword [ebp - 0x264], 0
je 0x100577ed
push ebx
lea eax, [ebp - 0x268]
push eax
push ebx
push 0xf003f
push ebx
push ebx
push ebx
push str.InprocServer32
push dword [ebp - 0x264]
call esi
test eax, eax
jne 0x1005762e
mov esi, dword [ebp - 0x278]
lea ecx, [ebp - 0x230]
push esi
mov dword [ebp - 0x220], ebx
mov dword [ebp - 0x21c], ebx
call fcn.1003744e
cmp dword [esi + 0x74], 8
lea ecx, [esi + 0x60]
mov byte [ebp - 4], 2
jb 0x10057563
mov ecx, dword [esi + 0x60]
push dword [esi + 0x70]
push ecx
lea ecx, [ebp - 0x230]
call fcn.10006070
cmp dword [ebp - 0x21c], 8
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x218]
cmovae ecx, dword [ebp - 0x230]
sub edx, ecx
movzx eax, word [ecx]
mov word [edx + ecx], ax
lea ecx, [ecx + 2]
test ax, ax
jne 0x1005758e
lea ecx, [ebp - 0x218]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x100575a6
sub ecx, edx
sar ecx, 1
lea eax, [ecx + ecx]
push eax
lea eax, [ebp - 0x218]
push eax
push 1
push ebx
push 0x100f55e0
push dword [ebp - 0x268]
call edi
push 5
pop ecx
mov esi, str.Apartment
lea edi, [ebp - 0x218]
rep movsd dword es:[edi], dword [esi]
lea ecx, [ebp - 0x218]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x100575e9
mov edi, dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
sub ecx, edx
sar ecx, 1
lea eax, [ecx + ecx]
push eax
lea eax, [ebp - 0x218]
push eax
push 1
push ebx
push str.ThreadingModel
push dword [ebp - 0x268]
call edi
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 1
call fcn.10001ee0
mov esi, dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
push ebx
lea eax, [ebp - 0x274]
push eax
push ebx
push 0xf003f
push ebx
push ebx
push ebx
push str.Programmable
push dword [ebp - 0x264]
call esi
test eax, eax
jne 0x100577ed
push ebx
lea eax, [ebp - 0x270]
push eax
push ebx
push 0xf003f
push ebx
push ebx
push ebx
push str.TypeLib
push dword [ebp - 0x264]
call esi
test eax, eax
jne 0x1005772e
push 0x100fc528
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x220], ebx
mov dword [ebp - 0x21c], 7
mov word [ebp - 0x230], ax
call fcn.10022050
push str.19b26d91_a25d_5339_8040_07c1e23bb3fc
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 3
call fcn.1003768b
push 0x100fc57c
lea ecx, [ebp - 0x230]
call fcn.1003768b
cmp dword [ebp - 0x21c], 8
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x218]
cmovae ecx, dword [ebp - 0x230]
sub edx, ecx
movzx eax, word [ecx]
mov word [edx + ecx], ax
lea ecx, [ecx + 2]
test ax, ax
jne 0x100576e1
lea ecx, [ebp - 0x218]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x100576f9
sub ecx, edx
sar ecx, 1
lea eax, [ecx + ecx]
push eax
lea eax, [ebp - 0x218]
push eax
push 1
push ebx
push 0x100f55e0
push dword [ebp - 0x270]
call edi
lea ecx, [ebp - 0x230]
call fcn.10001ee0
push ebx
lea eax, [ebp - 0x26c]
push eax
push ebx
push 0xf003f
push ebx
push ebx
push ebx
push str.Version
push dword [ebp - 0x264]
call esi
test eax, eax
jne 0x10057799
mov eax, dword [0x100fc6d0]
lea ecx, [ebp - 0x218]
mov dword [ebp - 0x218], eax
lea edx, [ecx + 2]
mov eax, dword [0x100fc6d4]
mov dword [ebp - 0x214], eax
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x1005776f
sub ecx, edx
sar ecx, 1
lea eax, [ecx + ecx]
push eax
lea eax, [ebp - 0x218]
push eax
push 1
push ebx
push 0x100f55e0
push dword [ebp - 0x26c]
call edi
cmp dword [ebp - 0x26c], 0
mov esi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
je 0x100577b0
push dword [ebp - 0x26c]
call esi
cmp dword [ebp - 0x270], 0
je 0x100577c1
push dword [ebp - 0x270]
call esi
cmp dword [ebp - 0x274], 0
je 0x100577d2
push dword [ebp - 0x274]
call esi
cmp dword [ebp - 0x268], 0
je 0x100577e3
push dword [ebp - 0x268]
call esi
push dword [ebp - 0x264]
call esi
mov bl, 1
lea ecx, [ebp - 0x260]
call fcn.10001ee0
lea ecx, [ebp - 0x248]
call fcn.10001ee0
mov al, bl
call fcn.100821f2
ret 4