Function at 0x4c85f0
Capabilities:
Delete file
Receive data
Receive data on socket
Send data
Send data on socket
Send http request

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x56287d
mov eax, dword fs:[0]
push eax
push ecx
sub esp, 0x210
mov eax, dword [0x5c5604]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x190], ecx
mov byte [ebp - 0x191], 0
mov dword [ebp - 0x1a4], 0
mov dword [ebp - 0x198], 0
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x74]
call fcn.00402770
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x5c]
call fcn.00402770
mov byte [ebp - 4], 2
mov eax, 0x50
mov word [ebp - 0x1b0], ax
lea ecx, [ebp - 0x1b0]
push ecx
lea edx, [ebp - 0x5c]
push edx
lea eax, [ebp - 0x74]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.004c7450
add esp, 0x10
movzx edx, word [ebp - 0x1b0]
cmp edx, 0x1bb
jne 0x4c86c2
mov byte [ebp - 0x1a5], 0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x5c]
call fcn.00402640
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x74]
call fcn.00402640
mov al, byte [ebp - 0x1a5]
jmp 0x4c90b5
lea eax, [ebp - 0x74]
push eax
lea ecx, [ebp - 0xbc]
push ecx
call fcn.004c9d20
add esp, 8
mov dword [ebp - 0x204], eax
mov byte [ebp - 4], 3
movzx edx, word [ebp - 0x1b0]
push edx
lea eax, [ebp - 0xbc]
push eax
mov ecx, dword [ebp - 0x190]
call fcn.004c9a60
mov byte [ebp - 0x1a6], al
movzx ecx, byte [ebp - 0x1a6]
test ecx, ecx
jne 0x4c8725
mov dword [ebp - 0x200], 0x578538
push 0x5b8354
lea edx, [ebp - 0x200]
push edx
call fcn.005002f2
lea eax, [ebp - 0xbc]
push eax
mov ecx, dword [ebp - 0x190]
add ecx, 0x24
call fcn.004cd250
lea ecx, [ebp - 0x5c]
push ecx
lea edx, [ebp - 0x18c]
push edx
call fcn.004c9d20
add esp, 8
mov dword [ebp - 0x1fc], eax
mov eax, dword [ebp - 0x1fc]
mov dword [ebp - 0x1f8], eax
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x1f8]
push ecx
mov ecx, dword [ebp - 0x190]
add ecx, 0x24
call fcn.004c9e60
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x18c]
call fcn.00406be0
push 0
lea edx, [ebp - 0x8c]
push edx
mov ecx, dword [ebp - 0x190]
add ecx, 0x24
call fcn.004cd730
mov dword [ebp - 0x208], eax
mov byte [ebp - 4], 5
push 0
lea ecx, [ebp - 0x8c]
call fcn.004025e0
push eax
lea ecx, [ebp - 0x8c]
call fcn.00406b60
push eax
mov eax, dword [ebp - 0x190]
mov ecx, dword [eax + 8]
push ecx
call dword [sym.imp.WS2_32.dll_send]
mov dword [ebp - 0x1f4], eax
cmp dword [ebp - 0x1f4], 0xffffffff
jne 0x4c87fc
mov dword [ebp - 0x1ec], 3
push 0x5b808c
lea edx, [ebp - 0x1ec]
push edx
call fcn.005002f2
mov dword [ebp - 0x1a0], 0
mov dword [ebp - 0x1cc], 0
xorps xmm0, xmm0
movsd qword [ebp - 0x1c8], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x1bc], xmm0
mov byte [ebp - 0x199], 0
mov eax, dword [ebp + 0xc]
push eax
call fcn.004c99a0
add esp, 4
mov byte [ebp - 0x1a7], al
movzx ecx, byte [ebp - 0x1a7]
test ecx, ecx
je 0x4c8854
mov edx, dword [ebp + 0xc]
push edx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
push 0x57853c
mov eax, dword [ebp + 0xc]
push eax
lea ecx, [ebp - 0x1a4]
push ecx
call fcn.0050ac76
add esp, 0xc
cmp dword [ebp - 0x1a4], 0
jne 0x4c8890
mov dword [ebp - 0x1e8], 7
push 0x5b808c
lea edx, [ebp - 0x1e8]
push edx
call fcn.005002f2
push 0x1001
call fcn.0051367e
add esp, 4
mov dword [ebp - 0x198], eax
mov eax, dword [ebp - 0x190]
cmp dword [eax + 0x80], 0
je 0x4c88fd
mov ecx, dword [ebp - 0x190]
mov edx, dword [ebp - 0x190]
mov eax, dword [edx + 0x80]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x80]
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 0x1a8], al
movzx ecx, byte [ebp - 0x1a8]
test ecx, ecx
je 0x4c88fd
mov dword [ebp - 0x1e4], 0xb
push 0x5b808c
lea edx, [ebp - 0x1e4]
push edx
call fcn.005002f2
push 0
push 0x1000
mov eax, dword [ebp - 0x198]
push eax
mov ecx, dword [ebp - 0x190]
mov edx, dword [ecx + 8]
push edx
call dword [sym.imp.WS2_32.dll_recv]
mov dword [ebp - 0x1a0], eax
cmp dword [ebp - 0x1a0], 0xffffffff
jne 0x4c8945
mov dword [ebp - 0x1e0], 0xa
push 0x5b808c
lea eax, [ebp - 0x1e0]
push eax
call fcn.005002f2
cmp dword [ebp - 0x1a0], 0
jle 0x4c8f89
mov ecx, dword [ebp - 0x198]
add ecx, dword [ebp - 0x1a0]
mov byte [ecx], 0
movzx edx, byte [ebp - 0x199]
test edx, edx
jne 0x4c8e85
mov eax, dword [ebp - 0x198]
push eax
lea ecx, [ebp - 0x2c]
call fcn.00406c50
mov dword [ebp - 0x20c], eax
mov byte [ebp - 4], 6
push 0
push 0x578544
lea ecx, [ebp - 0x2c]
call fcn.00412e70
mov dword [ebp - 0x1c0], eax
cmp dword [ebp - 0x1c0], 0xffffffff
jne 0x4c89b8
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2c]
call fcn.00406be0
jmp 0x4c8f89
lea ecx, [ebp - 0x44]
call fcn.00406d60
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x1c0]
push ecx
mov edx, dword [ebp - 0x198]
push edx
lea ecx, [ebp - 0x44]
call fcn.00408160
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x144]
call fcn.004cc1d0
mov dword [ebp - 0x210], eax
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x144]
call fcn.00402350
mov dword [ebp - 0x1dc], eax
mov ecx, dword [ebp - 0x190]
mov edx, dword [ebp - 0x1dc]
mov dword [ecx + 4], edx
mov eax, dword [ebp - 0x190]
cmp dword [eax + 4], 0x190
jne 0x4c8a3d
mov dword [ebp - 0x1d8], 5
push 0x5b808c
lea ecx, [ebp - 0x1d8]
push ecx
call fcn.005002f2
mov edx, dword [ebp - 0x190]
cmp dword [edx + 4], 0x12c
jle 0x4c8c5c
mov eax, dword [ebp - 0x190]
cmp dword [eax + 4], 0x190
jge 0x4c8c5c
push 0x57854c
lea ecx, [ebp - 0xec]
call fcn.00406c50
mov dword [ebp - 0x214], eax
mov byte [ebp - 4], 9
lea ecx, [ebp - 0xec]
push ecx
lea edx, [ebp - 0x174]
push edx
lea ecx, [ebp - 0x144]
call fcn.004cc6e0
mov dword [ebp - 0x1f0], eax
mov eax, dword [ebp - 0x1f0]
mov dword [ebp - 0x1d0], eax
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x1d0]
push ecx
lea edx, [ebp - 0xa4]
push edx
call fcn.004c83c0
add esp, 8
mov dword [ebp - 0x218], eax
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x174]
call fcn.00406be0
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0xec]
call fcn.00406be0
push 0
push 0x578558
lea ecx, [ebp - 0xa4]
call fcn.00406940
test eax, eax
je 0x4c8b55
lea eax, [ebp - 0xa4]
push eax
lea ecx, [ebp - 0x5c]
call fcn.00407d60
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xa4]
call fcn.00402640
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x144]
call fcn.004cc490
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x44]
call fcn.00406be0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2c]
call fcn.00406be0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x8c]
call fcn.00406be0
jmp 0x4c873a
mov ecx, dword [ebp - 0x190]
cmp dword [ecx + 8], 0xffffffff
je 0x4c8b7e
mov edx, dword [ebp - 0x190]
mov eax, dword [edx + 8]
push eax
call dword [sym.imp.WS2_32.dll_closesocket]
mov ecx, dword [ebp - 0x190]
mov dword [ecx + 8], 0xffffffff
mov edx, dword [ebp - 0x198]
push edx
call fcn.00508cb9
add esp, 4
mov dword [ebp - 0x198], 0
mov eax, dword [ebp - 0x1a4]
push eax
call fcn.00509a51
add esp, 4
mov dword [ebp - 0x1a4], 0
mov ecx, dword [ebp + 0xc]
push ecx
lea ecx, [ebp - 0xa4]
call fcn.00402600
push eax
mov edx, dword [ebp - 0x190]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x190]
mov edx, dword [eax + 4]
call edx
mov byte [ebp - 0x1b1], al
mov al, byte [ebp - 0x1b1]
mov byte [ebp - 0x1a9], al
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xa4]
call fcn.00402640
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x144]
call fcn.004cc490
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x44]
call fcn.00406be0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2c]
call fcn.00406be0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x8c]
call fcn.00406be0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0xbc]
call fcn.00406be0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x5c]
call fcn.00402640
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x74]
call fcn.00402640
mov al, byte [ebp - 0x1a9]
jmp 0x4c90b5
push 0x578568
lea ecx, [ebp - 0xd4]
call fcn.00406c50
mov dword [ebp - 0x21c], eax
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0xd4]
push ecx
lea edx, [ebp - 0x15c]
push edx
lea ecx, [ebp - 0x144]
call fcn.004cc6e0
mov dword [ebp - 0x1d4], eax
mov ecx, dword [ebp - 0x1d4]
call fcn.00406b60
push eax
call fcn.0051729a
add esp, 4
fstp qword [ebp - 0x1c8]
lea ecx, [ebp - 0x15c]
call fcn.00406be0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xd4]
call fcn.00406be0
mov eax, dword [ebp - 0x1a0]
sub eax, dword [ebp - 0x1c0]
sub eax, 4
mov dword [ebp - 0x1cc], eax
cmp dword [ebp - 0x1cc], 0
jle 0x4c8d85
mov ecx, dword [ebp - 0x1a4]
push ecx
push 1
mov edx, dword [ebp - 0x1cc]
push edx
mov eax, dword [ebp - 0x1c0]
mov ecx, dword [ebp - 0x198]
lea edx, [ecx + eax + 4]
push edx
call fcn.00509fb1
add esp, 0x10
cvtsi2sd xmm0, dword [ebp - 0x1a0]
addsd xmm0, qword [ebp - 0x1bc]
movsd qword [ebp - 0x1bc], xmm0
mov eax, dword [ebp - 0x190]
cmp dword [eax + 0x80], 0
je 0x4c8d85
sub esp, 8
movsd xmm0, qword [ebp - 0x1bc]
movsd qword [esp], xmm0
sub esp, 8
movsd xmm0, qword [ebp - 0x1c8]
movsd qword [esp], xmm0
push 0
mov ecx, dword [ebp - 0x190]
mov edx, dword [ecx + 0x7c]
push edx
mov eax, dword [ebp - 0x190]
mov ecx, dword [ebp - 0x190]
mov edx, dword [ecx + 0x80]
mov edx, dword [edx]
mov ecx, dword [eax + 0x80]
mov eax, dword [edx]
call eax
movsd xmm0, qword [ebp - 0x1c8]
ucomisd xmm0, qword [ebp - 0x1bc]
lahf
test ah, 0x44
jp 0x4c8e2b
mov ecx, dword [ebp - 0x190]
cmp dword [ecx + 0x80], 0
je 0x4c8df8
sub esp, 8
movsd xmm0, qword [ebp - 0x1bc]
movsd qword [esp], xmm0
sub esp, 8
movsd xmm0, qword [ebp - 0x1c8]
movsd qword [esp], xmm0
push 2
mov edx, dword [ebp - 0x190]
mov eax, dword [edx + 0x7c]
push eax
mov ecx, dword [ebp - 0x190]
mov edx, dword [ebp - 0x190]
mov eax, dword [edx + 0x80]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x80]
mov eax, dword [edx]
call eax
mov byte [ebp - 0x191], 1
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x144]
call fcn.004cc490
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x44]
call fcn.00406be0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2c]
call fcn.00406be0
jmp 0x4c8f96
mov byte [ebp - 0x199], 1
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x144]
call fcn.004cc490
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x44]
call fcn.00406be0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2c]
call fcn.00406be0
jmp 0x4c8f89
mov ecx, dword [ebp - 0x1a4]
push ecx
push 1
mov edx, dword [ebp - 0x1a0]
push edx
mov eax, dword [ebp - 0x198]
push eax
call fcn.00509fb1
add esp, 0x10
cvtsi2sd xmm0, dword [ebp - 0x1a0]
addsd xmm0, qword [ebp - 0x1bc]
movsd qword [ebp - 0x1bc], xmm0
mov ecx, dword [ebp - 0x190]
cmp dword [ecx + 0x80], 0
je 0x4c8f15
sub esp, 8
movsd xmm0, qword [ebp - 0x1bc]
movsd qword [esp], xmm0
sub esp, 8
movsd xmm0, qword [ebp - 0x1c8]
movsd qword [esp], xmm0
push 0
mov edx, dword [ebp - 0x190]
mov eax, dword [edx + 0x7c]
push eax
mov ecx, dword [ebp - 0x190]
mov edx, dword [ebp - 0x190]
mov eax, dword [edx + 0x80]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x80]
mov eax, dword [edx]
call eax
movsd xmm0, qword [ebp - 0x1bc]
comisd xmm0, xmmword [ebp - 0x1c8]
jb 0x4c8f89
mov byte [ebp - 0x191], 1
mov ecx, dword [ebp - 0x190]
cmp dword [ecx + 0x80], 0
je 0x4c8f87
sub esp, 8
movsd xmm0, qword [ebp - 0x1bc]
movsd qword [esp], xmm0
sub esp, 8
movsd xmm0, qword [ebp - 0x1c8]
movsd qword [esp], xmm0
push 2
mov edx, dword [ebp - 0x190]
mov eax, dword [edx + 0x7c]
push eax
mov ecx, dword [ebp - 0x190]
mov edx, dword [ebp - 0x190]
mov eax, dword [edx + 0x80]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x80]
mov eax, dword [edx]
call eax
jmp 0x4c8f96
cmp dword [ebp - 0x1a0], 0
jg 0x4c88a3
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x8c]
call fcn.00406be0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0xbc]
call fcn.00406be0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x5c]
call fcn.00402640
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x74]
call fcn.00402640
jmp 0x4c903b
mov dword [ebp - 4], 0xffffffff
jmp 0x4c904d
jmp 0x4c9056
cmp dword [ebp - 0x198], 0
je 0x4c9078
mov ecx, dword [ebp - 0x198]
push ecx
call fcn.00508cb9
add esp, 4
mov dword [ebp - 0x198], 0
cmp dword [ebp - 0x1a4], 0
je 0x4c909a
mov edx, dword [ebp - 0x1a4]
push edx
call fcn.00509a51
add esp, 4
mov dword [ebp - 0x1a4], 0
movzx eax, byte [ebp - 0x191]
test eax, eax
jne 0x4c90af
mov ecx, dword [ebp + 0xc]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov al, byte [ebp - 0x191]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.004ee000
mov esp, ebp
pop ebp
ret 8