Function at 0x140014ccc
Capabilities:
Delete file
Enumerate files on windows

Disassembly:
push rsi
push rdi
push r12
push r13
push r14
mov eax, 0x1080
call fcn.14001c210
sub rsp, 0x1080
mov r13, rdx
mov rax, qword [0x140024c20]
xor rax, rsp
mov qword [rsp + 0x1070], rax
mov qword [rsp + 0x1068], 0
cmp dword [0x140024c40], 0
jne 0x1400146ef
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x140024c40], eax
mov ecx, 0x104
lea rdx, [rsp + 0xbe4]
call qword [sym.imp.KERNEL32.dll_GetTempPathA]
mov edx, dword [0x140024c40]
test eax, eax
jbe 0x140014740
lea rsi, str.ssproiut
lea rcx, [rsp + 0xce8]
mov qword [rsp + 0x20], rsi
lea r8, str._s_s__d.log
mov dword [rsp + 0x28], edx
mov edx, 0x104
lea r9, [rsp + 0xbe4]
call qword [sym.imp.MSVCR100.dll__snprintf]
jmp 0x140014782
lea rsi, str.ssproiut
lea rcx, [rsp + 0xce8]
mov dword [rsp + 0x20], edx
mov edx, 0x104
lea r8, str.c:_temp_s__d.log
mov r9, rsi
call qword [sym.imp.MSVCR100.dll__snprintf]
mov edx, 0x104
lea rcx, [rsp + 0xbe4]
lea r8, str.c:_temp
call qword [sym.imp.MSVCR100.dll__snprintf]
movabs r14, 0
mov eax, 0x140
mov qword [rsp + rax + 0xee8], r14
mov qword [rsp + rax + 0xee0], r14
mov qword [rsp + rax + 0xed8], r14
mov qword [rsp + rax + 0xed0], r14
sub rax, 0x20
jne 0x140014791
mov edx, 0x103
lea rcx, [rsp + 0xdec]
lea r8, [0x1400202fc]
lea r9, [rsp + 0xbe4]
mov qword [rsp + 0x20], rsi
call qword [sym.imp.MSVCR100.dll__snprintf]
lea rcx, [rsp + 0xdec]
lea rdx, [rsp + 0xef0]
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov r12, rax
cmp r12, 0xffffffffffffffff
je 0x140014b1d
mov rcx, r12
lea rdx, [rsp + 0xef0]
mov edi, 1
call qword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
je 0x140014832
mov rcx, r12
lea rdx, [rsp + 0xef0]
inc edi
call qword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x14001481b
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_FindClose]
cmp edi, 0x3c
jbe 0x140014940
mov eax, 0x140
mov qword [rsp + rax + 0xee8], r14
mov qword [rsp + rax + 0xee0], r14
mov qword [rsp + rax + 0xed8], r14
mov qword [rsp + rax + 0xed0], r14
sub rax, 0x20
jne 0x140014849
lea rcx, [rsp + 0xdec]
lea rdx, [rsp + 0xef0]
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov r12, rax
cmp r12, 0xffffffffffffffff
je 0x140014b1d
mov edx, 0x103
lea rcx, [rsp + 0xae0]
lea r8, str._s_s
lea r9, [rsp + 0xbe4]
lea r14, [rsp + 0xf1c]
mov qword [rsp + 0x20], r14
call qword [sym.imp.MSVCR100.dll__snprintf]
lea rcx, [rsp + 0xae0]
call qword [sym.imp.KERNEL32.dll_DeleteFileA]
mov rcx, r12
lea rdx, [rsp + 0xef0]
dec edi
call qword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
je 0x140014937
cmp edi, 0x3c
jbe 0x140014937
mov edx, 0x103
lea rcx, [rsp + 0xae0]
lea r8, str._s_s
lea r9, [rsp + 0xbe4]
mov qword [rsp + 0x20], r14
call qword [sym.imp.MSVCR100.dll__snprintf]
lea rcx, [rsp + 0xae0]
call qword [sym.imp.KERNEL32.dll_DeleteFileA]
mov rcx, r12
lea rdx, [rsp + 0xef0]
dec edi
call qword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x1400148e6
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_FindClose]
xor edi, edi
lea rdx, [0x14001e89c]
lea rcx, [rsp + 0xce8]
call qword [sym.imp.MSVCR100.dll_fopen]
mov r12, rax
test edi, edi
je 0x140014981
test r12, r12
je 0x140014981
mov rcx, r12
lea rdx, str.Purging_of_old_files__s_s_failed__Error__d
mov r9, rsi
lea r8, [rsp + 0xbe4]
mov dword [rsp + 0x20], edi
call fcn.140010c10
mov ecx, 1
mov edx, 0x10000
call qword [sym.imp.MSVCR100.dll_calloc]
mov qword [r13 + 0x150], rax
test rax, rax
je 0x140014fa4
mov ecx, 1
mov edx, 0x10000
call qword [sym.imp.MSVCR100.dll_calloc]
mov qword [r13 + 0x158], rax
test rax, rax
je 0x140014b2a
mov rcx, r12
lea rdx, str.__s:_d__Trying_to_get_windows_domain
lea r8, str.ssproiut.c
mov r9d, 0x4e2
call fcn.140010c10
xor ecx, ecx
mov edx, 0x64
lea r8, [rsp + 0x1068]
call sub.NETAPI32.dll_NetWkstaGetInfo
mov esi, eax
test esi, esi
jne 0x140014a5c
mov rax, qword [rsp + 0x1068]
lea rcx, [rsp + 0x1048]
mov rdx, qword [r13 + 0x150]
mov r8d, 8
mov qword [rsp + 0x20], 0xffffffffffffffff
mov r9, qword [rax + 0x10]
call qword [sym.imp.MSVCR100.dll_wcstombs_s]
movsxd rax, dword [rsp + 0x1048]
test rax, rax
je 0x140014a4c
mov qword [r13 + 0x18], rax
add dword [r13 + 4], eax
mov dword [r13 + 0x104], 0
jmp 0x140014add
mov dword [r13 + 0x104], 0
jmp 0x140014add
mov rcx, r12
lea rdx, str.__s:_d__error_while_getting_windows_domain._error_no_d
lea r8, str.ssproiut.c
mov r9d, 0x4f4
mov dword [rsp + 0x20], esi
call fcn.140010c10
mov dword [r13 + 0x104], esi
cmp esi, 5
jne 0x140014a9e
mov rcx, qword [r13 + 0x158]
lea rdx, str.Error_ERROR_ACCESS_DENIED_while_getting_windows_domain
call qword [sym.imp.MSVCR100.dll_sprintf]
jmp 0x140014acd
cmp esi, 0x7c
jne 0x140014ab9
mov rcx, qword [r13 + 0x158]
lea rdx, str.Error_ERROR_INVALID_LEVEL_while_getting_windows_domain
call qword [sym.imp.MSVCR100.dll_sprintf]
jmp 0x140014acd
mov rcx, qword [r13 + 0x158]
lea rdx, str.Unknown_error_while_getting_windows_domain
call qword [sym.imp.MSVCR100.dll_sprintf]
movsxd rax, eax
mov qword [r13 + 0x20], rax
test rax, rax
je 0x140014add
add dword [r13 + 4], eax
mov rcx, qword [rsp + 0x1068]
test rcx, rcx
je 0x140014aef
call sub.NETAPI32.dll_NetApiBufferFree
test r12, r12
je 0x140014afd
mov rcx, r12
call qword [sym.imp.MSVCR100.dll_fclose]
mov rcx, qword [rsp + 0x1070]
xor rcx, rsp
call fcn.14001c150
add rsp, 0x1080
pop r14
pop r13
pop r12
pop rdi
pop rsi
ret
call qword [sym.imp.orauts.dll_GetLastError]
mov edi, eax
jmp 0x140014942
mov rcx, r12
lea rdx, str._s:_d_allocation_of__d_bytes_for_response_failed
lea r8, str.ssproiut.c
mov r9d, 0x4db
mov dword [rsp + 0x20], 0x10000
call fcn.140010c10
xor edi, edi
mov ecx, 0x1100
xor edx, edx
mov r8d, 0xe
mov r9d, 0x400
lea rax, [rsp + 0x1060]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x1060], rdi
mov dword [r13 + 0x104], 0xe
mov qword [rsp + 0x30], rdi
call qword [sym.imp.KERNEL32.dll_FormatMessageA]
mov r14, qword [rsp + 0x1060]
test r14, r14
jne 0x140014bb3
mov dword [r13 + 0x100], 1
jmp 0x140014add
cmp dword [0x140024c40], 0
jne 0x140014bc8
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x140024c40], eax
mov ecx, 0x104
lea rdx, [rsp + 0x450]
call qword [sym.imp.KERNEL32.dll_GetTempPathA]
mov edx, dword [0x140024c40]
test eax, eax
jbe 0x140014c12
mov qword [rsp + 0x20], rsi
lea rcx, [rsp + 0x554]
mov dword [rsp + 0x28], edx
lea r8, str._s_s__d.log
mov edx, 0x104
lea r9, [rsp + 0x450]
call qword [sym.imp.MSVCR100.dll__snprintf]
jmp 0x140014c4d
mov dword [rsp + 0x20], edx
lea rcx, [rsp + 0x554]
lea r8, str.c:_temp_s__d.log
mov edx, 0x104
mov r9, rsi
call qword [sym.imp.MSVCR100.dll__snprintf]
lea r8, str.c:_temp
lea rcx, [rsp + 0x450]
mov edx, 0x104
call qword [sym.imp.MSVCR100.dll__snprintf]
movabs rax, 0
lea rdi, [rsp + 0x9a0]
push 0x28
pop rcx
rep stosq qword [rdi], rax
mov edx, 0x103
lea rcx, [rsp + 0x75c]
lea r8, [0x1400202fc]
lea r9, [rsp + 0x450]
mov qword [rsp + 0x20], rsi
call qword [sym.imp.MSVCR100.dll__snprintf]
lea rcx, [rsp + 0x75c]
lea rdx, [rsp + 0x9a0]
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov rdi, rax
cmp rdi, 0xffffffffffffffff
je 0x140014f5a
mov dword [rsp + 0x40], 1
mov rcx, rdi
lea rdx, [rsp + 0x9a0]
call qword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
je 0x140014d1e
mov qword [rsp + 0x1030], rbx
mov qword [rsp + 0x1038], r15
mov qword [rsp + 0x1040], rbp
lea rbp, [rsp + 0x9a0]
mov ebx, dword [rsp + 0x40]
mov rcx, rdi
mov rdx, rbp
inc ebx
call qword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x140014cf0
mov dword [rsp + 0x40], ebx
mov rbx, qword [rsp + 0x1030]
mov r15, qword [rsp + 0x1038]
mov rbp, qword [rsp + 0x1040]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindClose]
cmp dword [rsp + 0x40], 0x3c
jbe 0x140014e94
movabs rax, 0
lea rdi, [rsp + 0x9a0]
push 0x28
pop rcx
rep stosq qword [rdi], rax
lea rcx, [rsp + 0x75c]
lea rdx, [rsp + 0x9a0]
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov qword [rsp + 0x48], rax
cmp qword [rsp + 0x48], 0xffffffffffffffff
je 0x140014f5a
lea rdi, str._s_s
lea rcx, [rsp + 0x658]
mov edx, 0x103
mov r8, rdi
lea r9, [rsp + 0x450]
lea rax, [rsp + 0x9cc]
mov qword [rsp + 0x20], rax
call qword [sym.imp.MSVCR100.dll__snprintf]
lea rcx, [rsp + 0x658]
call qword [sym.imp.KERNEL32.dll_DeleteFileA]
dec dword [rsp + 0x40]
lea rdx, [rsp + 0x9a0]
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
je 0x140014e89
mov qword [rsp + 0x1030], rbx
lea rsi, [rsp + 0x658]
mov qword [rsp + 0x1040], rbp
mov qword [rsp + 0x1050], r12
lea r12, [rsp + 0x9cc]
mov qword [rsp + 0x1048], r13
lea r13, [rsp + 0x450]
mov qword [rsp + 0x1038], r15
lea r15, [rsp + 0x9a0]
mov ebp, dword [rsp + 0x40]
mov rbx, qword [rsp + 0x48]
cmp ebp, 0x3c
jbe 0x140014e5a
mov rcx, rsi
mov edx, 0x103
mov r8, rdi
mov r9, r13
mov qword [rsp + 0x20], r12
call qword [sym.imp.MSVCR100.dll__snprintf]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_DeleteFileA]
mov rcx, rbx
mov rdx, r15
dec ebp
call qword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x140014e21
mov r12, qword [rsp + 0x1050]
lea rsi, str.ssproiut
mov r13, qword [rsp + 0x1048]
mov rbx, qword [rsp + 0x1030]
mov r15, qword [rsp + 0x1038]
mov rbp, qword [rsp + 0x1040]
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_FindClose]
xor edi, edi
lea rdx, [0x14001e89c]
lea rcx, [rsp + 0x554]
call qword [sym.imp.MSVCR100.dll_fopen]
mov qword [rsp + 0x40], rax
test edi, edi
je 0x140014ede
mov rax, qword [rsp + 0x40]
test rax, rax
je 0x140014ede
mov dword [rsp + 0x20], edi
lea rdx, str.Purging_of_old_files__s_s_failed__Error__d
mov r9, rsi
lea r8, [rsp + 0x450]
mov rcx, qword [rsp + 0x40]
call fcn.140010c10
mov rcx, r14
xor eax, eax
movzx edx, byte [rcx + rax]
test edx, edx
je 0x140014efb
movzx edx, byte [rcx + rax + 1]
add rax, 2
test edx, edx
jne 0x140014ee3
dec rax
mov rsi, rax
mov ecx, 1
lea rdi, [rsi + 1]
mov rdx, rdi
call qword [sym.imp.MSVCR100.dll_calloc]
mov qword [r13 + 0x158], rax
test rax, rax
je 0x140014f74
mov rcx, rax
mov rdx, r14
mov r8, rdi
call qword [sym.imp.MSVCR100.dll_strncpy]
movsxd rax, dword [r13 + 4]
mov qword [r13 + 0x20], rdi
lea rdx, [rsi + rax + 1]
mov dword [r13 + 4], edx
mov rax, qword [rsp + 0x40]
test rax, rax
je 0x140014f67
mov rcx, qword [rsp + 0x1060]
call qword [sym.imp.KERNEL32.dll_LocalFree]
nop
jmp 0x140014ba3
call qword [sym.imp.orauts.dll_GetLastError]
mov edi, eax
jmp 0x140014e96
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.MSVCR100.dll_fclose]
jmp 0x140014f46
mov qword [rsp + 0x20], rdi
lea rdx, str._s:_d_allocation_of__d_bytes_for_response_failed
lea r8, str.ssproiut.c
mov r9d, 0x42a
mov rcx, qword [rsp + 0x40]
call fcn.140010c10
mov dword [r13 + 0x100], 1
jmp 0x140014f3c
mov rcx, r12
lea rdx, str._s:_d_allocation_of__d_bytes_for_response_failed
lea r8, str.ssproiut.c
mov r9d, 0x4d2
mov dword [rsp + 0x20], 0x10000
call fcn.140010c10
xor edi, edi
mov ecx, 0x1100
xor edx, edx
mov r8d, 0xe
mov r9d, 0x400
lea rax, [rsp + 0x1058]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x1058], rdi
mov dword [r13 + 0x104], 0xe
mov qword [rsp + 0x30], rdi
call qword [sym.imp.KERNEL32.dll_FormatMessageA]
mov r14, qword [rsp + 0x1058]
test r14, r14
jne 0x14001502d
mov dword [r13 + 0x100], 1
jmp 0x140014add
cmp dword [0x140024c40], 0
jne 0x140015042
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x140024c40], eax
mov ecx, 0x104
lea rdx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_GetTempPathA]
mov edx, dword [0x140024c40]
test eax, eax
jbe 0x140015086
mov qword [rsp + 0x20], rsi
lea rcx, [rsp + 0x144]
mov dword [rsp + 0x28], edx
lea r8, str._s_s__d.log
mov edx, 0x104
lea r9, [rsp + 0x40]
call qword [sym.imp.MSVCR100.dll__snprintf]
jmp 0x1400150be
mov dword [rsp + 0x20], edx
lea rcx, [rsp + 0x144]
lea r8, str.c:_temp_s__d.log
mov edx, 0x104
mov r9, rsi
call qword [sym.imp.MSVCR100.dll__snprintf]
lea r8, str.c:_temp
lea rcx, [rsp + 0x40]
mov edx, 0x104
call qword [sym.imp.MSVCR100.dll__snprintf]
movabs rax, 0
lea rdi, [rsp + 0x860]
push 0x28
pop rcx
rep stosq qword [rdi], rax
mov edx, 0x103
lea rcx, [rsp + 0x34c]
lea r8, [0x1400202fc]
lea r9, [rsp + 0x40]
mov qword [rsp + 0x20], rsi
call qword [sym.imp.MSVCR100.dll__snprintf]
lea rcx, [rsp + 0x34c]
lea rdx, [rsp + 0x860]
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov rdi, rax
cmp rdi, 0xffffffffffffffff
je 0x140015402
mov dword [rsp + 0x458], 1
mov rcx, rdi
lea rdx, [rsp + 0x860]
call qword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
je 0x140015195
mov qword [rsp + 0x1030], rbx
mov qword [rsp + 0x1038], r15
mov qword [rsp + 0x1040], rbp
lea rbp, [rsp + 0x860]
mov ebx, dword [rsp + 0x458]
mov rcx, rdi
mov rdx, rbp
inc ebx
call qword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x140015164
mov dword [rsp + 0x458], ebx
mov rbx, qword [rsp + 0x1030]
mov r15, qword [rsp + 0x1038]
mov rbp, qword [rsp + 0x1040]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindClose]
cmp dword [rsp + 0x458], 0x3c
jbe 0x14001531d
movabs rax, 0
lea rdi, [rsp + 0x860]
push 0x28
pop rcx
rep stosq qword [rdi], rax
lea rcx, [rsp + 0x34c]
lea rdx, [rsp + 0x860]
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov qword [rsp + 0x450], rax
cmp qword [rsp + 0x450], 0xffffffffffffffff
je 0x140015402
lea rdi, str._s_s
lea rcx, [rsp + 0x248]
mov edx, 0x103
mov r8, rdi
lea r9, [rsp + 0x40]
lea rax, [rsp + 0x88c]
mov qword [rsp + 0x20], rax
call qword [sym.imp.MSVCR100.dll__snprintf]
lea rcx, [rsp + 0x248]
call qword [sym.imp.KERNEL32.dll_DeleteFileA]
dec dword [rsp + 0x458]
lea rdx, [rsp + 0x860]
mov rcx, qword [rsp + 0x450]
call qword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
je 0x14001530f
mov qword [rsp + 0x1030], rbx
lea rsi, [rsp + 0x248]
mov qword [rsp + 0x1040], rbp
mov qword [rsp + 0x1050], r12
lea r12, [rsp + 0x88c]
mov qword [rsp + 0x1048], r13
lea r13, [rsp + 0x40]
mov qword [rsp + 0x1038], r15
lea r15, [rsp + 0x860]
mov ebp, dword [rsp + 0x458]
mov rbx, qword [rsp + 0x450]
cmp ebp, 0x3c
jbe 0x1400152e0
mov rcx, rsi
mov edx, 0x103
mov r8, rdi
mov r9, r13
mov qword [rsp + 0x20], r12
call qword [sym.imp.MSVCR100.dll__snprintf]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_DeleteFileA]
mov rcx, rbx
mov rdx, r15
dec ebp
call qword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x1400152a7
mov r12, qword [rsp + 0x1050]
lea rsi, str.ssproiut
mov r13, qword [rsp + 0x1048]
mov rbx, qword [rsp + 0x1030]
mov r15, qword [rsp + 0x1038]
mov rbp, qword [rsp + 0x1040]
mov rcx, qword [rsp + 0x450]
call qword [sym.imp.KERNEL32.dll_FindClose]
mov dword [rsp + 0x458], 0
lea rdx, [0x14001e89c]
lea rcx, [rsp + 0x144]
call qword [sym.imp.MSVCR100.dll_fopen]
mov qword [rsp + 0x450], rax
cmp dword [rsp + 0x458], 0
je 0x140015383
mov rax, qword [rsp + 0x450]
test rax, rax
je 0x140015383
mov eax, dword [rsp + 0x458]
lea rdx, str.Purging_of_old_files__s_s_failed__Error__d
mov dword [rsp + 0x20], eax
lea r8, [rsp + 0x40]
mov r9, rsi
mov rcx, qword [rsp + 0x450]
call fcn.140010c10
mov rcx, r14
xor eax, eax
movzx edx, byte [rcx + rax]
test edx, edx
je 0x1400153a0
movzx edx, byte [rcx + rax + 1]
add rax, 2
test edx, edx
jne 0x140015388
dec rax
mov rsi, rax
mov ecx, 1
lea rdi, [rsi + 1]
mov rdx, rdi
call qword [sym.imp.MSVCR100.dll_calloc]
mov qword [r13 + 0x158], rax
test rax, rax
je 0x140015424
mov rcx, rax
mov rdx, r14
mov r8, rdi
call qword [sym.imp.MSVCR100.dll_strncpy]
movsxd rax, dword [r13 + 4]
mov qword [r13 + 0x20], rdi
lea rdx, [rsi + rax + 1]
mov dword [r13 + 4], edx
mov rax, qword [rsp + 0x450]
test rax, rax
je 0x140015414
mov rcx, qword [rsp + 0x1058]
call qword [sym.imp.KERNEL32.dll_LocalFree]
nop
jmp 0x14001501d
call qword [sym.imp.orauts.dll_GetLastError]
mov dword [rsp + 0x458], eax
jmp 0x140015328
mov rcx, qword [rsp + 0x450]
call qword [sym.imp.MSVCR100.dll_fclose]
jmp 0x1400153ee
mov qword [rsp + 0x20], rdi
lea rdx, str._s:_d_allocation_of__d_bytes_for_response_failed
lea r8, str.ssproiut.c
mov r9d, 0x42a
mov rcx, qword [rsp + 0x450]
call fcn.140010c10
mov dword [r13 + 0x100], 1
jmp 0x1400153e1