Function at 0x42f902
Capabilities:
Copy file
Persist via run registry key

Disassembly:
push ebp
sub esp, 0x60
mov eax, 0x6a7d9e
call fcn.00664608
sub esp, 0x440
push ebx
push esi
mov esi, dword [ebp + 0x70]
xor ebx, ebx
push edi
push 8
pop edi
cmp word [esi], bx
je 0x42f9cf
xor eax, eax
mov dword [ebp + 0x4c], ebx
push 0x6ce944
lea ecx, [ebp + 0x4c]
mov dword [ebp + 0x5c], ebx
mov dword [ebp + 0x60], 7
mov word [ebp + 0x4c], ax
call fcn.00427ba3
push 1
lea eax, [ebp + 0x4c]
mov dword [ebp - 4], ebx
push eax
sub esp, 0x18
mov ecx, esp
push esi
call fcn.004294b0
lea eax, [ebp - 0x24]
push eax
call fcn.004516a9
mov ecx, eax
cmp dword [ecx + 0x14], edi
jb 0x42f970
mov ecx, dword [ecx]
lea edx, [ebp - 0x244]
sub edx, ecx
movzx eax, word [ecx]
mov word [edx + ecx], ax
lea ecx, [ecx + 2]
test ax, ax
jne 0x42f978
lea ecx, [ebp - 0x24]
call fcn.00427afc
or dword [ebp - 4], 0xffffffff
mov eax, dword [ebp + 0x60]
cmp eax, edi
jb 0x42f9e2
mov ecx, dword [ebp + 0x4c]
lea eax, [eax*2 + 2]
mov dword [ebp + 0x70], eax
mov dword [ebp + 0x30], ecx
cmp eax, 0x1000
jb 0x42f9c4
lea eax, [ebp + 0x70]
push eax
lea eax, [ebp + 0x30]
push eax
call fcn.004279ae
mov eax, dword [ebp + 0x70]
mov ecx, dword [ebp + 0x30]
push eax
push ecx
call fcn.006643a9
pop ecx
pop ecx
jmp 0x42f9e2
push 0x104
lea eax, [ebp - 0x244]
push eax
push ebx
call dword [sym.imp.KERNEL32.DLL_GetModuleFileNameW]
mov esi, dword [ebp + 0x74]
test esi, 0x800
je 0x42fba5
mov ecx, ebx
movzx eax, word [ebp + ecx - 0x244]
lea ecx, [ecx + 2]
mov word [ebp + ecx - 0x44e], ax
test ax, ax
jne 0x42f9f3
lea eax, [ebp - 0x44c]
push eax
call fcn.004517b0
xor ecx, ecx
mov dword [ebp + 0x4c], ebx
push 0x6cf21c
mov dword [ebp + 0x5c], ebx
mov word [eax], cx
xor eax, eax
lea ecx, [ebp + 0x4c]
mov dword [ebp + 0x60], 7
mov word [ebp + 0x4c], ax
call fcn.00427ba3
xor eax, eax
inc eax
push eax
mov dword [ebp - 4], eax
lea eax, [ebp + 0x4c]
push eax
sub esp, 0x18
lea eax, [ebp - 0x44c]
mov ecx, esp
push eax
mov dword [ecx], ebx
mov dword [ecx + 0x10], ebx
mov dword [ecx + 0x14], 7
call fcn.00427ba3
lea eax, [ebp - 0x24]
push eax
call fcn.004516a9
mov eax, dword [ebp + 0x60]
mov byte [ebp - 4], 3
cmp eax, edi
jb 0x42faab
mov ecx, dword [ebp + 0x4c]
lea eax, [eax*2 + 2]
mov dword [ebp + 0x70], eax
mov dword [ebp + 0x74], ecx
cmp eax, 0x1000
jb 0x42faa2
lea eax, [ebp + 0x70]
push eax
lea eax, [ebp + 0x74]
push eax
call fcn.004279ae
mov eax, dword [ebp + 0x70]
mov ecx, dword [ebp + 0x74]
push eax
push ecx
call fcn.006643a9
pop ecx
pop ecx
xor eax, eax
mov dword [ebp + 0x5c], ebx
mov word [ebp + 0x4c], ax
lea eax, [ebp - 0x3c]
push 0x6cf21c
push eax
mov dword [ebp + 0x60], 7
call fcn.0046665e
lea eax, [ebp - 0x3c]
mov byte [ebp - 4], 4
cmp dword [ebp - 0x28], edi
jb 0x42fad8
mov eax, dword [ebp - 0x3c]
push eax
call fcn.0045270f
test al, al
jne 0x42fb72
lea eax, [ebp - 0x24]
cmp dword [ebp - 0x10], edi
jb 0x42faf1
mov eax, dword [ebp - 0x24]
push eax
call fcn.0045270f
test al, al
jne 0x42fb72
xor eax, eax
mov dword [ebp + 0x4c], ebx
mov word [ebp + 0x4c], ax
lea ecx, [ebp + 0x4c]
lea eax, [ebp - 0x44c]
mov dword [ebp + 0x5c], ebx
push eax
mov dword [ebp + 0x60], 7
call fcn.00427ba3
lea eax, [ebp + 0x4c]
mov byte [ebp - 4], 5
push eax
mov ecx, 0x7b5e48
call fcn.00467772
mov eax, dword [ebp + 0x60]
mov byte [ebp - 4], 4
cmp eax, edi
jb 0x42fb6d
mov ecx, dword [ebp + 0x4c]
lea eax, [eax*2 + 2]
mov dword [ebp + 0x70], eax
mov dword [ebp + 0x74], ecx
cmp eax, 0x1000
jb 0x42fb64
lea eax, [ebp + 0x70]
push eax
lea eax, [ebp + 0x74]
push eax
call fcn.004279ae
mov eax, dword [ebp + 0x70]
mov ecx, dword [ebp + 0x74]
push eax
push ecx
call fcn.006643a9
pop ecx
pop ecx
call fcn.00468768
lea eax, [ebp - 0x24]
cmp dword [ebp - 0x10], edi
jb 0x42fb7d
mov eax, dword [ebp - 0x24]
lea ecx, [ebp - 0x3c]
cmp dword [ebp - 0x28], edi
jb 0x42fb88
mov ecx, dword [ebp - 0x3c]
push ebx
push eax
push ecx
call dword [sym.imp.KERNEL32.DLL_CopyFileW]
lea ecx, [ebp - 0x3c]
call fcn.00427afc
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x24]
call fcn.00427afc
cmp byte [0x7ba6a6], 0
jne 0x42fe13
push esi
lea eax, [ebp - 0x244]
push eax
call fcn.00430a51
push esi
lea eax, [ebp - 0x244]
push eax
call fcn.004308da
test esi, 0x400
je 0x42fdb5
xor eax, eax
mov dword [ebp], ebx
push str._MINIMIZED
lea ecx, [ebp]
mov dword [ebp + 0x10], ebx
mov dword [ebp + 0x14], 7
mov word [ebp], ax
call fcn.00427ba3
xor eax, eax
mov dword [ebp + 0x34], ebx
mov word [ebp + 0x34], ax
lea ecx, [ebp + 0x34]
lea eax, [ebp - 0x244]
mov dword [ebp - 4], 6
push eax
mov dword [ebp + 0x44], ebx
mov dword [ebp + 0x48], 7
call fcn.00427ba3
cmp dword [ebp + 0x44], 0
je 0x42fd1d
xor eax, eax
mov dword [ebp + 0x18], ebx
mov dword [ebp + 0x28], ebx
mov dword [ebp + 0x2c], 7
mov word [ebp + 0x18], ax
mov byte [ebp - 4], 8
cmp dword [ebp + 0x10], eax
je 0x42fc74
cmp dword [ebp + 0x14], 8
lea ecx, [ebp]
jb 0x42fc53
mov ecx, dword [ebp]
cmp dword [ebp + 0x48], 8
lea eax, [ebp + 0x34]
jb 0x42fc5f
mov eax, dword [ebp + 0x34]
push ecx
push eax
lea eax, [ebp - 0x24]
push 0x6cf0c8
push eax
call fcn.004577f2
add esp, 0x10
jmp 0x42fc92
cmp dword [ebp + 0x48], 8
lea eax, [ebp + 0x34]
jb 0x42fc80
mov eax, dword [ebp + 0x34]
push eax
lea eax, [ebp - 0x24]
push 0x6ce074
push eax
call fcn.004577f2
add esp, 0xc
lea ecx, [ebp + 0x18]
cmp ecx, eax
je 0x42fca5
mov byte [ebp + 0x70], bl
push dword [ebp + 0x70]
push eax
call fcn.00427ad3
lea ecx, [ebp - 0x24]
call fcn.00427afc
cmp dword [ebp + 0x28], 0
push 8
pop edi
je 0x42fcc3
lea eax, [ebp + 0x18]
cmp dword [ebp + 0x2c], edi
jb 0x42fcce
mov eax, dword [ebp + 0x18]
jmp 0x42fcce
lea eax, [ebp + 0x34]
cmp dword [ebp + 0x48], edi
jb 0x42fcce
mov eax, dword [ebp + 0x34]
push eax
push 0x6d2890
push str.SoftwareMicrosoftWindowsCurrentVersionRun
push reloc.WS2_32.dll_accept
call fcn.0047bfe7
mov eax, dword [ebp + 0x2c]
cmp eax, edi
jb 0x42fd1d
mov ecx, dword [ebp + 0x18]
lea eax, [eax*2 + 2]
mov dword [ebp + 0x70], eax
mov dword [ebp + 0x74], ecx
cmp eax, 0x1000
jb 0x42fd14
lea eax, [ebp + 0x70]
push eax
lea eax, [ebp + 0x74]
push eax
call fcn.004279ae
mov eax, dword [ebp + 0x70]
mov ecx, dword [ebp + 0x74]
push eax
push ecx
call fcn.006643a9
pop ecx
pop ecx
mov eax, dword [ebp + 0x48]
cmp eax, edi
jb 0x42fd57
mov ecx, dword [ebp + 0x34]
lea eax, [eax*2 + 2]
mov dword [ebp + 0x70], eax
mov dword [ebp + 0x74], ecx
cmp eax, 0x1000
jb 0x42fd4e
lea eax, [ebp + 0x70]
push eax
lea eax, [ebp + 0x74]
push eax
call fcn.004279ae
mov eax, dword [ebp + 0x70]
mov ecx, dword [ebp + 0x74]
push eax
push ecx
call fcn.006643a9
pop ecx
pop ecx
or dword [ebp - 4], 0xffffffff
xor eax, eax
mov word [ebp + 0x34], ax
mov eax, dword [ebp + 0x14]
mov dword [ebp + 0x44], ebx
mov dword [ebp + 0x48], 7
cmp eax, edi
jb 0x42fda5
mov ecx, dword [ebp]
lea eax, [eax*2 + 2]
mov dword [ebp + 0x70], eax
mov dword [ebp + 0x74], ecx
cmp eax, 0x1000
jb 0x42fd9c
lea eax, [ebp + 0x70]
push eax
lea eax, [ebp + 0x74]
push eax
call fcn.004279ae
mov eax, dword [ebp + 0x70]
mov ecx, dword [ebp + 0x74]
push eax
push ecx
call fcn.006643a9
pop ecx
pop ecx
xor eax, eax
mov dword [ebp + 0x10], ebx
mov dword [ebp + 0x14], 7
mov word [ebp], ax
test esi, 0x2000
je 0x42fde2
push ebx
lea eax, [ebp - 0x244]
push eax
call fcn.0046f2a6
test eax, eax
jns 0x42fde2
lea eax, [ebp - 0x244]
push eax
push str.INSTALLDEBUG:_Unable_to_create_firewall_rules_for_path___s__n
call fcn.00427b28
add esp, 8
test esi, 0x200
je 0x42fdef
call fcn.00430a91
mov ecx, dword [ebp + 0x6c]
push str.SoftwareBitTorrentuTorrent
push reloc.WS2_32.dll_accept
call fcn.0047b821
mov ecx, dword [ebp + 0x6c]
push 0xb5d8
push str.Revision
call fcn.0047c07f
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
add ebp, 0x64
leave
ret 0xc