Function at 0x10041707
Capabilities:
Copy file
Get session user name

Disassembly:
push 0x5c0
mov eax, 0x10065560
call fcn.1004b0ba
mov eax, dword [ebp + 8]
xor esi, esi
mov dword [ebp - 0x590], eax
mov eax, dword [ebp + 0xc]
mov ebx, ecx
mov dword [ebp - 0x588], ebx
mov dword [ebp - 0x58c], eax
mov dword [ebp - 0x594], esi
mov edi, 0x80
cmp word [0x10081578], si
jne 0x1004180b
xor eax, eax
push 0xfe
mov word [ebp - 0x57c], ax
lea eax, [ebp - 0x57a]
push esi
push eax
call fcn.1004e1c0
add esp, 0xc
lea eax, [ebp - 0x584]
push eax
lea eax, [ebp - 0x57c]
push eax
mov dword [ebp - 0x584], edi
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
test eax, eax
je 0x1004180b
push str.system
lea eax, [ebp - 0x57c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x100417f8
lea eax, [ebp - 0x460]
push eax
mov edx, str.agentUser
mov ecx, str.Softwareprojonepodlp_smpcache_
call fcn.100277a0
pop ecx
cmp dword [ebp - 0x44c], esi
jne 0x100417c7
lea eax, [ebp - 0x57c]
jmp 0x100417dc
cmp dword [ebp - 0x448], 8
mov eax, dword [ebp - 0x45c]
jae 0x100417dc
lea eax, [ebp - 0x45c]
push edi
push eax
push 0x10081578
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
lea esi, [ebp - 0x460]
call fcn.10009500
xor esi, esi
jmp 0x1004180b
push edi
lea eax, [ebp - 0x57c]
push eax
push 0x10081578
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
cmp byte [0x10081678], 0
jne 0x10041847
lea eax, [ebp - 0x5cc]
push eax
call fcn.1002b2b7
cmp dword [eax + 0x18], 0x10
pop ecx
jb 0x1004182c
mov eax, dword [eax + 4]
jmp 0x1004182f
add eax, 4
push edi
push eax
push 0x10081678
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
lea ecx, [ebp - 0x5cc]
call fcn.10002e00
cmp word [0x10081578], si
je 0x10041954
cmp byte [0x10081678], 0
je 0x10041954
cmp dword [ebp - 0x590], esi
je 0x10041954
cmp byte [ebx + 8], 7
jne 0x10041954
push str.i_action
lea ecx, [ebp - 0x5cc]
call fcn.10002d90
sub esp, 0x1c
mov dword [ebp - 4], esi
mov ecx, esp
mov dword [ebp - 0x584], esp
push 0x1006a9de
call fcn.10002d90
lea eax, [ebp - 0x47c]
push eax
lea ecx, [ebp - 0x5cc]
mov edi, ebx
call fcn.1000b860
add esp, 0x20
lea ecx, [ebp - 0x5cc]
mov byte [ebp - 4], 2
call fcn.10002e00
mov ecx, str.replace
lea edi, [ebp - 0x47c]
call fcn.10016fe0
test al, al
jne 0x100418e7
mov ecx, str.delete
call fcn.10016fe0
test al, al
je 0x1004195c
mov esi, str.i_key_columns
push ebx
mov edx, esi
call fcn.1003bb5c
cmp byte [eax + 8], 4
jne 0x10041925
push ebx
mov edx, esi
call fcn.1003bb5c
push eax
lea ecx, [ebp - 0x5b0]
call fcn.1003ae0f
cmp dword [eax + 0x14], 0
mov dword [ebp - 0x594], 1
mov byte [ebp - 0x57d], 0
jne 0x1004192c
mov byte [ebp - 0x57d], 1
test byte [ebp - 0x594], 1
je 0x10041940
lea ecx, [ebp - 0x5b0]
call fcn.10002e00
cmp byte [ebp - 0x57d], 0
je 0x1004195c
lea ecx, [ebp - 0x47c]
call fcn.10002e00
xor eax, eax
call fcn.1004b13d
ret
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x584], esp
push dword [ebp - 0x590]
call fcn.1003a9d0
push ebx
mov edx, str.i_dt
mov byte [ebp - 4], 3
call fcn.1003bb5c
mov edi, eax
mov byte [ebp - 4], 2
call fcn.1003aca4
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x584], esp
push 0x10081678
call fcn.1003a9d0
push ebx
mov edx, str.client_unique
mov byte [ebp - 4], 4
call fcn.1003bb5c
mov edi, eax
mov byte [ebp - 4], 2
call fcn.1003aca4
mov edi, str.user_name
push ebx
mov edx, edi
call fcn.1003bb5c
cmp byte [eax + 8], 0
jne 0x10041ada
lea esi, [ebp - 0x57c]
call fcn.10041550
mov ebx, esi
mov byte [ebp - 4], 5
call fcn.1002b4d9
test eax, eax
je 0x10041a56
cmp dword [ebp - 0x568], 0
je 0x10041a56
sub esp, 0x18
mov edx, esi
mov esi, esp
mov dword [ebp - 0x584], esp
call fcn.1003aa51
push dword [ebp - 0x588]
mov edx, edi
mov byte [ebp - 4], 6
call fcn.1003bb5c
mov edi, eax
mov byte [ebp - 4], 5
call fcn.1003aca4
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x584], esp
push 1
call fcn.1003a972
push dword [ebp - 0x588]
mov edx, str.i_user_data
mov byte [ebp - 4], 7
call fcn.1003bb5c
mov edi, eax
mov byte [ebp - 4], 5
call fcn.1003aca4
jmp 0x10041ac5
mov eax, 0x10081578
lea ecx, [ebp - 0x460]
call fcn.10002e30
lea eax, [ebp - 0x460]
push eax
lea eax, [ebp - 0x5b0]
push eax
mov byte [ebp - 4], 8
call fcn.100014b0
sub esp, 0x10
mov byte [ebp - 4], 9
mov edx, eax
mov esi, esp
mov dword [ebp - 0x584], esp
call fcn.1003aa51
push dword [ebp - 0x588]
mov edx, edi
mov byte [ebp - 4], 0xa
call fcn.1003bb5c
mov edi, eax
mov byte [ebp - 4], 9
call fcn.1003aca4
lea ecx, [ebp - 0x5b0]
call fcn.10002e00
lea esi, [ebp - 0x460]
call fcn.10009500
lea esi, [ebp - 0x57c]
mov byte [ebp - 4], 2
call fcn.10041d7d
mov ebx, dword [ebp - 0x588]
push ebx
mov edx, str.data_time
call fcn.1003bb5c
cmp byte [eax + 8], 0
jne 0x10041b7c
push 7
xor eax, eax
mov byte [ebp - 0x34], 0
pop ecx
lea edi, [ebp - 0x33]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [ebp - 0x454]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx eax, word [ebp - 0x448]
push eax
movzx eax, word [ebp - 0x44a]
push eax
movzx eax, word [ebp - 0x44c]
push eax
movzx eax, word [ebp - 0x44e]
push eax
movzx eax, word [ebp - 0x452]
push eax
movzx eax, word [ebp - 0x454]
push eax
push str._04d__02d__02d__02d:_02d:_02d
lea eax, [ebp - 0x34]
push 0x20
push eax
call dword [sym.imp.SHLWAPI.dll_wnsprintfA]
add esp, 0xc
lea eax, [ebp - 0x34]
mov esi, esp
mov dword [ebp - 0x584], esp
push eax
call fcn.1003a9d0
push ebx
mov edx, str.data_time
mov byte [ebp - 4], 0xb
call fcn.1003bb5c
mov edi, eax
mov byte [ebp - 4], 2
call fcn.1003aca4
cmp dword [ebp - 0x58c], 0
je 0x10041d6a
push dword [ebp - 0x58c]
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
lea ecx, [ebp - 0x460]
call fcn.10002e30
lea eax, [ebp - 0x460]
push eax
lea eax, [ebp - 0x5b0]
push eax
mov byte [ebp - 4], 0xc
call fcn.100014b0
sub esp, 0x10
mov byte [ebp - 4], 0xd
mov edx, eax
mov esi, esp
mov dword [ebp - 0x584], esp
call fcn.1003aa51
push ebx
mov edx, str.attach_name
mov byte [ebp - 4], 0xe
call fcn.1003bb5c
mov edi, eax
mov byte [ebp - 4], 0xd
call fcn.1003aca4
lea ecx, [ebp - 0x5b0]
call fcn.10002e00
lea esi, [ebp - 0x460]
mov byte [ebp - 4], 2
call fcn.10009500
cmp dword [ebp + 0x10], 0
je 0x10041c75
mov eax, dword [ebp - 0x58c]
lea ecx, [ebp - 0x460]
call fcn.10002e30
lea eax, [ebp - 0x460]
push eax
lea eax, [ebp - 0x5b0]
push eax
mov byte [ebp - 4], 0xf
call fcn.100014b0
sub esp, 0x10
mov byte [ebp - 4], 0x10
mov edx, eax
mov esi, esp
mov dword [ebp - 0x584], esp
call fcn.1003aa51
push ebx
mov edx, str.attachment
mov byte [ebp - 4], 0x11
call fcn.1003bb5c
mov edi, eax
mov byte [ebp - 4], 0x10
call fcn.1003aca4
lea ecx, [ebp - 0x5b0]
call fcn.10002e00
lea esi, [ebp - 0x460]
jmp 0x10041d65
xor eax, eax
mov edi, 0x206
push edi
push eax
mov word [ebp - 0x23c], ax
lea eax, [ebp - 0x23a]
push eax
call fcn.1004e1c0
add esp, 0xc
lea ecx, [ebp - 0x23c]
call fcn.100415fb
test eax, eax
je 0x10041949
lea esi, [ebp - 0x23c]
call fcn.100257dd
xor eax, eax
push edi
push eax
mov word [ebp - 0x444], ax
lea eax, [ebp - 0x442]
push eax
call fcn.1004e1c0
add esp, 0xc
push 0x104
lea eax, [ebp - 0x444]
push eax
call fcn.100260de
lea eax, [ebp - 0x444]
push eax
mov eax, esi
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
push 0
mov eax, esi
push eax
push dword [ebp - 0x58c]
call dword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
je 0x10041949
mov eax, esi
lea ecx, [ebp - 0x5b0]
call fcn.10002e30
lea eax, [ebp - 0x5b0]
push eax
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x12
call fcn.100014b0
sub esp, 0x10
mov byte [ebp - 4], 0x13
mov edx, eax
mov esi, esp
mov dword [ebp - 0x584], esp
call fcn.1003aa51
push ebx
mov edx, str.attachment
mov byte [ebp - 4], 0x14
call fcn.1003bb5c
mov edi, eax
mov byte [ebp - 4], 0x13
call fcn.1003aca4
lea ecx, [ebp - 0x30]
call fcn.10002e00
lea esi, [ebp - 0x5b0]
call fcn.10009500
lea ecx, [ebp - 0x47c]
call fcn.10002e00
xor eax, eax
inc eax
jmp 0x10041956