Function at 0x4343f7
Capabilities:
Check for software breakpoints
Check http status code
Connect to http server
Create http request
Delete file
Parse url
Send data
Send http request

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x47b914
mov eax, dword fs:[0]
push eax
mov eax, 0x39a0
call fcn.00450110
mov eax, dword [0x49d034]
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 dword [ebp - 0x38fc], edx
mov ebx, ecx
mov eax, dword [ebp + 0x10]
lea ecx, [ebp - 0x3984]
mov edi, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov dword [ebp - 0x3910], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x3938], eax
lea eax, [ebp - 0x38f8]
push eax
push str.PerformRemoteOp
mov dword [ebp - 0x3918], edi
mov dword [ebp - 0x38f8], 0x4b1
call fcn.0041dfa0
xor edx, edx
mov dword [ebp - 4], edx
lea edi, [ebp - 0x38f4]
mov eax, dword [0x4a0364]
push 9
pop ecx
mov dword [ebp - 0x3914], eax
xor eax, eax
push 0x80
rep stosd dword es:[edi], eax
push edx
lea eax, [ebp - 0xd0]
mov dword [ebp - 0x3934], edx
push eax
mov dword [ebp - 0x3924], edx
mov dword [ebp - 0x390c], edx
mov dword [ebp - 0x3930], 4
mov dword [ebp - 0x392c], edx
call fcn.00451b90
add esp, 0xc
call fcn.00409480
push eax
lea ecx, [ebp - 0x3908]
call fcn.00408c39
mov byte [ebp - 4], 2
call fcn.00409480
push eax
lea ecx, [ebp - 0x393c]
call fcn.00408c39
mov byte [ebp - 4], 4
lea eax, [ebp - 0x50]
mov dword [ebp - 0x3974], eax
xor edx, edx
lea eax, [ebp - 0x28d0]
mov dword [ebp - 0x3904], edx
mov dword [ebp - 0x3968], eax
mov ecx, 0x400
xor eax, eax
mov dword [ebp - 0x3900], edx
mov word [ebp - 0x3960], ax
lea eax, [ebp - 0x18d0]
mov dword [ebp - 0x395c], eax
lea eax, [ebp - 0x10d0]
mov dword [ebp - 0x3954], eax
lea eax, [ebp - 0x38d0]
mov dword [ebp - 0x394c], eax
mov edi, 0x800
mov dword [ebp - 0x3978], 0x3c
lea eax, [ebp - 0x8d0]
mov dword [ebp - 0x3970], 0x20
mov dword [ebp - 0x396c], edx
mov dword [ebp - 0x3964], edi
mov dword [ebp - 0x3958], ecx
mov dword [ebp - 0x3950], ecx
mov dword [ebp - 0x3948], edi
mov dword [ebp - 0x3944], eax
mov dword [ebp - 0x3940], ecx
cmp ebx, 4
jl 0x434c79
test esi, esi
je 0x434c79
cmp word [esi], dx
je 0x434c79
mov eax, dword [ebp - 0x3910]
mov edi, dword [ebp - 0x3918]
test eax, eax
je 0x4345be
test edi, edi
je 0x434c79
cmp ebx, 5
je 0x434c57
cmp ebx, 6
je 0x434c57
push esi
push str.Downloading:__s
call fcn.0041dafb
pop ecx
xor ebx, ebx
pop ecx
test edi, edi
je 0x4345fa
cmp dword [ebp - 0x3910], ebx
jne 0x4345fa
mov dword [ebp - 0x3900], edi
cmp word [edi], bx
je 0x434c79
cmp dword [0x4a02b0], 0
jle 0x434612
mov dword [ebp - 0x38f8], 0x2e3
jmp 0x434c83
cmp byte [0x4a0374], 0
jne 0x434635
push ebx
push ebx
push ebx
push ebx
push dword [0x4a0308]
call dword [sym.imp.WININET.dll_InternetOpenW]
mov ebx, eax
mov dword [ebp - 0x3920], ebx
jmp 0x43467b
movzx eax, word [0x4a037c]
push eax
push dword [0x4a0378]
lea eax, [ebp - 0x28d0]
push str._s:_hu
push 0x800
push eax
call fcn.0040af2d
add esp, 0x14
lea eax, [ebp - 0x28d0]
push ebx
push ebx
push eax
push 3
push dword [0x4a0308]
call dword [sym.imp.WININET.dll_InternetOpenW]
mov ebx, eax
mov dword [ebp - 0x3920], eax
test ebx, ebx
je 0x434c83
cmp dword [0x4a02b0], 0
jle 0x43469b
mov dword [ebp - 0x38f8], 0x2e3
jmp 0x43485d
mov edi, dword [sym.imp.WININET.dll_InternetSetOptionW]
lea eax, [ebp - 0x3914]
push 4
push eax
push 2
push ebx
call edi
test eax, eax
je 0x43485d
push 4
lea eax, [ebp - 0x3914]
push eax
push 6
push ebx
call edi
test eax, eax
je 0x43485d
push 4
lea eax, [ebp - 0x3914]
push eax
push 5
push ebx
call edi
test eax, eax
je 0x43485d
mov ecx, esi
xor edi, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, di
jne 0x4346ea
sub ecx, edx
sar ecx, 1
imul eax, ecx, 3
push 2
mov dword [ebp - 0x3924], eax
inc eax
push eax
call fcn.0046534a
mov edi, eax
mov dword [ebp - 0x391c], edi
pop ecx
pop ecx
test edi, edi
jne 0x434728
mov dword [ebp - 0x38f8], 8
jmp 0x43485d
push 0x2000000
lea eax, [ebp - 0x3924]
push eax
push edi
push esi
call dword [sym.imp.WININET.dll_InternetCanonicalizeUrlW]
test eax, eax
je 0x434837
mov eax, dword [ebp - 0x3900]
test eax, eax
je 0x43477a
lea ecx, [ebp - 0x38f4]
push ecx
xor ecx, ecx
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesExW]
test eax, eax
jne 0x434774
push 9
pop ecx
lea edi, [ebp - 0x38f4]
rep stosd dword es:[edi], eax
mov edi, dword [ebp - 0x391c]
mov eax, dword [ebp - 0x3900]
cmp dword [ebp - 0x38fc], 1
jne 0x434817
test eax, eax
je 0x434817
cmp dword [ebp - 0x38d4], 0
je 0x4347db
mov dword [ebp - 0x3928], 9
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
test esi, esi
jne 0x434817
cmp eax, 0x20
je 0x4347bf
cmp eax, 5
jne 0x434817
push 0xc8
call dword [sym.imp.KERNEL32.dll_Sleep]
sub dword [ebp - 0x3928], 1
mov eax, dword [ebp - 0x3900]
jns 0x4347a2
jmp 0x434817
push 9
pop ebx
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
test esi, esi
jne 0x434811
cmp eax, 0x20
je 0x4347fb
cmp eax, 5
jne 0x434811
push 0xc8
call dword [sym.imp.KERNEL32.dll_Sleep]
sub ebx, 1
mov eax, dword [ebp - 0x3900]
jns 0x4347de
mov ebx, dword [ebp - 0x3920]
lea eax, [ebp - 0x3978]
push eax
xor eax, eax
push eax
push eax
push edi
call dword [sym.imp.WININET.dll_InternetCrackUrlW]
test eax, eax
jne 0x434869
mov dword [ebp - 0x38f8], 0xb
mov ebx, dword [ebp - 0x3934]
push edi
call fcn.00454c63
pop ecx
test ebx, ebx
je 0x43484f
push ebx
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov ebx, dword [ebp - 0x3920]
test ebx, ebx
je 0x434c83
push ebx
call dword [sym.imp.WININET.dll_InternetCloseHandle]
jmp 0x434c83
mov ecx, dword [ebp - 0x396c]
cmp ecx, 1
je 0x4348c4
cmp ecx, 2
je 0x4348a5
lea eax, [ecx - 3]
cmp eax, 1
ja 0x4348dd
cmp word [ebp - 0x3960], 0
jne 0x4348a1
cmp ecx, 3
jne 0x434895
push 0x50
pop eax
jmp 0x43489a
mov eax, 0x1bb
mov word [ebp - 0x3960], ax
push 3
jmp 0x4348bb
cmp word [ebp - 0x3960], 0
jne 0x4348b9
push 0x46
pop eax
mov word [ebp - 0x3960], ax
push 2
pop esi
mov dword [ebp - 0x3904], esi
jmp 0x4348e3
cmp word [ebp - 0x3960], 0
jne 0x4348d8
push 0x15
pop eax
mov word [ebp - 0x3960], ax
xor esi, esi
inc esi
jmp 0x4348bc
mov esi, dword [ebp - 0x3904]
xor eax, eax
mov ecx, 0x8000000
push eax
cmp esi, 1
cmove eax, ecx
push eax
push esi
lea eax, [ebp - 0x10d0]
push eax
lea eax, [ebp - 0x18d0]
push eax
push dword [ebp - 0x3960]
lea eax, [ebp - 0x28d0]
push eax
push ebx
call dword [sym.imp.WININET.dll_InternetConnectW]
mov ebx, eax
test ebx, ebx
je 0x43483d
cmp byte [0x4a037e], 0
je 0x43495d
mov ecx, dword [0x4a0380]
push dword [ecx - 0xc]
push ecx
push 0x2b
push ebx
call dword [sym.imp.WININET.dll_InternetSetOptionW]
test eax, eax
je 0x43483d
mov eax, dword [0x4a0384]
push dword [eax - 0xc]
push eax
push 0x2c
push ebx
call dword [sym.imp.WININET.dll_InternetSetOptionW]
test eax, eax
je 0x43483d
lea ecx, [ebp - 0x38d0]
call fcn.0040b056
push eax
lea eax, [ebp - 0x38d0]
push eax
lea ecx, [ebp - 0x3908]
call fcn.0040afd8
lea ecx, [ebp - 0x8d0]
call fcn.0040b056
push eax
lea eax, [ebp - 0x8d0]
push eax
lea ecx, [ebp - 0x3908]
call fcn.0040c3a0
mov eax, esi
sub eax, 1
je 0x434abd
sub eax, 1
je 0x434a98
sub eax, 1
jne 0x43483d
cmp dword [ebp - 0x396c], 4
mov ecx, 0x84c8f300
mov eax, 0x8448f300
cmove eax, ecx
xor ecx, ecx
cmp dword [ebp - 0x38fc], 0
push ecx
push eax
push ecx
push ecx
push ecx
push dword [ebp - 0x3908]
mov ecx, 0x48ff2c
mov eax, str.POST
cmovne eax, ecx
push eax
push ebx
call dword [sym.imp.WININET.dll_HttpOpenRequestW]
mov esi, eax
test esi, esi
je 0x43483d
mov eax, dword [ebp - 0x3938]
test eax, eax
je 0x434a26
push 0x10000000
push 0xffffffffffffffff
push eax
push esi
call dword [sym.imp.WININET.dll_HttpAddRequestHeadersW]
test eax, eax
jne 0x434a26
push esi
call dword [sym.imp.WININET.dll_InternetCloseHandle]
jmp 0x43483d
xor eax, eax
cmp dword [ebp - 0x38fc], eax
jne 0x434a87
push 9
pop ecx
lea edi, [ebp - 0x39a8]
mov dword [ebp - 0x39ac], 0x28
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x3910]
test eax, eax
je 0x434a53
mov eax, dword [eax]
jmp 0x434a59
mov eax, dword [ebp - 0x38d4]
mov dword [ebp - 0x3990], eax
xor eax, eax
push eax
push eax
push eax
lea eax, [ebp - 0x39ac]
push eax
push esi
call dword [sym.imp.WININET.dll_HttpSendRequestExW]
test eax, eax
jne 0x434aee
push esi
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov edi, dword [ebp - 0x391c]
xor eax, eax
jmp 0x434ae4
push eax
push eax
push eax
push eax
push esi
call dword [sym.imp.WININET.dll_HttpSendRequestW]
test eax, eax
jne 0x434aee
jmp 0x434a1a
cmp dword [ebp - 0x38fc], 1
jne 0x43483d
xor eax, eax
push eax
push 0x84000000
push eax
push dword [ebp - 0x3908]
push ebx
call dword [sym.imp.WININET.dll_GopherOpenFileW]
jmp 0x434ae4
xor eax, eax
mov ecx, 0x40000000
cmp dword [ebp - 0x38fc], 0
push eax
push 2
mov eax, SysReAllocString
cmove eax, ecx
push eax
push dword [ebp - 0x3908]
push ebx
call dword [sym.imp.WININET.dll_FtpOpenFileW]
mov esi, eax
test esi, esi
je 0x43483d
mov edi, dword [ebp - 0x3918]
test edi, edi
jne 0x434aff
xor eax, eax
jmp 0x434c37
cmp dword [0x4a02b0], 0
jle 0x434b17
mov dword [ebp - 0x38f8], 0x2e3
jmp 0x434c3d
cmp dword [ebp - 0x38fc], 0
jne 0x434bd6
push dword [sym.imp.WININET.dll_InternetWriteFile]
mov edx, edi
mov ecx, esi
push dword [ebp - 0x3910]
call fcn.0041cc87
mov dword [ebp - 0x38f8], eax
pop ecx
pop ecx
test eax, eax
jne 0x434c3d
cmp dword [ebp - 0x3904], 3
jne 0x434c3d
push eax
push eax
push eax
push esi
call dword [sym.imp.WININET.dll_HttpEndRequestW]
lea eax, [ebp - 0x392c]
push eax
lea eax, [ebp - 0x3930]
push eax
lea eax, [ebp - 0x390c]
push eax
push 0x20000013
push esi
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
je 0x434c3d
mov eax, dword [ebp - 0x390c]
cmp eax, 0xc8
je 0x434bb7
cmp eax, 0xc9
je 0x434bb7
cmp eax, 0xcc
je 0x434c3d
mov dword [ebp - 0x38f8], 9
jmp 0x434c3d
cmp eax, 0xcc
je 0x434c3d
push dword [sym.imp.WININET.dll_InternetReadFile]
xor eax, eax
xor edx, edx
push eax
push eax
mov ecx, esi
call fcn.0041ce70
add esp, 0xc
jmp 0x434c3d
cmp dword [ebp - 0x3904], 3
jne 0x434c1c
lea eax, [ebp - 0x392c]
push eax
lea eax, [ebp - 0x3930]
push eax
lea eax, [ebp - 0x390c]
push eax
push 0x20000013
push esi
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
je 0x434c3d
cmp dword [ebp - 0x390c], 0xce
je 0x434c1c
cmp dword [ebp - 0x390c], 0xc8
jne 0x434c3d
push dword [sym.imp.WININET.dll_InternetReadFile]
xor eax, eax
mov edx, edi
push eax
push dword [ebp - 0x3910]
mov ecx, esi
call fcn.0041ce70
add esp, 0xc
mov dword [ebp - 0x38f8], eax
mov edi, dword [ebp - 0x391c]
push esi
call dword [sym.imp.WININET.dll_InternetCloseHandle]
test edi, edi
je 0x434844
jmp 0x43483d
push edx
push dword [ebp - 0x3938]
mov edx, dword [ebp - 0x38fc]
mov ecx, ebx
push eax
push edi
push esi
call fcn.00433354
add esp, 0x14
mov dword [ebp - 0x38f8], eax
jmp 0x434c83
mov dword [ebp - 0x38f8], 0x57
mov esi, dword [ebp - 0x38f8]
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x393c]
lea ecx, [ecx - 0x10]
call fcn.00409575
xor eax, eax
mov byte [ebp - 4], al
mov ecx, dword [ebp - 0x3908]
add ecx, 0xfffffff0
call fcn.00409575
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3984]
call fcn.0041e015
mov eax, esi
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.0044f515
leave
ret