Function at 0x4b6ae0
Capabilities:
Copy file
Create process on windows
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x58fc83
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x4e4
mov eax, dword [ebp + 0x14]
push esi
push edi
mov edi, ecx
lea ecx, [ebp - 0x1c]
push ecx
mov dword [eax], 0
call dword [sym.imp.USER32.dll_GetCursorPos]
mov eax, dword [edi + 0x364]
mov esi, dword [sym.imp.USER32.dll_GetWindowRect]
lea edx, [ebp - 0x84]
push edx
push eax
call esi
mov edx, dword [edi + 0x374]
lea ecx, [ebp - 0x94]
push ecx
push edx
call esi
mov ecx, dword [edi + 0x368]
lea eax, [ebp - 0x64]
push eax
push ecx
call esi
mov eax, dword [edi + 0x370]
lea edx, [ebp - 0xa4]
push edx
push eax
call esi
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x1c]
mov esi, dword [sym.imp.USER32.dll_PtInRect]
push ecx
push edx
lea eax, [ebp - 0x84]
push eax
call esi
test eax, eax
jne 0x4b6fd5
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x1c]
push ecx
push edx
lea eax, [ebp - 0x64]
push eax
call esi
test eax, eax
jne 0x4b6fd5
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x1c]
push ecx
push edx
lea eax, [ebp - 0xa4]
push eax
call esi
test eax, eax
jne 0x4b6fd5
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x1c]
push ecx
push edx
lea eax, [ebp - 0x94]
push eax
call esi
test eax, eax
jne 0x4b6fd5
mov ecx, dword [edi + 4]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push ebx
push 0
lea eax, [edi + 4]
push 0
push 0x1042
push ecx
mov dword [ebp - 0x14], eax
call esi
mov ebx, eax
cmp ebx, 0xffffffff
je 0x4b6eb0
cmp dword [0x5f7bf0], 0
jne 0x4b6c10
push 0x348
mov ecx, edi
call fcn.004b29c0
pop ebx
pop edi
xor eax, eax
pop esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x10
mov eax, dword [edi + 0x348]
cmp ebx, eax
ja 0x4b6fbc
test eax, eax
je 0x4b6fbc
push 0x30
lea edx, [ebp - 0x50]
push 0
push edx
call fcn.00555020
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx]
add esp, 0xc
lea eax, [ebp - 0x54]
push eax
push 0
push 0x104b
push edx
mov dword [ebp - 0x54], 4
mov dword [ebp - 0x50], ebx
call esi
lea eax, [ebp - 0x20]
push eax
call fcn.0050a4d0
mov edx, dword [0x5f5774]
mov eax, dword [edx + 0xc]
add esp, 4
mov ecx, 0x5f5774
call eax
add eax, 0x10
mov dword [ebp + 0x14], eax
mov dword [ebp - 4], 1
push 0x104
push 0x104
lea ecx, [ebp + 0x14]
call fcn.00405c40
mov ecx, dword [ebp - 0x20]
push eax
push str.LogsDir
push ecx
call fcn.0050a330
add esp, 0x10
test eax, eax
jne 0x4b6d38
push 0x104
lea ecx, [ebp + 0x14]
call fcn.00405c40
push eax
push 1
push 0
push 0x1a
push 0
call dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
jns 0x4b6ce4
push str.SHGetFolderPathW__0__0x001a__0__SHGFP_TYPE_DEFAULT__strSysDir.GetBuffer__260__
push eax
lea ecx, [ebp - 0x74]
call fcn.00434a80
push 0x5cc0a0
lea edx, [ebp - 0x74]
push edx
call fcn.00554cbc
mov edx, dword [ebp + 0x14]
test edx, edx
jne 0x4b6cef
xor eax, eax
jmp 0x4b6d05
mov eax, edx
lea esi, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b6cf4
sub eax, esi
sar eax, 1
js 0x4b6d2e
cmp eax, dword [edx - 8]
jg 0x4b6d2e
mov dword [edx - 0xc], eax
mov edx, dword [ebp + 0x14]
xor ecx, ecx
push 0x5a429c
mov word [edx + eax*2], cx
lea eax, [ebp + 0x14]
push str._sData_
push eax
call fcn.0040a750
add esp, 0xc
jmp 0x4b6d7f
push 0x80070057
call fcn.00401150
mov edx, dword [ebp + 0x14]
test edx, edx
jne 0x4b6d43
xor eax, eax
jmp 0x4b6d61
mov eax, edx
lea esi, [eax + 2]
jmp 0x4b6d50
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b6d50
sub eax, esi
sar eax, 1
js 0x4b6d2e
cmp eax, dword [edx - 8]
jg 0x4b6d2e
mov dword [edx - 0xc], eax
mov edx, dword [ebp + 0x14]
xor ecx, ecx
mov word [edx + eax*2], cx
push 0x59e4c8
lea ecx, [ebp + 0x14]
call fcn.00407ed0
mov eax, dword [ebp - 0x20]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [ebp - 0x34]
push ecx
lea ecx, [edi + 0x344]
call fcn.004b2ef0
cmp dword [eax + 0x28], 0
je 0x4b6ec8
mov edx, dword [ebp - 0x34]
push edx
lea ecx, [edi + 0x344]
call fcn.004b2ef0
mov eax, dword [eax + 0x2c]
push eax
mov ecx, 0x5f7888
call fcn.004b2f20
mov eax, dword [eax + 0x18]
sub eax, 0x10
push eax
call fcn.004021d0
add eax, 0x10
add esp, 4
mov dword [ebp - 0x14], eax
mov bl, 3
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x4f0]
push ecx
push 0x200
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
cmp eax, 0x200
ja 0x4b6e95
test eax, eax
je 0x4b6e95
lea edx, [ebp - 0x4f0]
push edx
lea ecx, [ebp - 0x10]
call fcn.0040bfb0
mov byte [ebp - 4], 4
mov eax, dword [ebp - 0x34]
push eax
lea ecx, [edi + 0x344]
call fcn.004b2ef0
mov ecx, dword [eax + 0x2c]
push ecx
mov ecx, 0x5f7888
call fcn.004b2f20
mov eax, dword [eax + 0x1c]
mov ecx, dword [eax - 0xc]
push ecx
push eax
lea ecx, [ebp - 0x10]
call fcn.00406040
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 0
push edx
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileW]
push 7
push 0
push 0
lea ecx, [ebp - 0x10]
call fcn.00404db0
push eax
push 0x59bf70
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
lea ecx, [ebp - 0x10]
call fcn.00404db0
push eax
lea ecx, [edi + 0x354]
call fcn.00434440
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x10]
call fcn.00404d60
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x14]
jmp 0x4b6fa8
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x14]
call fcn.00404d60
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0x14]
call fcn.00404d60
pop ebx
pop edi
mov eax, 1
pop esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x10
push 0x59c2bc
lea ecx, [ebp - 0x10]
call fcn.0040bfb0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x10]
push ecx
mov ecx, dword [ebp - 0x14]
push 5
push ebx
mov dword [edi + 0x2e0], 5
call fcn.00432c50
lea edx, [ebp - 0x10]
push 0x59d4a4
push edx
call fcn.00426700
add esp, 8
test al, al
je 0x4b6f10
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x10]
jmp 0x4b6e9c
push 7
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp - 0x10]
call fcn.0041e300
mov byte [ebp - 4], 6
mov eax, dword [eax]
push str.http:__
push eax
call fcn.005571bb
add esp, 8
test eax, eax
sete bl
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x14]
call fcn.00404d60
test bl, bl
je 0x4b6f60
mov ecx, dword [ebp - 0x10]
push 5
push 0
push 0
push ecx
push 0x59bf70
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
jmp 0x4b6fa1
lea ecx, [ebp - 0xf0]
call fcn.00452a30
mov byte [ebp - 4], 7
lea edx, [ebp - 0x10]
push edx
lea ecx, [ebp - 0xd0]
call fcn.00407d40
push 0
call dword [sym.imp.USER32.dll_GetActiveWindow]
push eax
lea ecx, [ebp - 0xf0]
call fcn.00432b90
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xf0]
call fcn.00451650
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x10]
call fcn.00404d60
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0x14]
call fcn.00404d60
call dword [sym.imp.KERNEL32.dll_GetLastError]
pop ebx
pop edi
pop esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x10
mov ecx, dword [ebp - 0xc]
pop edi
xor eax, eax
pop esi
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x10