Function at 0x100067a6
Capabilities:
Get file size
Receive http response
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x81c
mov eax, dword [0x1001c050]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
mov dword [ebp - 0x81c], eax
add eax, 0xc
push eax
xor edi, edi
push 0x400
lea ecx, [ebp - 0x804]
mov dword [ebp - 0x810], edi
call fcn.100023fc
mov esi, dword [sym.imp.KERNEL32.dll_CreateFileW]
push edi
mov ebx, 0x80
push ebx
push 3
push edi
push 3
push closesocket
lea eax, [ebp - 0x804]
push eax
call esi
mov dword [ebp - 0x80c], eax
cmp eax, 0xffffffff
je 0x10006833
lea eax, [ebp - 0x808]
push eax
push 0x2044
xor ecx, ecx
push 4
inc ecx
pop ebx
call fcn.1000389c
mov esi, eax
neg esi
sbb esi, esi
pop ecx
neg esi
pop ecx
dec esi
jmp 0x100069f3
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push edi
push ebx
push 2
push edi
push edi
push 0x40000000
lea eax, [ebp - 0x804]
push eax
call esi
mov dword [ebp - 0x80c], eax
cmp eax, 0xffffffff
jne 0x1000688d
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x808], eax
lea eax, [ebp - 0x808]
push eax
push 0x1998
xor ecx, ecx
push 4
inc ecx
pop ebx
call fcn.1000389c
mov esi, eax
neg esi
sbb esi, esi
pop ecx
neg esi
pop ecx
dec esi
jmp 0x10006a13
mov esi, dword [0x10022984]
push 1
push 0x1990
push dword [0x100230b0]
call fcn.10003990
add esp, 0xc
test eax, eax
je 0x100069f0
push edi
push dword [ebp - 0x80c]
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [ebp - 0x814], eax
mov eax, dword [0x100230b4]
xor ebx, ebx
mov esi, eax
mov eax, dword [0x10022984]
push edi
push dword [eax + 0xc]
mov dword [ebp - 0x808], eax
call dword [sym.imp.WINHTTP.dll_WinHttpReceiveResponse]
test eax, eax
je 0x100069f0
mov eax, dword [ebp - 0x808]
push 0x10000
call fcn.1000384d
pop ecx
cmp eax, edi
je 0x100069f0
mov esi, dword [0x10022984]
push 1
push 0x1990
push dword [0x100230b0]
call fcn.10003990
add esp, 0xc
test eax, eax
je 0x100069f0
push edi
lea eax, [ebp - 0x818]
push eax
mov eax, dword [0x100230b4]
push dword [eax + 8]
add eax, 0xc
push eax
push dword [ebp - 0x80c]
call dword [sym.imp.KERNEL32.dll_WriteFile]
mov eax, dword [0x100230b4]
add ebx, dword [eax + 8]
cmp dword [eax + 4], edi
je 0x100068ca
cmp ebx, dword [ebp - 0x814]
jb 0x100068ca
push dword [ebp - 0x81c]
push edi
push edi
push dword [ebp - 0x80c]
call dword [sym.imp.KERNEL32.dll_SetFileTime]
mov esi, 0x8000
push esi
push 0x40
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
mov dword [ebp - 0x810], eax
push 0x4000000
mov eax, 0x5000000
call fcn.1000324c
pop ecx
mov ebx, eax
jmp 0x100069e7
mov dword [ebp - 0x808], esi
cmp ebx, esi
ja 0x100069ae
mov dword [ebp - 0x808], ebx
push dword [ebp - 0x808]
sub ebx, dword [ebp - 0x808]
push dword [ebp - 0x810]
call fcn.100035bc
pop ecx
pop ecx
push edi
lea eax, [ebp - 0x818]
push eax
push dword [ebp - 0x808]
push dword [ebp - 0x810]
push dword [ebp - 0x80c]
call dword [sym.imp.KERNEL32.dll_WriteFile]
cmp ebx, edi
ja 0x1000699e
xor esi, esi
inc esi
jmp 0x100069f3
or esi, 0xffffffff
push dword [ebp - 0x80c]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x810], edi
je 0x10006a13
push dword [ebp - 0x810]
call dword [sym.imp.KERNEL32.dll_LocalFree]
mov ecx, dword [ebp - 4]
pop edi
mov eax, esi
pop esi
xor ecx, ebp
pop ebx
call fcn.10008f62
leave
ret