Function at 0x4093d0
Capabilities:
Copy file

Disassembly:
mov eax, dword [esp + 8]
sub esp, 0x424
push ebx
push ebp
push esi
push edi
push eax
xor esi, esi
call fcn.0040c2a0
add esp, 4
test eax, eax
je 0x4096e1
mov ebp, dword [esp + 0x440]
mov ebx, dword [esp + 0x444]
test ebp, ebp
je 0x40940b
test ebx, ebx
jle 0x40940b
mov byte [ebp], 0
call fcn.0040a140
lea ecx, [esp + 0x24]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea edx, [esp + 0x24]
push 0x5c
push edx
lea esi, [esp + 0x2c]
call fcn.0041b010
add esp, 8
test eax, eax
je 0x409436
lea esi, [eax + 1]
push 0x2e
push esi
call fcn.0041b010
add esp, 8
test eax, eax
je 0x409448
mov byte [eax], 0
push 0x5f
push esi
call fcn.0041b010
mov esi, eax
add esp, 8
test esi, esi
je 0x40946d
lea eax, [esi + 1]
push eax
call fcn.0040a220
add esp, 4
cmp eax, 4
jne 0x40946d
mov byte [esi], 0
mov edi, dword [esp + 0x438]
mov esi, dword [sym.imp.USER32.dll_wsprintfA]
mov byte [esp + 0x12], 0
mov byte [esp + 0x13], 0
lea ecx, [esp + 0x12]
lea edx, [esp + 0x24]
push ecx
push edi
push edx
lea eax, [esp + 0x134]
push str._s__lu_s.exe
push eax
call esi
mov al, byte [esp + 0x26]
add esp, 0x14
test al, al
je 0x4094b1
inc al
mov byte [esp + 0x12], al
jmp 0x4094b6
mov byte [esp + 0x12], 0x61
lea ecx, [esp + 0x128]
push ecx
call fcn.0040c2a0
add esp, 4
test eax, eax
mov al, byte [esp + 0x12]
je 0x4094ee
cmp al, 0x7a
jle 0x409484
push str.no_unique_file
push ebx
push ebp
call fcn.004096f0
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x424
ret
cmp al, 0x7a
jg 0x4094d2
lea edx, [esp + 0x128]
lea eax, [esp + 0x24]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea ecx, [esp + 0x24]
push ecx
push str.New_Trickler_file_will_be__s
call fcn.00406bc0
lea edx, [esp + 0x2c]
push 0
push edx
call fcn.0040c2d0
add esp, 0x10
test eax, eax
je 0x4096c5
mov ecx, dword [esp + 0x43c]
lea eax, [esp + 0x24]
push 0
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_CopyFileA]
test eax, eax
je 0x4096a9
lea edx, [esp + 0x24]
push 1
push edx
call fcn.00419050
add esp, 8
test eax, eax
je 0x40968d
call fcn.0040a710
push eax
lea eax, [esp + 0x28]
push 0x4297e4
push eax
call fcn.00418b80
add esp, 0xc
test eax, eax
je 0x409671
push 0
call fcn.0041ad4b
push eax
lea ecx, [esp + 0x20]
push str._08lx
push ecx
call esi
lea edx, [esp + 0x28]
lea eax, [esp + 0x34]
push edx
push 0x42afc4
push eax
call fcn.00418b80
add esp, 0x1c
test eax, eax
je 0x409655
push str.New_Trickler_successfully_prepared.
call fcn.00406bc0
push 0
push 0
call fcn.0040a260
lea ecx, [esp + 0x30]
push ecx
push 1
call fcn.0040a260
lea edx, [esp + 0x38]
push edx
call fcn.0040a3a0
add esp, 0x18
call fcn.00406750
push eax
call fcn.0040a140
push eax
call fcn.0040a480
lea eax, [esp + 0x1c]
push 0
lea ecx, [esp + 0x30]
push eax
push ecx
mov dword [esp + 0x28], 0
call fcn.0040ce80
add esp, 0x14
test eax, eax
mov eax, 0x429458
jne 0x409619
mov eax, str.FAIL
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x22c]
push edx
push eax
lea eax, [esp + 0x2c]
push eax
push str.LaunchExe__s_:__s__err_d_
push ecx
call esi
lea edx, [esp + 0x240]
push edx
push ebx
push ebp
call fcn.004096f0
add esp, 0x20
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x424
ret
push str.Bind_TID
push ebx
push ebp
call fcn.00409720
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x424
ret
push str.Bind_AIC
push ebx
push ebp
call fcn.00409720
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x424
ret
push str.Unbind_All
push ebx
push ebp
call fcn.00409720
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x424
ret
push str.copy_failed
push ebx
push ebp
call fcn.004096f0
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x424
ret
push str.no_del_old_file
push ebx
push ebp
call fcn.004096f0
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x424
ret
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x424
ret