Function at 0x4255b0
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x3c
mov eax, dword [0x4aa0cc]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push ebx
mov ebx, dword [ebp + 8]
push esi
mov esi, ecx
push edi
test eax, eax
je 0x4255e5
dec dword [esi + 0x1c]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0047db8e
mov esp, ebp
pop ebp
ret 8
mov eax, dword [esi + 0xc]
mov edi, 1
mov eax, dword [eax]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
mov eax, dword [esi + 0x10]
sub eax, dword [esi + 0xc]
sar eax, 2
cmp eax, edi
jbe 0x425625
test edi, edi
je 0x425617
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 0x48]
push 0xfffffffffffffffc
mov eax, dword [eax + edi*4]
push dword [eax]
call fcn.00421fc0
mov eax, dword [esi + 0x10]
inc edi
sub eax, dword [esi + 0xc]
sar eax, 2
cmp edi, eax
jb 0x425601
lea eax, [ebp - 0x10]
push eax
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov eax, dword [ebp - 0x10]
sub eax, dword [esi + 0xb8]
mov edi, dword [0x4af360]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0xc]
sbb eax, dword [esi + 0xbc]
mov dword [ebp - 0x18], eax
mov eax, edi
or eax, dword [0x4af364]
jne 0x425668
push 0x4af360
call dword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
mov edi, dword [0x4af360]
push 0
push 0x3e8
push dword [ebp - 0x18]
push dword [ebp - 0x20]
call fcn.0047e370
push dword [0x4af364]
push edi
push edx
push eax
call fcn.00481e00
mov dword [ebx + 0x20], eax
or eax, edx
mov dword [ebx + 0x24], edx
jne 0x42569c
mov dword [ebx + 0x20], 0x1f4
mov dword [ebx + 0x24], eax
mov eax, dword [ebx]
test eax, eax
jne 0x425886
lea eax, [esi + 0x68]
push eax
push 0x200002
push dword [ebp - 0x14]
call fcn.00430620
mov eax, dword [esi + 0xc]
add esp, 0xc
mov eax, dword [eax]
mov ecx, dword [eax + 0x18]
mov eax, dword [eax + 0x1c]
cmp eax, dword [esi + 0x94]
jl 0x4256e3
jg 0x4256d7
cmp ecx, dword [esi + 0x90]
jbe 0x4256e3
mov dword [esi + 0x90], ecx
mov dword [esi + 0x94], eax
lea ecx, [esi + 0x24]
call fcn.00403490
test al, al
je 0x425716
mov eax, dword [esi + 0x6c]
mov dword [ebx + 4], eax
mov eax, dword [esi + 0x90]
mov dword [ebx + 8], eax
mov eax, dword [esi + 0x94]
mov dword [ebx + 0xc], eax
mov ecx, dword [esi + 0x90]
mov eax, dword [esi + 0x6c]
mov byte [ecx + eax], 0
jmp 0x42572f
mov dword [ebx + 4], 0
mov eax, dword [esi + 0x90]
mov dword [ebx + 8], eax
mov eax, dword [esi + 0x94]
mov dword [ebx + 0xc], eax
mov edx, dword [esi + 0x94]
mov ecx, dword [esi + 0x90]
call fcn.0047ea9f
mov edx, dword [ebx + 0x24]
mov ecx, dword [ebx + 0x20]
movsd qword [ebp - 0x10], xmm0
call fcn.0047ea9f
divsd xmm0, qword [0x49c808]
movsd xmm1, qword [ebp - 0x10]
divsd xmm1, xmm0
movapd xmm0, xmm1
call fcn.0047e8e1
push str._r_n_r_n
mov dword [ebx + 0x28], eax
lea edi, [esi + 0x78]
call fcn.00402870
add esp, 4
push eax
push 0xffffffffffffffff
push ecx
mov ecx, edi
call fcn.00426e00
mov dword [ebp - 0x14], eax
cmp eax, 0xffffffff
je 0x425869
mov ecx, edi
call fcn.00401e60
sub eax, 4
mov ecx, edi
push eax
call fcn.0040eaa0
push str._r_n_r_n
call fcn.00402870
add esp, 4
push eax
push dword [ebp - 0x14]
push ecx
mov ecx, edi
call fcn.00426e00
mov dword [ebp - 0x14], eax
cmp eax, 0xffffffff
je 0x425869
mov ecx, edi
call fcn.00405870
mov ecx, edi
mov dword [ebp - 0x18], eax
call fcn.00401e60
add dword [ebp - 0x18], eax
mov ecx, edi
call fcn.00405870
mov ecx, dword [ebp - 0x14]
add ecx, 4
add eax, ecx
lea ecx, [ebp - 0x1a]
mov dword [ebp - 0x14], eax
call fcn.004020f0
push eax
lea ecx, [ebp - 0x38]
call fcn.00402100
push 0
push 0
lea ecx, [ebp - 0x38]
call fcn.00402050
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
cmp ecx, eax
je 0x425824
sub eax, ecx
push eax
push ecx
lea ecx, [ebp - 0x38]
call fcn.00402180
lea eax, [ebp - 0x38]
cmp edi, eax
je 0x425861
push 0
push 1
mov ecx, edi
call fcn.00402050
lea eax, [ebp - 0x19]
push eax
lea ecx, [ebp - 0x38]
call fcn.00402120
lea eax, [ebp - 0x1b]
mov ecx, edi
push eax
call fcn.00402120
lea eax, [ebp - 0x38]
push eax
call fcn.004026a0
add esp, 4
mov ecx, edi
push eax
call fcn.00405fc0
lea ecx, [ebp - 0x38]
call fcn.00401e40
mov ecx, edi
call fcn.00405870
mov ecx, edi
mov dword [ebx + 0x10], eax
call fcn.00401e60
mov dword [ebx + 0x18], eax
mov dword [ebx + 0x1c], 0
jmp 0x425903
cmp byte [esi + 0xdd], 0
jne 0x4258aa
cmp eax, 0xfffffff9
je 0x425899
cmp eax, 0xfffffffa
jne 0x4258aa
lea ecx, [esi + 0xe0]
call fcn.00405870
push eax
call fcn.00428c30
mov dword [esi + 0x68], 0
lea ecx, [esi + 0x78]
mov dword [esi + 0x90], 0
mov dword [esi + 0x94], 0
push 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
mov dword [ebx + 0x28], 0
call fcn.00401f60
cmp byte [esi + 0xdc], 0
je 0x425903
lea ecx, [esi + 0x24]
call fcn.00403470
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov eax, dword [esi + 0x68]
lea ecx, [esi + 0xe0]
mov dword [ebx + 0x2c], eax
movdqu xmm0, xmmword [ebx]
movdqu xmmword [esi + 0x178], xmm0
movdqu xmm0, xmmword [ebx + 0x10]
movdqu xmmword [esi + 0x188], xmm0
movdqu xmm0, xmmword [ebx + 0x20]
movdqu xmmword [esi + 0x198], xmm0
movdqu xmm0, xmmword [ebx + 0x30]
movdqu xmmword [esi + 0x1a8], xmm0
movdqu xmm0, xmmword [ebx + 0x40]
movdqu xmmword [esi + 0x1b8], xmm0
movdqu xmm0, xmmword [ebx + 0x50]
movdqu xmmword [esi + 0x1c8], xmm0
push dword [esi + 0x1a4]
push dword [esi + 0x178]
call fcn.00405870
push eax
push str.send_finish_to_ui_thread__url_is__s__ret_code_is__d__response_code_is__d
push 0
push str.HttpClient.cpp
call fcn.0040e580
add esp, 0x18
push 0
push dword [esi + 0x1f4]
push 0x1425
push dword [esi + 0x160]
call dword [sym.imp.USER32.dll_PostMessageW]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0047db8e
mov esp, ebp
pop ebp
ret 8