Function at 0x46ab30
Capabilities:
Check http status code
Connect to http server
Create http request
Send data
Send http request

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x499a87
mov eax, dword fs:[0]
push eax
mov eax, 0x10cc
call fcn.00497d20
mov eax, dword [0x4cc99c]
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 ebx, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
xor esi, esi
mov dword [ebp - 0x10d0], esi
cmp ebx, esi
jne 0x46ab95
push esi
xor eax, eax
mov dword [edi + 0x14], 7
mov dword [edi + 0x10], esi
push 0x4ab248
mov ecx, edi
mov word [edi], ax
call fcn.004027c0
jmp 0x46b0ad
xor ecx, ecx
mov eax, ebx
mov dword [ebp - 0x1098], 7
mov dword [ebp - 0x109c], esi
mov word [ebp - 0x10ac], cx
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, si
jne 0x46abb3
sub eax, edx
sar eax, 1
push eax
push ebx
lea ecx, [ebp - 0x10ac]
call fcn.004027c0
xor edx, edx
mov eax, ebx
mov word [ebp - 0x1074], dx
mov dword [ebp - 4], esi
mov dword [ebp - 0x1060], 7
mov dword [ebp - 0x1064], esi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, si
jne 0x46abf0
sub eax, edx
sar eax, 1
push eax
push ebx
lea ecx, [ebp - 0x1074]
call fcn.004027c0
push 2
push esi
push 0x4a6718
lea ecx, [ebp - 0x1074]
mov byte [ebp - 4], 1
call fcn.0041ad00
mov esi, eax
cmp esi, 0xffffffff
jne 0x46ac40
push 2
push 0
push 0x4ba3a4
lea ecx, [ebp - 0x1074]
call fcn.0041ad00
mov esi, eax
push 1
lea eax, [esi + 3]
push eax
push 0x4adfcc
lea ecx, [ebp - 0x1074]
call fcn.0041ad00
mov dword [ebp - 0x10cc], eax
cmp eax, 0xffffffff
jne 0x46ac7d
push 1
lea eax, [esi + 3]
push eax
push 0x4b1c24
lea ecx, [ebp - 0x1074]
call fcn.0041ad00
mov dword [ebp - 0x10cc], eax
sub eax, esi
sub eax, 2
push eax
add esi, 2
push esi
lea eax, [ebp - 0x10c8]
push eax
lea ecx, [ebp - 0x1074]
call fcn.00408400
push eax
lea ecx, [ebp - 0x1074]
mov byte [ebp - 4], 2
call fcn.004085c0
mov esi, 8
mov byte [ebp - 4], 1
cmp dword [ebp - 0x10b4], esi
jb 0x46acc9
mov ecx, dword [ebp - 0x10c8]
push ecx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
xor edx, edx
mov eax, ebx
mov word [ebp - 0x1090], dx
mov dword [ebp - 0x107c], 7
mov dword [ebp - 0x1080], 0
lea edx, [eax + 2]
jmp 0x46acf0
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x46acf0
sub eax, edx
sar eax, 1
push eax
push ebx
lea ecx, [ebp - 0x1090]
call fcn.004027c0
mov eax, dword [ebp - 0x1080]
mov ecx, dword [ebp - 0x10cc]
push eax
push ecx
lea edx, [ebp - 0x10c8]
mov ebx, 3
push edx
lea ecx, [ebp - 0x1090]
mov byte [ebp - 4], bl
call fcn.00408400
push eax
lea ecx, [ebp - 0x1090]
mov byte [ebp - 4], 4
call fcn.004085c0
mov byte [ebp - 4], bl
cmp dword [ebp - 0x10b4], esi
jb 0x46ad5e
mov eax, dword [ebp - 0x10c8]
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
push 0
push 0
push 0
push 0
push str.game_world_request
call dword [sym.imp.WININET.dll_InternetOpenW]
mov esi, eax
mov dword [ebp - 0x10cc], esi
test esi, esi
jne 0x46ae24
xor ecx, ecx
mov esi, 7
mov dword [edi + 0x14], esi
mov dword [edi + 0x10], eax
lea edx, [ebp - 0x10ac]
mov word [edi], cx
push edx
mov ecx, edi
call fcn.004085c0
mov ebx, 8
cmp dword [ebp - 0x107c], ebx
jb 0x46adbb
mov eax, dword [ebp - 0x1090]
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x107c], esi
mov dword [ebp - 0x1080], 0
mov word [ebp - 0x1090], cx
cmp dword [ebp - 0x1060], ebx
jb 0x46adeb
mov edx, dword [ebp - 0x1074]
push edx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
xor eax, eax
mov dword [ebp - 0x1060], esi
mov dword [ebp - 0x1064], 0
mov word [ebp - 0x1074], ax
cmp dword [ebp - 0x1098], ebx
jb 0x46b0ad
mov ecx, dword [ebp - 0x10ac]
push ecx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
jmp 0x46b0ad
cmp dword [ebp - 0x1060], 8
mov eax, dword [ebp - 0x1074]
jae 0x46ae39
lea eax, [ebp - 0x1074]
push 0
push 0
push ebx
push 0x4ab248
push 0x4ab248
push 0x50
push eax
push esi
call dword [sym.imp.WININET.dll_InternetConnectW]
mov ebx, eax
test ebx, ebx
jne 0x46af07
push esi
call dword [sym.imp.WININET.dll_InternetCloseHandle]
lea eax, [ebp - 0x10ac]
xor esi, esi
xor edx, edx
mov dword [edi + 0x14], 7
mov dword [edi + 0x10], esi
push eax
mov ecx, edi
mov word [edi], dx
call fcn.004085c0
mov ebx, 8
cmp dword [ebp - 0x107c], ebx
jb 0x46ae9e
mov ecx, dword [ebp - 0x1090]
push ecx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
xor edx, edx
mov dword [ebp - 0x107c], 7
mov dword [ebp - 0x1080], esi
mov word [ebp - 0x1090], dx
cmp dword [ebp - 0x1060], ebx
jb 0x46aece
mov eax, dword [ebp - 0x1074]
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x1060], 7
mov dword [ebp - 0x1064], esi
mov word [ebp - 0x1074], cx
cmp dword [ebp - 0x1098], ebx
jb 0x46b0ad
mov edx, dword [ebp - 0x10ac]
push edx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
jmp 0x46b0ad
cmp dword [ebp - 0x107c], 8
mov eax, dword [ebp - 0x1090]
jae 0x46af1c
lea eax, [ebp - 0x1090]
push 0
push 0x600000
push 0
push 0x4ab248
push 0
push eax
push 0x4ab7dc
push ebx
call dword [sym.imp.WININET.dll_HttpOpenRequestW]
mov esi, eax
push 0
test esi, esi
jne 0x46af7b
mov esi, dword [sym.imp.WININET.dll_InternetCloseHandle]
call esi
push ebx
call esi
mov eax, dword [ebp - 0x10cc]
push eax
call esi
xor ecx, ecx
mov dword [edi + 0x14], 7
mov dword [edi + 0x10], 0
lea edx, [ebp - 0x10ac]
mov word [edi], cx
push edx
mov ecx, edi
call fcn.004085c0
jmp 0x46b08c
push 0
push 0
push 0
push esi
call dword [sym.imp.WININET.dll_HttpSendRequestA]
test eax, eax
je 0x46b069
push 0
lea eax, [ebp - 0x10d8]
push eax
lea ecx, [ebp - 0x10d4]
push ecx
push 0x20000013
push esi
mov dword [ebp - 0x10d4], 0
mov dword [ebp - 0x10d8], 4
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
je 0x46b069
cmp dword [ebp - 0x10d4], 0xc8
jne 0x46afe0
lea edx, [ebp - 0x10ac]
push edx
jmp 0x46b085
xor eax, eax
push 0x1046
push eax
lea ecx, [ebp - 0x1056]
push ecx
mov word [ebp - 0x1058], ax
call sub.MSVCR100.dll_memset
add esp, 0xc
push 0
lea edx, [ebp - 0x10d0]
push edx
lea eax, [ebp - 0x1058]
push eax
push 0x21
push esi
mov dword [ebp - 0x10d0], 0x1048
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
lea ecx, [ebp - 0x1058]
push ecx
lea ecx, [ebp - 0x10ac]
call fcn.00403830
push esi
mov esi, dword [sym.imp.WININET.dll_InternetCloseHandle]
call esi
push ebx
call esi
mov edx, dword [ebp - 0x10cc]
push edx
call esi
cmp dword [ebp - 0x1098], 8
mov eax, dword [ebp - 0x10ac]
jae 0x46b05d
lea eax, [ebp - 0x10ac]
push eax
push edi
call fcn.0046ab30
add esp, 8
jmp 0x46b08c
push esi
mov esi, dword [sym.imp.WININET.dll_InternetCloseHandle]
call esi
push ebx
call esi
mov eax, dword [ebp - 0x10cc]
push eax
call esi
lea ecx, [ebp - 0x10ac]
push ecx
mov ecx, edi
call fcn.00409040
lea ecx, [ebp - 0x1090]
call fcn.004024d0
lea ecx, [ebp - 0x1074]
call fcn.004024d0
lea ecx, [ebp - 0x10ac]
call fcn.004024d0
mov eax, edi
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.00497792
mov esp, ebp
pop ebp
ret