Function at 0x10004a50
Capabilities:
Check http status code
Delete file
Initialize winhttp library
Move file
Prepare http request
Read http header
Receive http response

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x460
mov eax, dword [0x10014080]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
xor ebx, ebx
push edi
push 0x2000
mov dword [ebp - 0x410], ebx
mov dword [ebp - 0x414], ebx
mov dword [ebp - 0x424], ebx
call fcn.10004f0d
push 0x206
mov esi, eax
lea ecx, [ebp - 0x40a]
xor eax, eax
push ebx
push ecx
mov dword [ebp - 0x420], 0x2000
mov word [ebp - 0x40c], ax
call fcn.1000bad0
mov ecx, dword [ebp + 8]
add esp, 0x10
mov dword [ebp - 0x41c], ebx
mov edi, 0x1000
mov eax, esi
sub ecx, esi
lea edx, [edi + 0x7fffeffe]
test edx, edx
je 0x10004ade
movzx edx, word [ecx + eax]
test dx, dx
je 0x10004ade
mov word [eax], dx
add eax, 2
dec edi
jne 0x10004ac0
jmp 0x10004ae2
test edi, edi
jne 0x10004ae5
sub eax, 2
xor ecx, ecx
push 0x38
push ecx
lea edx, [ebp - 0x45c]
push edx
mov word [eax], cx
call fcn.1000bad0
add esp, 0xc
or eax, 0xffffffff
mov dword [ebp - 0x458], eax
mov dword [ebp - 0x44c], eax
mov dword [ebp - 0x430], eax
mov dword [ebp - 0x428], eax
mov eax, esi
mov dword [ebp - 0x460], 0x3c
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x10004b26
lea ecx, [ebp - 0x460]
push ecx
sub eax, edx
push 0
sar eax, 1
push eax
push esi
call dword [sym.imp.WINHTTP.dll_WinHttpCrackUrl]
test eax, eax
jne 0x10004b5d
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x410], eax
mov edi, ebx
jmp 0x10004db9
push 0
push 0
push 0
push 0
push str.Funshion_4.0
call dword [sym.imp.WINHTTP.dll_WinHttpOpen]
mov edi, eax
mov dword [ebp - 0x418], edi
test edi, edi
je 0x10004b9b
push 0x7530
push 0x7530
push 0xea60
push 0xea60
push edi
call dword [sym.imp.WINHTTP.dll_WinHttpSetTimeouts]
test eax, eax
jne 0x10004bac
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x410], eax
jmp 0x10004db9
xor edx, edx
push 0x1fe
push edx
lea eax, [ebp - 0x202]
push eax
mov word [ebp - 0x204], dx
call fcn.1000bad0
add esp, 0xc
cmp dword [ebp - 0x44c], 0x7ffffffe
jbe 0x10004be1
xor ecx, ecx
mov word [ebp - 0x204], cx
jmp 0x10004c37
mov edi, dword [ebp - 0x450]
lea eax, [ebp - 0x204]
mov ecx, eax
mov edx, 0xff
sub edi, ecx
jmp 0x10004c00
mov ecx, dword [ebp - 0x44c]
lea ecx, [ecx + edx - 0xff]
test ecx, ecx
je 0x10004c25
movzx ecx, word [edi + eax]
test cx, cx
je 0x10004c25
mov word [eax], cx
add eax, 2
dec edx
jne 0x10004c00
jmp 0x10004c29
test edx, edx
jne 0x10004c2c
sub eax, 2
mov edi, dword [ebp - 0x418]
xor edx, edx
mov word [eax], dx
mov eax, dword [ebp - 0x448]
push 0
push eax
lea ecx, [ebp - 0x204]
push ecx
push edi
call dword [sym.imp.WINHTTP.dll_WinHttpConnect]
mov ecx, eax
mov dword [ebp - 0x41c], ecx
test ecx, ecx
jne 0x10004c6b
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x410], eax
jmp 0x10004db9
mov edx, dword [ebp - 0x434]
xor eax, eax
cmp dword [ebp - 0x454], 2
setne al
dec eax
and eax, 0x800000
push eax
push 0
push 0
push 0
push edx
push 0x100124a0
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpOpenRequest]
mov ebx, eax
test ebx, ebx
jne 0x10004cae
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x410], eax
jmp 0x10004db9
push 0
push 0
push 0
push 0
push 0
push 0
push ebx
call dword [sym.imp.WINHTTP.dll_WinHttpSendRequest]
test eax, eax
jne 0x10004cd6
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x410], eax
jmp 0x10004db9
push 0
push ebx
call dword [sym.imp.WINHTTP.dll_WinHttpReceiveResponse]
test eax, eax
jne 0x10004cf4
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x410], eax
jmp 0x10004db9
push 0
lea eax, [ebp - 0x414]
push eax
push esi
push 0
push 0x13
push ebx
mov dword [ebp - 0x414], 0x1000
call dword [sym.imp.WINHTTP.dll_WinHttpQueryHeaders]
push esi
call fcn.10005df2
add esp, 4
cmp eax, 0xc8
jne 0x10004ba1
mov edi, dword [sym.imp.WINHTTP.dll_WinHttpReadData]
lea ecx, [ecx]
lea ecx, [ebp - 0x414]
push ecx
push ebx
mov dword [ebp - 0x414], 0
call dword [sym.imp.WINHTTP.dll_WinHttpQueryDataAvailable]
test eax, eax
je 0x10004da7
mov edx, dword [ebp - 0x414]
cmp edx, dword [ebp - 0x420]
jbe 0x10004d78
push esi
call fcn.100057d1
mov eax, dword [ebp - 0x414]
inc eax
push eax
mov dword [ebp - 0x420], eax
call fcn.10004f0d
add esp, 8
mov esi, eax
mov eax, dword [ebp - 0x414]
push eax
push 0
push esi
call fcn.1000bad0
mov edx, dword [ebp - 0x414]
add esp, 0xc
lea ecx, [ebp - 0x424]
push ecx
push edx
push esi
push ebx
call edi
cmp dword [ebp - 0x414], 0
ja 0x10004d30
jmp 0x10004db3
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x410], eax
mov edi, dword [ebp - 0x418]
push esi
call fcn.100057d1
mov esi, dword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
add esp, 4
test ebx, ebx
je 0x10004dcf
push ebx
call esi
mov eax, dword [ebp - 0x41c]
test eax, eax
je 0x10004ddc
push eax
call esi
test edi, edi
je 0x10004de3
push edi
call esi
mov esi, dword [ebp - 0x410]
test esi, esi
jne 0x10004e10
push 1
push esi
lea eax, [ebp - 0x40c]
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
pop edi
mov eax, esi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10004f18
mov esp, ebp
pop ebp
ret
lea ecx, [ebp - 0x40c]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov ecx, dword [ebp - 4]
pop edi
mov eax, esi
pop esi
xor ecx, ebp
pop ebx
call fcn.10004f18
mov esp, ebp
pop ebp
ret