Function at 0x439960
Capabilities:
Delete file
Move file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4e0698
mov eax, dword fs:[0]
push eax
sub esp, 0x48
mov eax, dword [0x53d9f8]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edx, ecx
mov dword [ebp - 0x4c], edx
cmp byte [edx + 8], 0
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
mov esi, dword [ebp + 8]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], ecx
jne 0x439c2c
test esi, esi
je 0x439c2c
cmp word [esi], 0
je 0x439c2c
test eax, eax
je 0x439c2c
cmp word [eax], 0
je 0x439c2c
test ecx, ecx
je 0x439c2c
cmp word [ecx], 0
je 0x439c2c
lea edi, [edx + 0x50]
push eax
mov ecx, edi
call fcn.004239c0
push str..dlcache
mov ecx, edi
call fcn.004202f0
cmp dword [edi + 0x14], 8
mov eax, edi
jb 0x439a00
mov eax, dword [edi]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea eax, [ebp - 0x40]
push esi
push eax
call fcn.00416070
add esp, 8
cmp dword [eax + 0x14], 8
mov dword [ebp - 4], 0
jb 0x439a23
mov eax, dword [eax]
push eax
call fcn.0042c390
mov ecx, eax
call fcn.0043c5a0
mov edx, dword [ebp - 0x2c]
mov dword [ebp - 4], 0xffffffff
cmp edx, 8
jb 0x439a73
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x439a69
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x439a69
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004bee2d
add esp, 8
push 0
push 0
call fcn.0042c390
mov ecx, eax
call fcn.0048d2e0
call dword [sym.imp.kso.dll_curl_easy_init]
mov edx, esi
mov ebx, eax
lea eax, [edx + 2]
mov cx, word [edx]
add edx, 2
test cx, cx
jne 0x439a90
sub edx, eax
sar edx, 1
lea eax, [edx + 1]
mov dword [ebp - 0x44], eax
cmp eax, 0x3fffffff
jg 0x439ae1
add eax, eax
call fcn.004bf6c0
mov eax, esp
mov dword [ebp - 0x48], eax
test eax, eax
je 0x439ae1
mov edx, dword [ebp - 0x44]
push 0
push 0
mov byte [eax], 0
lea ecx, [edx + edx]
push ecx
push eax
push 0xffffffffffffffff
push esi
push 0
push 3
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
neg eax
sbb eax, eax
and eax, dword [ebp - 0x48]
jmp 0x439ae3
xor eax, eax
mov esi, dword [sym.imp.kso.dll_curl_easy_setopt]
push eax
push 0x2712
push ebx
call esi
push 0x436520
push 0x4e2b
push ebx
call esi
push dword [ebp - 0x4c]
push 0x2711
push ebx
call esi
push 5
push 0x44
push ebx
call esi
push 1
push 0x34
push ebx
call esi
push 0
push 0x2b
push ebx
call esi
add esp, 0x48
push 0x436610
push 0x4e58
push ebx
call esi
push ebx
call dword [sym.imp.kso.dll_curl_easy_perform]
push ebx
mov esi, eax
call dword [sym.imp.kso.dll_curl_easy_cleanup]
add esp, 0x14
test esi, esi
jne 0x439c0c
cmp dword [edi + 0x14], 8
mov eax, edi
jb 0x439b54
mov eax, dword [edi]
push eax
call fcn.004168a0
add esp, 4
test al, al
je 0x439c07
cmp dword [edi + 0x14], 8
mov eax, edi
jb 0x439b6f
mov eax, dword [edi]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.00478110
add esp, 8
cmp dword [eax + 0x14], 8
jb 0x439b84
mov eax, dword [eax]
push dword [ebp - 0x50]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
mov edx, dword [ebp - 0x14]
add esp, 8
test eax, eax
setne bl
cmp edx, 8
jb 0x439bd2
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x439bc8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x439bc8
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004bee2d
add esp, 8
xor eax, eax
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
test bl, bl
je 0x439bf1
mov esi, 0x2712
jmp 0x439c0c
cmp dword [edi + 0x14], 8
jb 0x439bf9
mov edi, dword [edi]
push 3
push dword [ebp - 0x54]
push edi
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
jmp 0x439c0c
mov esi, 0x2711
mov eax, 0x4f1b94
test esi, esi
mov ecx, 0x4f1b84
cmovne ecx, eax
push ecx
call fcn.0042c390
mov ecx, eax
call fcn.0043c5e0
mov eax, esi
jmp 0x439c2e
xor eax, eax
lea esp, [ebp - 0x64]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004bee49
mov esp, ebp
pop ebp
ret 0xc