Function at 0x436f80
Capabilities:
Connect to http server
Create http request
Get http content length
Send data
Send http request

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x484ef0
mov eax, dword fs:[0]
push eax
sub esp, 0x8a4
mov eax, dword [0x4a86f0]
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 eax, dword [ebp + 8]
xor ebx, ebx
mov edi, dword [ebp + 0x10]
mov esi, dword [ebp + 0xc]
push 0x24c
mov dword [ebp - 0x86c], eax
lea eax, [ebp - 0x840]
push ebx
push eax
mov dword [ebp - 0x874], edi
mov dword [ebp - 0x858], 0
mov dword [ebp - 0x848], ebx
mov dword [ebp - 0x844], ebx
call fcn.0046a330
push 0x24c
lea eax, [ebp - 0x5f0]
mov dword [ebp - 0x5f4], ebx
push ebx
push eax
call fcn.0046a330
add esp, 0x18
lea eax, [ebp - 0x844]
xorps xmm0, xmm0
movlpd qword [ebp - 0x8b0], xmm0
push eax
push esi
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp eax, 0xffffffff
jne 0x437038
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [edi], eax
xor eax, eax
jmp 0x4377fc
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
mov ecx, dword [ebp - 0x828]
xor eax, eax
or eax, dword [ebp - 0x824]
xor esi, esi
mov dword [ebp - 0x854], eax
xor eax, eax
push 0xfe
push eax
mov word [ebp - 0x194], ax
lea eax, [ebp - 0x192]
push eax
mov dword [ebp - 0x84c], ecx
mov dword [ebp - 0x860], esi
mov dword [ebp - 0x864], ebx
mov dword [ebp - 0x868], ebx
mov dword [ebp - 0x878], ebx
call fcn.0046a330
xor eax, eax
push 0x3e
push eax
mov word [ebp - 0x94], ax
lea eax, [ebp - 0x92]
push eax
call fcn.0046a330
xor eax, eax
push 0x3e
push eax
mov word [ebp - 0x54], ax
lea eax, [ebp - 0x52]
push eax
call fcn.0046a330
xor eax, eax
push 0x1fe
push eax
mov word [ebp - 0x394], ax
lea eax, [ebp - 0x392]
push eax
call fcn.0046a330
lea eax, [ebp - 0x85c]
mov dword [ebp - 0x850], ebx
push eax
lea eax, [ebp - 0x850]
mov dword [ebp - 0x85c], ebx
push eax
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x94]
push eax
lea eax, [ebp - 0x394]
push eax
lea eax, [ebp - 0x194]
push eax
push dword [ebp - 0x86c]
call fcn.00438dc0
mov eax, dword [ebp - 0x850]
add esp, 0x4c
mov dword [ebp - 4], esi
cmp eax, 5
jne 0x437225
lea eax, [ebp - 0x5f4]
push eax
lea eax, [ebp - 0x394]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp eax, 0xffffffff
jne 0x43715e
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [edi], eax
mov dword [ebp - 0x88c], eax
lea eax, [ebp - 0x88c]
push 0x4a2acc
push eax
call fcn.00469859
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
cmp dword [ebp + 0x14], 0
je 0x4371b4
lea eax, [ebp - 0x5e0]
push eax
lea eax, [ebp - 0x830]
push eax
call dword [sym.imp.KERNEL32.dll_CompareFileTime]
xor ebx, ebx
test eax, eax
sets bl
push ebx
push dword [ebp - 0x5dc]
mov dword [ebp - 0x848], ebx
push dword [ebp - 0x5e0]
push dword [ebp - 0x82c]
push dword [ebp - 0x830]
push str.CheckNewFile____CompareFileTime__d___d____0___d
call fcn.0045f4c0
add esp, 0x18
jmp 0x4371bf
mov ebx, 1
mov dword [ebp - 0x848], ebx
cmp dword [ebp + 0x18], 0
je 0x43720c
mov edx, dword [ebp - 0x5d8]
xor ecx, ecx
or ecx, dword [ebp - 0x5d4]
test ebx, ebx
mov esi, dword [ebp - 0x854]
mov ebx, dword [ebp - 0x84c]
je 0x4371f2
cmp esi, ecx
jne 0x4371eb
cmp ebx, edx
je 0x4371f2
mov eax, 1
jmp 0x4371f4
xor eax, eax
push eax
push edx
push ecx
push ebx
push esi
push str.CheckNewFile____Size:__I64u____I64u___d
mov dword [ebp - 0x848], eax
call fcn.0045f4c0
add esp, 0x18
mov eax, dword [edi]
mov dword [ebp - 0x880], eax
lea eax, [ebp - 0x880]
push 0x4a2acc
push eax
call fcn.00469859
cmp eax, 3
je 0x437246
cmp eax, 4
je 0x437246
cmp eax, 1
je 0x437246
mov dword [edi], 0x57
mov dword [ebp - 4], 0xffffffff
jmp 0x4377d0
push 0
push 0
push 0
push 0
push str.CheckNewFile
call dword [sym.imp.WININET.dll_InternetOpenW]
mov esi, eax
mov dword [ebp - 0x860], esi
test esi, esi
je 0x437756
cmp dword [0x4c2e50], 0
jne 0x437756
mov eax, dword [ebp - 0x850]
cmp eax, 3
je 0x437425
cmp eax, 4
je 0x437425
cmp eax, 1
jne 0x43723a
push 0
push 0x8000000
push eax
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x94]
push eax
push dword [ebp - 0x85c]
lea eax, [ebp - 0x194]
push eax
push esi
call dword [sym.imp.WININET.dll_InternetConnectW]
mov dword [ebp - 0x864], eax
test eax, eax
je 0x4373f7
cmp dword [0x4c2e50], 0
jne 0x4373f7
push 0
push 0x10
lea ecx, [ebp - 0x5f4]
push ecx
lea ecx, [ebp - 0x394]
push ecx
push eax
call dword [sym.imp.WININET.dll_FtpFindFirstFileW]
mov dword [ebp - 0x878], eax
test eax, eax
je 0x4373c9
cmp dword [0x4c2e50], 0
jne 0x4373c9
cmp dword [ebp + 0x14], 0
je 0x437358
lea eax, [ebp - 0x5e0]
push eax
lea eax, [ebp - 0x830]
push eax
call dword [sym.imp.KERNEL32.dll_CompareFileTime]
xor ebx, ebx
test eax, eax
sets bl
push ebx
push dword [ebp - 0x5dc]
mov dword [ebp - 0x848], ebx
push dword [ebp - 0x5e0]
push dword [ebp - 0x82c]
push dword [ebp - 0x830]
push str.CheckNewFile____CompareFileTime__d___d____0___d
call fcn.0045f4c0
add esp, 0x18
jmp 0x437363
mov ebx, 1
mov dword [ebp - 0x848], ebx
cmp dword [ebp + 0x18], 0
je 0x4373b0
mov edx, dword [ebp - 0x5d8]
xor ecx, ecx
or ecx, dword [ebp - 0x5d4]
test ebx, ebx
mov esi, dword [ebp - 0x854]
mov ebx, dword [ebp - 0x84c]
je 0x437396
cmp esi, ecx
jne 0x43738f
cmp ebx, edx
je 0x437396
mov eax, 1
jmp 0x437398
xor eax, eax
push eax
push edx
push ecx
push ebx
push esi
push str.CheckNewFile____Size:__I64u____I64u___d
mov dword [ebp - 0x848], eax
call fcn.0045f4c0
add esp, 0x18
mov eax, dword [edi]
mov dword [ebp - 0x884], eax
lea eax, [ebp - 0x884]
push 0x4a2acc
push eax
call fcn.00469859
push 0
push 0
push 0
push str.CheckNewFile____FtpFindFirstFile
push 0
call fcn.0042e900
add esp, 0x14
mov dword [edi], eax
mov dword [ebp - 0x87c], eax
lea eax, [ebp - 0x87c]
push 0x4a2acc
push eax
call fcn.00469859
push 0
push 0
push 0
push str.CheckNewFile____InternetConnect
push 0
call fcn.0042e900
add esp, 0x14
mov dword [edi], eax
mov dword [ebp - 0x894], eax
lea eax, [ebp - 0x894]
push 0x4a2acc
push eax
call fcn.00469859
push 0
push 0x8000000
push 3
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x94]
push eax
push dword [ebp - 0x85c]
lea eax, [ebp - 0x194]
push eax
push esi
call dword [sym.imp.WININET.dll_InternetConnectW]
mov dword [ebp - 0x864], eax
test eax, eax
je 0x437728
cmp dword [0x4c2e50], 0
jne 0x437728
push 0
push 0x4400200
push 0
push 0
push 0
lea ecx, [ebp - 0x394]
push ecx
push 0x48bf2c
push eax
call dword [sym.imp.WININET.dll_HttpOpenRequestW]
mov esi, eax
mov dword [ebp - 0x868], esi
test esi, esi
je 0x4376fa
cmp dword [0x4c2e50], 0
jne 0x4376fa
push 0
push 0
push 0
push 0
push esi
call dword [sym.imp.WININET.dll_HttpSendRequestW]
test eax, eax
je 0x4376cc
cmp dword [0x4c2e50], 0
jne 0x4376cc
lea eax, [ebp - 0x858]
push eax
push esi
call fcn.00438c40
mov ecx, eax
add esp, 8
mov eax, dword [ebp - 0x858]
test eax, eax
je 0x437512
push 0
push 0
push 0
push str.GetHttpStatusCode
push eax
call fcn.0042e900
add esp, 0x14
mov dword [edi], eax
mov dword [ebp - 0x89c], eax
lea eax, [ebp - 0x89c]
push 0x4a2acc
push eax
call fcn.00469859
cmp ecx, 0x12c
jb 0x437546
cmp ecx, 0x194
mov edx, 2
mov eax, 5
cmove eax, edx
mov dword [edi], eax
mov dword [ebp - 0x8a8], eax
lea eax, [ebp - 0x8a8]
push 0x4a2acc
push eax
call fcn.00469859
cmp dword [ebp + 0x14], 0
mov dword [ebp - 0x850], 0
je 0x437617
xor eax, eax
mov dword [ebp - 0x850], 0x10
push eax
mov word [ebp - 0x3a4], ax
xorps xmm0, xmm0
mov dword [ebp - 0x39a], eax
mov word [ebp - 0x396], ax
mov dword [ebp - 0x870], eax
mov dword [ebp - 0x86c], eax
lea eax, [ebp - 0x850]
push eax
lea eax, [ebp - 0x3a4]
movq qword [ebp - 0x3a2], xmm0
push eax
push 0x4000000b
push esi
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
je 0x43760d
lea eax, [ebp - 0x870]
push eax
lea eax, [ebp - 0x3a4]
push eax
call dword [sym.imp.KERNEL32.dll_SystemTimeToFileTime]
lea eax, [ebp - 0x870]
push eax
lea eax, [ebp - 0x830]
push eax
call dword [sym.imp.KERNEL32.dll_CompareFileTime]
xor ebx, ebx
test eax, eax
sets bl
push ebx
push dword [ebp - 0x5dc]
mov dword [ebp - 0x848], ebx
push dword [ebp - 0x5e0]
push dword [ebp - 0x82c]
push dword [ebp - 0x830]
push str.CheckNewFile____CompareFileTime__d___d____0___d
call fcn.0045f4c0
add esp, 0x18
jmp 0x437622
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [edi], eax
jmp 0x437622
mov ebx, 1
mov dword [ebp - 0x848], ebx
cmp dword [ebp + 0x18], 0
je 0x4376b3
push 0
lea eax, [ebp - 0x850]
mov dword [ebp - 0x858], 0
push eax
lea eax, [ebp - 0x858]
mov dword [ebp - 0x850], 4
push eax
push 0x20000005
push esi
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
mov esi, dword [ebp - 0x854]
test eax, eax
je 0x437687
mov ecx, dword [ebp - 0x858]
xor edx, edx
test ebx, ebx
mov ebx, dword [ebp - 0x84c]
je 0x437699
cmp esi, ecx
jne 0x437680
cmp ebx, edx
je 0x437699
mov eax, 1
jmp 0x43769b
mov edx, dword [ebp - 0x8ac]
mov ecx, dword [ebp - 0x8b0]
mov ebx, dword [ebp - 0x84c]
xor eax, eax
push eax
push edx
push ecx
push ebx
push esi
push str.CheckNewFile____Size:__I64u____I64u___d
mov dword [ebp - 0x848], eax
call fcn.0045f4c0
add esp, 0x18
mov eax, dword [edi]
mov dword [ebp - 0x8a4], eax
lea eax, [ebp - 0x8a4]
push 0x4a2acc
push eax
call fcn.00469859
push 0
push 0
push 0
push str.CheckNewFile____HttpSendRequest
push 0
call fcn.0042e900
add esp, 0x14
mov dword [edi], eax
mov dword [ebp - 0x898], eax
lea eax, [ebp - 0x898]
push 0x4a2acc
push eax
call fcn.00469859
push 0
push 0
push 0
push str.CheckNewFile____HttpOpenRequest
push 0
call fcn.0042e900
add esp, 0x14
mov dword [edi], eax
mov dword [ebp - 0x888], eax
lea eax, [ebp - 0x888]
push 0x4a2acc
push eax
call fcn.00469859
push 0
push 0
push 0
push str.CheckNewFile____InternetConnect
push 0
call fcn.0042e900
add esp, 0x14
mov dword [edi], eax
mov dword [ebp - 0x8a0], eax
lea eax, [ebp - 0x8a0]
push 0x4a2acc
push eax
call fcn.00469859
push 0
push 0
push 0
push str.CheckNewFile____InternetOpen
push 0
call fcn.0042e900
add esp, 0x14
mov dword [edi], eax
mov dword [ebp - 0x890], eax
lea eax, [ebp - 0x890]
push 0x4a2acc
push eax
call fcn.00469859
mov eax, 0x43778a
ret
test esi, esi
je 0x4377db
push esi
call dword [sym.imp.WININET.dll_InternetCloseHandle]
cmp dword [0x4c2e50], 0
je 0x4377ea
mov dword [edi], 0x4c7
push dword [edi]
push ebx
push str.CheckNewFile____End__d____d_
call fcn.0045f4c0
add esp, 0xc
mov eax, ebx
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.0046984a
mov esp, ebp
pop ebp
ret