Function at 0x10014990
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x634
mov eax, dword [0x100a0070]
xor eax, esp
mov dword [esp + 0x630], eax
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
mov edi, edx
xor ebx, ebx
lea edx, [esp + 0x10]
mov dword [esp + 0x14], ebx
push edx
lea edx, [esp + 0x18]
mov dword [esp + 0x14], ebx
push edx
push eax
mov edx, edi
call fcn.100143f0
add esp, 0xc
test al, al
je 0x10014be8
mov esi, dword [edi]
xorps xmm0, xmm0
push ebx
mov ebx, dword [esp + 0x18]
mov ecx, edi
mov eax, ebx
movlpd qword [esp + 0x1c], xmm0
cdq
push edx
push eax
call dword [esi + 8]
mov eax, dword [edi]
lea ecx, [esp + 0x18]
push 8
push ecx
mov ecx, edi
call dword [eax + 0xc]
cmp dword [esp + 0x18], 0x70bfbbef
jne 0x10014be8
cmp dword [esp + 0x1c], 0x706c646f
jne 0x10014be8
test ebx, ebx
jne 0x10014ab3
cmp dword [esp + 0x10], 0xffffffff
jne 0x10014ab3
push 0x208
lea eax, [esp + 0x24]
push ebx
push eax
call fcn.10050900
add esp, 0xc
lea ecx, [esp + 0x20]
mov dl, 1
call fcn.1003022c
push ebx
push 0xffffffffffffffff
push ebx
lea edx, [esp + 0x2c]
mov ecx, edi
call fcn.10013f15
add esp, 0xc
test al, al
je 0x10014a98
push ecx
push 2
pop edx
lea ecx, [esp + 0x24]
call fcn.1003fd57
pop ecx
test eax, eax
je 0x10014a84
push ebx
mov edx, edi
lea ecx, [esp + 0x24]
call fcn.1001405f
jmp 0x10014aa2
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.decrypt_file_failed_on_upload_1_:__d
call fcn.1002f7ab
pop ecx
jmp 0x10014aa2
push str.stream_to_file_failed_1_
call fcn.1002f7ab
pop ecx
lea eax, [esp + 0x20]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
jmp 0x10014be8
mov esi, 0x208
lea eax, [esp + 0x228]
push esi
push 0
push eax
call fcn.10050900
add esp, 0xc
lea eax, [esp + 0x20]
push esi
push 0
push eax
call fcn.10050900
add esp, 0xc
lea eax, [esp + 0x430]
push esi
xor esi, esi
push esi
push eax
call fcn.10050900
add esp, 0xc
lea ecx, [esp + 0x228]
mov dl, 1
call fcn.1003022c
mov dl, 1
lea ecx, [esp + 0x20]
call fcn.1003022c
mov dl, 1
lea ecx, [esp + 0x430]
call fcn.1003022c
push esi
push ebx
push esi
lea edx, [esp + 0x234]
mov ecx, edi
call fcn.10013f15
add esp, 0xc
test al, al
je 0x10014bbc
push esi
push dword [esp + 0x14]
lea edx, [esp + 0x28]
mov ecx, edi
push ebx
call fcn.10013f15
add esp, 0xc
test al, al
je 0x10014bbc
push esi
push 0xffffffffffffffff
push dword [esp + 0x18]
lea edx, [esp + 0x43c]
mov ecx, edi
call fcn.10013f15
add esp, 0xc
test al, al
je 0x10014bbc
push ecx
push 2
pop edx
lea ecx, [esp + 0x24]
call fcn.1003fd57
pop ecx
test eax, eax
je 0x10014ba8
push esi
mov edx, edi
lea ecx, [esp + 0x22c]
call fcn.1001405f
pop ecx
push 1
mov edx, edi
lea ecx, [esp + 0x24]
call fcn.1001405f
pop ecx
push 1
mov edx, edi
lea ecx, [esp + 0x434]
call fcn.1001405f
jmp 0x10014bc6
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.decrypt_file_failed_on_upload_2_:__d
call fcn.1002f7ab
pop ecx
jmp 0x10014bc6
push str.stream_to_file_failed_2_
call fcn.1002f7ab
mov esi, dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea eax, [esp + 0x22c]
pop ecx
push eax
call esi
lea eax, [esp + 0x20]
push eax
call esi
lea eax, [esp + 0x430]
push eax
call esi
mov ecx, dword [esp + 0x63c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.1004d78e
mov esp, ebp
pop ebp
ret