Function at 0x4aed24
Capabilities:
Create http request

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 0x18
push 0
push 0
dec ecx
jne 0x4aed2d
push ecx
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 0x4af757
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 0x4af6ef
push dword fs:[ecx]
mov dword fs:[ecx], esp
lea eax, [ebp - 4]
mov edx, dword [ebp - 0x28]
mov edx, dword [edx]
call fcn.00406f50
mov byte [ebp - 0x35], 0
mov edx, dword [ebp - 4]
mov eax, 0x4af778
call fcn.00407d0c
test eax, eax
jle 0x4aedd9
xor eax, eax
push ebp
push 0x4aedcf
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x58]
mov edx, dword [ebp - 4]
mov ecx, 0
call fcn.00407404
mov eax, dword [ebp - 0x58]
lea ecx, [ebp - 0x10]
mov dl, 1
call fcn.0047b874
lea edx, [ebp - 4]
mov eax, dword [ebp - 0x10]
call fcn.0041b564
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4aedd9
cmp byte [0x4bf3f4], 0
jne 0x4aedef
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4af6f9
xor eax, eax
mov dword [ebp - 0x3c], eax
mov byte [ebp - 0x36], 0
lea eax, [ebp - 0x10]
mov edx, dword [ebp - 4]
call fcn.00406f50
mov edx, dword [ebp - 0x10]
mov eax, 0x4af788
call fcn.00407d0c
dec eax
je 0x4aee43
mov edx, dword [ebp - 0x10]
mov eax, 0x4af79c
call fcn.00407d0c
dec eax
je 0x4aee43
mov edx, dword [ebp - 0x10]
mov eax, 0x4af7b0
call fcn.00407d0c
dec eax
je 0x4aee43
mov edx, dword [ebp - 0x10]
mov eax, 0x4af7c8
call fcn.00407d0c
dec eax
jne 0x4aee87
mov byte [ebp - 0x35], 1
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x4aee53
sub ebx, 4
mov ebx, dword [ebx]
lea eax, [ebp - 0x60]
push eax
mov edx, dword [ebp - 0x10]
mov eax, 0x4af7e4
call fcn.00407d0c
mov edx, eax
inc edx
mov ecx, ebx
mov eax, dword [ebp - 0x10]
call fcn.00407b60
mov eax, dword [ebp - 0x60]
lea edx, [ebp - 0x5c]
call fcn.0041b8a0
mov edx, dword [ebp - 0x5c]
lea eax, [ebp - 0x10]
call fcn.00406f50
lea edx, [ebp - 0x64]
mov eax, dword [ebp - 0x10]
call fcn.0041b564
mov edx, dword [ebp - 0x64]
mov eax, 0x4af7f4
call fcn.00407d0c
test eax, eax
jne 0x4aeed5
mov edx, dword [ebp - 0x10]
mov eax, 0x4af804
call fcn.00407d0c
dec eax
jne 0x4aeec5
lea eax, [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
mov edx, 0x4af818
call fcn.004079f0
jmp 0x4aeed5
lea eax, [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
mov edx, 0x4af830
call fcn.004079f0
lea edx, [ebp - 0x68]
mov eax, dword [ebp - 0x10]
call fcn.0041b564
mov edx, dword [ebp - 0x68]
mov eax, 0x4af84c
call fcn.00407d0c
dec eax
je 0x4aef50
cmp byte [ebp + 0xc], 0
je 0x4aef50
lea eax, [ebp - 0x74]
push eax
mov edx, dword [ebp - 0x10]
mov eax, 0x4af7f4
call fcn.00407d0c
mov ecx, eax
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.00407b60
mov eax, dword [ebp - 0x74]
lea edx, [ebp - 0x70]
call fcn.0041b564
mov ecx, dword [ebp - 0x70]
lea eax, [ebp - 0x6c]
mov edx, 0x4af864
call fcn.004079f0
mov edx, dword [ebp - 0x6c]
mov eax, 0x80000000
call fcn.0045a3b8
test al, al
je 0x4aef50
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4af6f9
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x18]
lea edx, [ebp - 0x14]
mov eax, dword [ebp - 0x10]
call fcn.004afa64
test al, al
jne 0x4aef71
lea eax, [ebp - 0x14]
mov edx, dword [ebp - 4]
call fcn.00406f50
lea edx, [ebp - 0x78]
mov eax, dword [ebp - 0x14]
call fcn.0041b7a0
mov edx, dword [ebp - 0x78]
lea eax, [ebp - 0x14]
call fcn.00406f50
mov bl, 1
cmp dword [ebp - 0x14], 0
je 0x4aefe0
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x4aef9b
sub eax, 4
mov eax, dword [eax]
mov edx, eax
test edx, edx
jle 0x4aefe0
mov esi, 1
mov eax, dword [ebp - 0x14]
movzx eax, word [eax + esi*2 - 2]
cmp ax, 0x61
jb 0x4aefba
cmp ax, 0x7a
jbe 0x4aefdc
cmp ax, 0x30
jb 0x4aefc6
cmp ax, 0x39
jbe 0x4aefdc
cmp ax, 0x2e
je 0x4aefdc
cmp ax, 0x2d
je 0x4aefdc
cmp ax, 0x5f
je 0x4aefdc
xor ebx, ebx
jmp 0x4aefe0
inc esi
dec edx
jne 0x4aefa6
test bl, bl
je 0x4af08c
xor esi, esi
lea eax, [ebp - 0x10]
mov edx, dword [ebp - 0x14]
call fcn.00406f50
mov edx, dword [ebp - 0x10]
mov eax, 0x4af898
call fcn.00407d0c
dec eax
jne 0x4af009
mov al, 1
jmp 0x4af038
mov edi, dword [ebp - 0x10]
test edi, edi
je 0x4af015
sub edi, 4
mov edi, dword [edi]
lea eax, [ebp - 0x7c]
push eax
mov ecx, 1
mov edx, edi
mov eax, dword [ebp - 0x10]
call fcn.00407b60
mov eax, dword [ebp - 0x7c]
mov edx, 0x4af898
call fcn.00407b28
sete al
test al, al
je 0x4af040
xor ebx, ebx
jmp 0x4af08c
lea eax, [ebp - 0x10]
mov edx, dword [ebp - 4]
call fcn.00406f50
jmp 0x4af078
inc esi
mov edi, dword [ebp - 0x10]
test edi, edi
je 0x4af05a
sub edi, 4
mov edi, dword [edi]
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x10]
mov eax, 0x4af898
call fcn.00407d0c
mov edx, eax
inc edx
mov ecx, edi
mov eax, dword [ebp - 0x10]
call fcn.00407b60
mov edx, dword [ebp - 0x10]
mov eax, 0x4af898
call fcn.00407d0c
test eax, eax
jg 0x4af04d
mov dword [ebp - 0x3c], esi
lea edx, [ebp - 0x80]
mov eax, dword [ebp - 4]
call fcn.0041b564
mov edx, dword [ebp - 0x80]
mov eax, 0x4af8a8
call fcn.00407d0c
dec eax
jne 0x4af121
test bl, bl
je 0x4af121
cmp dword [ebp - 0x3c], 1
jne 0x4af121
lea edx, [ebp - 0x24]
mov eax, dword [ebp - 4]
call fcn.0041b564
mov esi, dword [ebp - 4]
test esi, esi
je 0x4af0c8
sub esi, 4
mov esi, dword [esi]
push 0x4af8c0
lea eax, [ebp - 0x88]
push eax
mov edx, dword [ebp - 4]
mov eax, 0x4af898
call fcn.00407d0c
mov edx, eax
inc edx
mov ecx, esi
mov eax, dword [ebp - 0x24]
call fcn.00407b60
push dword [ebp - 0x88]
push 0x4af8c0
lea eax, [ebp - 0x84]
mov edx, 3
call fcn.00407a78
mov eax, dword [ebp - 0x84]
mov edx, 0x4af8d0
call fcn.00407d0c
test eax, eax
jne 0x4af121
mov byte [ebp - 0x35], 1
xor ecx, ecx
push ebp
push 0x4af6db
push dword fs:[ecx]
mov dword fs:[ecx], esp
mov edx, dword [ebp - 4]
mov eax, 0x4af788
call fcn.00407d0c
dec eax
je 0x4af16f
mov edx, dword [ebp - 4]
mov eax, 0x4af79c
call fcn.00407d0c
dec eax
je 0x4af16f
mov edx, dword [ebp - 4]
mov eax, 0x4af7b0
call fcn.00407d0c
dec eax
je 0x4af16f
mov edx, dword [ebp - 0x10]
mov eax, 0x4af7c8
call fcn.00407d0c
dec eax
jne 0x4af1bb
mov esi, dword [ebp - 4]
test esi, esi
je 0x4af17b
sub esi, 4
mov esi, dword [esi]
lea eax, [ebp - 0x90]
push eax
mov edx, dword [ebp - 4]
mov eax, 0x4af7e4
call fcn.00407d0c
mov edx, eax
inc edx
mov ecx, esi
mov eax, dword [ebp - 4]
call fcn.00407b60
mov eax, dword [ebp - 0x90]
lea edx, [ebp - 0x8c]
call fcn.0041b8a0
mov edx, dword [ebp - 0x8c]
lea eax, [ebp - 4]
call fcn.00406f50
cmp byte [ebp - 0x35], 0
jne 0x4af1c8
mov eax, ebx
xor al, 1
mov byte [ebp - 0x35], al
test bl, bl
je 0x4af1d8
cmp dword [ebp - 0x3c], 0
jle 0x4af1d8
cmp byte [ebp - 0x35], 0
je 0x4af1e3
lea eax, [ebp - 8]
mov edx, dword [ebp - 4]
call fcn.00406f50
mov byte [ebp - 0x36], 0
cmp byte [ebp - 0x35], 0
jne 0x4af429
test bl, bl
je 0x4af27c
cmp dword [ebp - 0x3c], 1
jl 0x4af27c
lea eax, [ebp - 0x10]
mov edx, dword [ebp - 4]
call fcn.00406f50
lea edx, [ebp - 0x94]
mov eax, dword [ebp - 0x10]
call fcn.0041b564
mov edx, dword [ebp - 0x94]
mov eax, 0x4af924
call fcn.00407d0c
dec eax
jle 0x4af238
lea eax, [ebp - 8]
mov edx, dword [ebp - 4]
call fcn.00406f50
jmp 0x4af26a
mov edx, dword [ebp - 4]
mov eax, 0x4af804
call fcn.00407d0c
dec eax
jne 0x4af25a
lea eax, [ebp - 8]
mov ecx, dword [ebp - 4]
mov edx, 0x4af818
call fcn.004079f0
jmp 0x4af26a
lea eax, [ebp - 8]
mov ecx, dword [ebp - 4]
mov edx, 0x4af830
call fcn.004079f0
call fcn.00406294
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4af6f9
cmp byte [ebp - 0x36], 0
jne 0x4af429
lea eax, [ebp - 0x10]
mov edx, dword [ebp - 4]
call fcn.00406f50
lea eax, [ebp - 0xc]
call fcn.00406b28
mov byte [ebp - 0x36], 1
lea edx, [ebp - 0x98]
mov eax, dword [ebp - 0x10]
call fcn.0041b564
mov edx, dword [ebp - 0x98]
mov eax, 0x4af830
call fcn.00407d0c
dec eax
je 0x4af2f0
mov edx, dword [ebp - 0x10]
mov eax, 0x4af804
call fcn.00407d0c
dec eax
jne 0x4af2e0
lea eax, [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
mov edx, 0x4af818
call fcn.004079f0
jmp 0x4af2f0
lea eax, [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
mov edx, 0x4af830
call fcn.004079f0
cmp byte [ebp + 0xc], 0
je 0x4af318
test bl, bl
je 0x4af30f
cmp dword [ebp - 0x3c], 0
jle 0x4af30f
lea eax, [ebp - 8]
mov edx, dword [ebp - 0x10]
call fcn.00406f50
mov byte [ebp - 0x36], 0
mov byte [ebp - 0x29], 0
jmp 0x4af429
push 0
push 0
push 0
push 0
push 0x4af92c
call sub.wininet.dll_InternetOpenW
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0
je 0x4af429
xor eax, eax
push ebp
push 0x4af422
push dword fs:[eax]
mov dword fs:[eax], esp
push 0
push 0x420f200
push 0
push 0
mov eax, dword [ebp - 0x10]
call fcn.00407794
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 0x4af3cc
call sub.kernel32.dll_GetLastError_2
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0x2ee7
je 0x4af40b
push 0x4af948
lea eax, [ebp - 0xa0]
call fcn.0045c308
mov eax, dword [ebp - 0xa0]
lea edx, [ebp - 0x9c]
call fcn.004230bc
push dword [ebp - 0x9c]
push dword [0x4bf3f0]
push 0x4af964
push dword [ebp - 0x10]
lea eax, [ebp - 8]
mov edx, 5
call fcn.00407a78
mov byte [ebp - 0x29], 0
mov byte [ebp - 0x36], 0
jmp 0x4af40b
xor eax, eax
push ebp
push 0x4af404
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 8]
mov edx, dword [ebp - 0x10]
call fcn.00406f50
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 0x4af40b
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 0x4af429
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 0x4af6e5
movzx eax, byte [ebp - 0x36]
or al, byte [ebp - 0x35]
je 0x4af590
lea edx, [ebp - 0xa4]
mov eax, dword [ebp - 4]
call fcn.0041b8a0
cmp dword [ebp - 0xa4], 0
je 0x4af590
lea edx, [ebp - 0xa8]
mov eax, dword [ebp - 4]
call fcn.0041b564
mov edx, dword [ebp - 0xa8]
mov eax, 0x4af830
call fcn.00407d0c
dec eax
jne 0x4af4bc
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4af48b
sub ebx, 4
mov ebx, dword [ebx]
lea eax, [ebp - 4]
push eax
lea edx, [ebp - 0xac]
mov eax, dword [ebp - 4]
call fcn.0041b564
mov edx, dword [ebp - 0xac]
mov eax, 0x4af830
call fcn.00407d0c
mov edx, eax
add edx, 7
mov ecx, ebx
mov eax, dword [ebp - 4]
call fcn.00407b60
mov edx, dword [ebp - 4]
mov eax, edx
test eax, eax
je 0x4af4ca
sub eax, 4
mov eax, dword [eax]
test eax, eax
jle 0x4af519
mov eax, edx
test eax, eax
je 0x4af4d9
sub eax, 4
mov eax, dword [eax]
mov ecx, dword [ebp - 4]
cmp word [ecx + eax*2 - 2], 0x5c
jne 0x4af4e8
mov al, 1
jmp 0x4af4ff
mov eax, edx
test eax, eax
je 0x4af4f3
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 0x4af519
mov eax, edx
test eax, eax
je 0x4af50e
sub eax, 4
mov eax, dword [eax]
mov edx, eax
dec edx
lea eax, [ebp - 4]
call fcn.00407918
lea edx, [ebp - 0xb4]
mov eax, dword [ebp - 4]
call fcn.0040a560
mov eax, dword [ebp - 0xb4]
lea edx, [ebp - 0xb0]
call fcn.0047b6fc
mov edx, dword [ebp - 0xb0]
lea eax, [ebp - 4]
call fcn.00406f50
lea ecx, [ebp - 0xb8]
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 8]
call fcn.0047e6bc
mov edx, dword [ebp - 0xb8]
lea eax, [ebp - 8]
call fcn.00406f50
movzx eax, byte [0x4af984]
push eax
lea eax, [ebp - 8]
push eax
mov eax, dword [0x4bf658]
mov eax, dword [eax]
mov ecx, dword [ebp - 4]
mov edx, 0x4af994
call fcn.00423494
mov eax, dword [ebp - 0x30]
mov byte [eax], 1
jmp 0x4af6b6
lea edx, [ebp - 0xbc]
mov eax, dword [ebp - 8]
call fcn.0041b564
mov edx, dword [ebp - 0xbc]
mov eax, 0x4af7f4
call fcn.00407d0c
test eax, eax
jne 0x4af5e4
mov edx, dword [ebp - 8]
mov eax, 0x4af804
call fcn.00407d0c
dec eax
jne 0x4af5d4
lea eax, [ebp - 8]
mov ecx, dword [ebp - 8]
mov edx, 0x4af818
call fcn.004079f0
jmp 0x4af5e4
lea eax, [ebp - 8]
mov ecx, dword [ebp - 8]
mov edx, 0x4af830
call fcn.004079f0
cmp byte [ebp - 0x29], 0
je 0x4af6b6
cmp byte [ebp + 0xc], 0
jne 0x4af6b6
push 0
push 0
push 0
push 0
push 0x4af92c
call sub.wininet.dll_InternetOpenW
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0
je 0x4af6b6
xor eax, eax
push ebp
push 0x4af6af
push dword fs:[eax]
mov dword fs:[eax], esp
push 0
push 0x420f200
push 0
push 0
mov eax, dword [ebp - 8]
call fcn.00407794
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 0x4af68f
push 0x4af948
lea eax, [ebp - 0xc4]
call fcn.0045c308
mov eax, dword [ebp - 0xc4]
lea edx, [ebp - 0xc0]
call fcn.004230bc
push dword [ebp - 0xc0]
push dword [0x4bf3f0]
push 0x4af964
push dword [ebp - 8]
lea eax, [ebp - 8]
mov edx, 5
call fcn.00407a78
jmp 0x4af698
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 0x4af6b6
mov eax, dword [ebp - 0x4c]
push eax
call sub.wininet.dll_InternetCloseHandle
ret
lea ecx, [ebp - 0xc8]
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 8]
call fcn.0047e6bc
mov edx, dword [ebp - 0xc8]
mov eax, dword [ebp - 0x28]
call fcn.00406f08
xor eax, eax
mov dword [ebp - 0x34], eax
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4af75e
lea eax, [ebp - 0xc8]
mov edx, 5
call fcn.00406b88
lea eax, [ebp - 0xb4]
call fcn.00406b4c
lea eax, [ebp - 0xb0]
mov edx, 0x16
call fcn.00406b88
lea eax, [ebp - 0x58]
call fcn.00406b4c
lea eax, [ebp - 0x24]
call fcn.00406b28
lea eax, [ebp - 0x20]
call fcn.00409fb4
lea eax, [ebp - 0x1c]
mov edx, 7
call fcn.00406b88
ret