Function at 0x4ac1c8
Capabilities:
Create http request

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 0x18
push 0
push 0
dec ecx
jne 0x4ac1d1
xchg dword [ebp - 4], ecx
push ebx
push esi
push edi
mov dword [ebp - 0x30], ecx
mov byte [ebp - 0x29], dl
mov dword [ebp - 0x28], eax
xor eax, eax
push ebp
push 0x4acbdc
push dword fs:[eax]
mov dword fs:[eax], esp
mov dword [ebp - 0x34], 0x80004005
mov eax, dword [ebp - 0x30]
mov byte [eax], 0
xor ecx, ecx
push ebp
push 0x4acb7c
push dword fs:[ecx]
mov dword fs:[ecx], esp
lea eax, [ebp - 4]
mov edx, dword [ebp - 0x28]
mov edx, dword [edx]
call fcn.00406f68
mov byte [ebp - 0x35], 0
mov edx, dword [ebp - 4]
mov eax, 0x4acbfc
call fcn.00407efc
test eax, eax
jle 0x4ac26c
xor eax, eax
push ebp
push 0x4ac262
push dword fs:[eax]
mov dword fs:[eax], esp
lea ecx, [ebp - 0x10]
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.00480248
lea edx, [ebp - 4]
mov eax, dword [ebp - 0x10]
call fcn.0041b7c4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4ac26c
cmp byte [0x4c2340], 0
jne 0x4ac282
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4acb86
xor eax, eax
mov dword [ebp - 0x3c], eax
mov byte [ebp - 0x36], 0
lea eax, [ebp - 0x10]
mov edx, dword [ebp - 4]
call fcn.00406f68
mov edx, dword [ebp - 0x10]
mov eax, 0x4acc0c
call fcn.00407efc
dec eax
je 0x4ac2d6
mov edx, dword [ebp - 0x10]
mov eax, 0x4acc20
call fcn.00407efc
dec eax
je 0x4ac2d6
mov edx, dword [ebp - 0x10]
mov eax, 0x4acc34
call fcn.00407efc
dec eax
je 0x4ac2d6
mov edx, dword [ebp - 0x10]
mov eax, 0x4acc4c
call fcn.00407efc
dec eax
jne 0x4ac31a
mov byte [ebp - 0x35], 1
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x4ac2e6
sub ebx, 4
mov ebx, dword [ebx]
lea eax, [ebp - 0x5c]
push eax
mov edx, dword [ebp - 0x10]
mov eax, 0x4acc68
call fcn.00407efc
mov edx, eax
inc edx
mov ecx, ebx
mov eax, dword [ebp - 0x10]
call fcn.00407d50
mov eax, dword [ebp - 0x5c]
lea edx, [ebp - 0x58]
call fcn.0041bb00
mov edx, dword [ebp - 0x58]
lea eax, [ebp - 0x10]
call fcn.00406f68
lea edx, [ebp - 0x60]
mov eax, dword [ebp - 0x10]
call fcn.0041b7c4
mov edx, dword [ebp - 0x60]
mov eax, 0x4acc78
call fcn.00407efc
test eax, eax
jne 0x4ac368
mov edx, dword [ebp - 0x10]
mov eax, 0x4acc88
call fcn.00407efc
dec eax
jne 0x4ac358
lea eax, [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
mov edx, 0x4acc9c
call fcn.00407be0
jmp 0x4ac368
lea eax, [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
mov edx, 0x4accb4
call fcn.00407be0
lea edx, [ebp - 0x64]
mov eax, dword [ebp - 0x10]
call fcn.0041b7c4
mov edx, dword [ebp - 0x64]
mov eax, 0x4accd0
call fcn.00407efc
dec eax
je 0x4ac3e3
cmp byte [ebp + 0xc], 0
je 0x4ac3e3
lea eax, [ebp - 0x70]
push eax
mov edx, dword [ebp - 0x10]
mov eax, 0x4acc78
call fcn.00407efc
mov ecx, eax
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.00407d50
mov eax, dword [ebp - 0x70]
lea edx, [ebp - 0x6c]
call fcn.0041b7c4
mov ecx, dword [ebp - 0x6c]
lea eax, [ebp - 0x68]
mov edx, 0x4acce8
call fcn.00407be0
mov edx, dword [ebp - 0x68]
mov eax, 0x80000000
call fcn.00458df8
test al, al
je 0x4ac3e3
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4acb86
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x18]
lea edx, [ebp - 0x14]
mov eax, dword [ebp - 0x10]
call fcn.004acee8
test al, al
jne 0x4ac404
lea eax, [ebp - 0x14]
mov edx, dword [ebp - 4]
call fcn.00406f68
lea edx, [ebp - 0x74]
mov eax, dword [ebp - 0x14]
call fcn.0041ba00
mov edx, dword [ebp - 0x74]
lea eax, [ebp - 0x14]
call fcn.00406f68
mov bl, 1
cmp dword [ebp - 0x14], 0
je 0x4ac473
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x4ac42e
sub eax, 4
mov eax, dword [eax]
mov edx, eax
test edx, edx
jle 0x4ac473
mov esi, 1
mov eax, dword [ebp - 0x14]
movzx eax, word [eax + esi*2 - 2]
cmp ax, 0x61
jb 0x4ac44d
cmp ax, 0x7a
jbe 0x4ac46f
cmp ax, 0x30
jb 0x4ac459
cmp ax, 0x39
jbe 0x4ac46f
cmp ax, 0x2e
je 0x4ac46f
cmp ax, 0x2d
je 0x4ac46f
cmp ax, 0x5f
je 0x4ac46f
xor ebx, ebx
jmp 0x4ac473
inc esi
dec edx
jne 0x4ac439
test bl, bl
je 0x4ac51f
xor esi, esi
lea eax, [ebp - 0x10]
mov edx, dword [ebp - 0x14]
call fcn.00406f68
mov edx, dword [ebp - 0x10]
mov eax, 0x4acd1c
call fcn.00407efc
dec eax
jne 0x4ac49c
mov al, 1
jmp 0x4ac4cb
mov edi, dword [ebp - 0x10]
test edi, edi
je 0x4ac4a8
sub edi, 4
mov edi, dword [edi]
lea eax, [ebp - 0x78]
push eax
mov ecx, 1
mov edx, edi
mov eax, dword [ebp - 0x10]
call fcn.00407d50
mov eax, dword [ebp - 0x78]
mov edx, 0x4acd1c
call fcn.00407d18
sete al
test al, al
je 0x4ac4d3
xor ebx, ebx
jmp 0x4ac51f
lea eax, [ebp - 0x10]
mov edx, dword [ebp - 4]
call fcn.00406f68
jmp 0x4ac50b
inc esi
mov edi, dword [ebp - 0x10]
test edi, edi
je 0x4ac4ed
sub edi, 4
mov edi, dword [edi]
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x10]
mov eax, 0x4acd1c
call fcn.00407efc
mov edx, eax
inc edx
mov ecx, edi
mov eax, dword [ebp - 0x10]
call fcn.00407d50
mov edx, dword [ebp - 0x10]
mov eax, 0x4acd1c
call fcn.00407efc
test eax, eax
jg 0x4ac4e0
mov dword [ebp - 0x3c], esi
lea edx, [ebp - 0x7c]
mov eax, dword [ebp - 4]
call fcn.0041b7c4
mov edx, dword [ebp - 0x7c]
mov eax, 0x4acd2c
call fcn.00407efc
dec eax
jne 0x4ac5ae
test bl, bl
je 0x4ac5ae
cmp dword [ebp - 0x3c], 1
jne 0x4ac5ae
lea edx, [ebp - 0x24]
mov eax, dword [ebp - 4]
call fcn.0041b7c4
mov esi, dword [ebp - 4]
test esi, esi
je 0x4ac55b
sub esi, 4
mov esi, dword [esi]
push 0x4acd44
lea eax, [ebp - 0x84]
push eax
mov edx, dword [ebp - 4]
mov eax, 0x4acd1c
call fcn.00407efc
mov edx, eax
inc edx
mov ecx, esi
mov eax, dword [ebp - 0x24]
call fcn.00407d50
push dword [ebp - 0x84]
push 0x4acd44
lea eax, [ebp - 0x80]
mov edx, 3
call fcn.00407c68
mov eax, dword [ebp - 0x80]
mov edx, 0x4acd54
call fcn.00407efc
test eax, eax
jne 0x4ac5ae
mov byte [ebp - 0x35], 1
xor ecx, ecx
push ebp
push 0x4acb68
push dword fs:[ecx]
mov dword fs:[ecx], esp
mov edx, dword [ebp - 4]
mov eax, 0x4acc0c
call fcn.00407efc
dec eax
je 0x4ac5fc
mov edx, dword [ebp - 4]
mov eax, 0x4acc20
call fcn.00407efc
dec eax
je 0x4ac5fc
mov edx, dword [ebp - 4]
mov eax, 0x4acc34
call fcn.00407efc
dec eax
je 0x4ac5fc
mov edx, dword [ebp - 0x10]
mov eax, 0x4acc4c
call fcn.00407efc
dec eax
jne 0x4ac648
mov esi, dword [ebp - 4]
test esi, esi
je 0x4ac608
sub esi, 4
mov esi, dword [esi]
lea eax, [ebp - 0x8c]
push eax
mov edx, dword [ebp - 4]
mov eax, 0x4acc68
call fcn.00407efc
mov edx, eax
inc edx
mov ecx, esi
mov eax, dword [ebp - 4]
call fcn.00407d50
mov eax, dword [ebp - 0x8c]
lea edx, [ebp - 0x88]
call fcn.0041bb00
mov edx, dword [ebp - 0x88]
lea eax, [ebp - 4]
call fcn.00406f68
cmp byte [ebp - 0x35], 0
jne 0x4ac655
mov eax, ebx
xor al, 1
mov byte [ebp - 0x35], al
test bl, bl
je 0x4ac665
cmp dword [ebp - 0x3c], 0
jle 0x4ac665
cmp byte [ebp - 0x35], 0
je 0x4ac670
lea eax, [ebp - 8]
mov edx, dword [ebp - 4]
call fcn.00406f68
mov byte [ebp - 0x36], 0
cmp byte [ebp - 0x35], 0
jne 0x4ac8b6
test bl, bl
je 0x4ac709
cmp dword [ebp - 0x3c], 1
jl 0x4ac709
lea eax, [ebp - 0x10]
mov edx, dword [ebp - 4]
call fcn.00406f68
lea edx, [ebp - 0x90]
mov eax, dword [ebp - 0x10]
call fcn.0041b7c4
mov edx, dword [ebp - 0x90]
mov eax, 0x4acda8
call fcn.00407efc
dec eax
jle 0x4ac6c5
lea eax, [ebp - 8]
mov edx, dword [ebp - 4]
call fcn.00406f68
jmp 0x4ac6f7
mov edx, dword [ebp - 4]
mov eax, 0x4acc88
call fcn.00407efc
dec eax
jne 0x4ac6e7
lea eax, [ebp - 8]
mov ecx, dword [ebp - 4]
mov edx, 0x4acc9c
call fcn.00407be0
jmp 0x4ac6f7
lea eax, [ebp - 8]
mov ecx, dword [ebp - 4]
mov edx, 0x4accb4
call fcn.00407be0
call fcn.004062ac
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4acb86
cmp byte [ebp - 0x36], 0
jne 0x4ac8b6
lea eax, [ebp - 0x10]
mov edx, dword [ebp - 4]
call fcn.00406f68
lea eax, [ebp - 0xc]
call fcn.00406b40
mov byte [ebp - 0x36], 1
lea edx, [ebp - 0x94]
mov eax, dword [ebp - 0x10]
call fcn.0041b7c4
mov edx, dword [ebp - 0x94]
mov eax, 0x4accb4
call fcn.00407efc
dec eax
je 0x4ac77d
mov edx, dword [ebp - 0x10]
mov eax, 0x4acc88
call fcn.00407efc
dec eax
jne 0x4ac76d
lea eax, [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
mov edx, 0x4acc9c
call fcn.00407be0
jmp 0x4ac77d
lea eax, [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
mov edx, 0x4accb4
call fcn.00407be0
cmp byte [ebp + 0xc], 0
je 0x4ac7a5
test bl, bl
je 0x4ac79c
cmp dword [ebp - 0x3c], 0
jle 0x4ac79c
lea eax, [ebp - 8]
mov edx, dword [ebp - 0x10]
call fcn.00406f68
mov byte [ebp - 0x36], 0
mov byte [ebp - 0x29], 0
jmp 0x4ac8b6
push 0
push 0
push 0
push 0
push 0x4acdb0
call sub.wininet.dll_InternetOpenW
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0
je 0x4ac8b6
xor eax, eax
push ebp
push 0x4ac8af
push dword fs:[eax]
mov dword fs:[eax], esp
push 0
push 0x420f200
push 0
push 0
mov eax, dword [ebp - 0x10]
call fcn.00407984
push eax
mov eax, dword [ebp - 0x4c]
push eax
call sub.wininet.dll_InternetOpenUrlW
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 0
jne 0x4ac859
call sub.kernel32.dll_GetLastError_2
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0x2ee7
je 0x4ac898
push 0x4acdcc
lea eax, [ebp - 0x9c]
call fcn.0045b694
mov eax, dword [ebp - 0x9c]
lea edx, [ebp - 0x98]
call fcn.0042331c
push dword [ebp - 0x98]
push dword [0x4c233c]
push 0x4acde8
push dword [ebp - 0x10]
lea eax, [ebp - 8]
mov edx, 5
call fcn.00407c68
mov byte [ebp - 0x29], 0
mov byte [ebp - 0x36], 0
jmp 0x4ac898
xor eax, eax
push ebp
push 0x4ac891
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 8]
mov edx, dword [ebp - 0x10]
call fcn.00406f68
mov byte [ebp - 0x29], 0
mov byte [ebp - 0x36], 0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4ac898
mov eax, dword [ebp - 0x50]
push eax
call sub.wininet.dll_InternetCloseHandle
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4ac8b6
mov eax, dword [ebp - 0x4c]
push eax
call sub.wininet.dll_InternetCloseHandle
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4acb72
movzx eax, byte [ebp - 0x36]
or al, byte [ebp - 0x35]
je 0x4aca1d
lea edx, [ebp - 0xa0]
mov eax, dword [ebp - 4]
call fcn.0041bb00
cmp dword [ebp - 0xa0], 0
je 0x4aca1d
lea edx, [ebp - 0xa4]
mov eax, dword [ebp - 4]
call fcn.0041b7c4
mov edx, dword [ebp - 0xa4]
mov eax, 0x4accb4
call fcn.00407efc
dec eax
jne 0x4ac949
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4ac918
sub ebx, 4
mov ebx, dword [ebx]
lea eax, [ebp - 4]
push eax
lea edx, [ebp - 0xa8]
mov eax, dword [ebp - 4]
call fcn.0041b7c4
mov edx, dword [ebp - 0xa8]
mov eax, 0x4accb4
call fcn.00407efc
mov edx, eax
add edx, 7
mov ecx, ebx
mov eax, dword [ebp - 4]
call fcn.00407d50
mov edx, dword [ebp - 4]
mov eax, edx
test eax, eax
je 0x4ac957
sub eax, 4
mov eax, dword [eax]
test eax, eax
jle 0x4ac9a6
mov eax, edx
test eax, eax
je 0x4ac966
sub eax, 4
mov eax, dword [eax]
mov ecx, dword [ebp - 4]
cmp word [ecx + eax*2 - 2], 0x5c
jne 0x4ac975
mov al, 1
jmp 0x4ac98c
mov eax, edx
test eax, eax
je 0x4ac980
sub eax, 4
mov eax, dword [eax]
mov ecx, dword [ebp - 4]
cmp word [ecx + eax*2 - 2], 0x2f
sete al
test al, al
je 0x4ac9a6
mov eax, edx
test eax, eax
je 0x4ac99b
sub eax, 4
mov eax, dword [eax]
mov edx, eax
dec edx
lea eax, [ebp - 4]
call fcn.00407b08
lea edx, [ebp - 0xb0]
mov eax, dword [ebp - 4]
call fcn.0040a8e0
mov eax, dword [ebp - 0xb0]
lea edx, [ebp - 0xac]
call fcn.0047fefc
mov edx, dword [ebp - 0xac]
lea eax, [ebp - 4]
call fcn.00406f68
lea ecx, [ebp - 0xb4]
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 8]
call fcn.004af894
mov edx, dword [ebp - 0xb4]
lea eax, [ebp - 8]
call fcn.00406f68
movzx eax, byte [0x4ace08]
push eax
lea eax, [ebp - 8]
push eax
mov eax, dword [0x4c265c]
mov eax, dword [eax]
mov ecx, dword [ebp - 4]
mov edx, 0x4ace18
call fcn.004236f4
mov eax, dword [ebp - 0x30]
mov byte [eax], 1
jmp 0x4acb43
lea edx, [ebp - 0xb8]
mov eax, dword [ebp - 8]
call fcn.0041b7c4
mov edx, dword [ebp - 0xb8]
mov eax, 0x4acc78
call fcn.00407efc
test eax, eax
jne 0x4aca71
mov edx, dword [ebp - 8]
mov eax, 0x4acc88
call fcn.00407efc
dec eax
jne 0x4aca61
lea eax, [ebp - 8]
mov ecx, dword [ebp - 8]
mov edx, 0x4acc9c
call fcn.00407be0
jmp 0x4aca71
lea eax, [ebp - 8]
mov ecx, dword [ebp - 8]
mov edx, 0x4accb4
call fcn.00407be0
cmp byte [ebp - 0x29], 0
je 0x4acb43
cmp byte [ebp + 0xc], 0
jne 0x4acb43
push 0
push 0
push 0
push 0
push 0x4acdb0
call sub.wininet.dll_InternetOpenW
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0
je 0x4acb43
xor eax, eax
push ebp
push 0x4acb3c
push dword fs:[eax]
mov dword fs:[eax], esp
push 0
push 0x420f200
push 0
push 0
mov eax, dword [ebp - 8]
call fcn.00407984
push eax
mov eax, dword [ebp - 0x4c]
push eax
call sub.wininet.dll_InternetOpenUrlW
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 0
jne 0x4acb1c
push 0x4acdcc
lea eax, [ebp - 0xc0]
call fcn.0045b694
mov eax, dword [ebp - 0xc0]
lea edx, [ebp - 0xbc]
call fcn.0042331c
push dword [ebp - 0xbc]
push dword [0x4c233c]
push 0x4acde8
push dword [ebp - 8]
lea eax, [ebp - 8]
mov edx, 5
call fcn.00407c68
jmp 0x4acb25
mov eax, dword [ebp - 0x50]
push eax
call sub.wininet.dll_InternetCloseHandle
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4acb43
mov eax, dword [ebp - 0x4c]
push eax
call sub.wininet.dll_InternetCloseHandle
ret
lea ecx, [ebp - 0xc4]
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 8]
call fcn.004af894
mov edx, dword [ebp - 0xc4]
mov eax, dword [ebp - 0x28]
call fcn.00406f20
xor eax, eax
mov dword [ebp - 0x34], eax
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4acbe3
lea eax, [ebp - 0xc4]
mov edx, 5
call fcn.00406ba0
lea eax, [ebp - 0xb0]
call fcn.00406b64
lea eax, [ebp - 0xac]
mov edx, 0x16
call fcn.00406ba0
lea eax, [ebp - 0x24]
call fcn.00406b40
lea eax, [ebp - 0x20]
call fcn.0040a1a4
lea eax, [ebp - 0x1c]
mov edx, 7
call fcn.00406ba0
ret