Function at 0x423189
Capabilities:
Connect to http server
Create http request
Read data from internet
Receive data
Send data
Send http request

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x38
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
cmp dword [ebp + 0x18], 0
jne 0x42325a
push reloc.WS2_32.dll_connect
push 0
push 0x114351c
push 1
mov ebx, 0x168
call fcn.0055eaf0
add esp, 0x10
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x2c], esp
push 0
push 0x5bc2a6
push 0x5bc2a6
push 1
push dword [ebp - 0x28]
call dword [sym.imp.WININET.dll_InternetOpenA]
nop
nop
nop
nop
cmp dword [ebp - 0x2c], esp
je 0x42323c
push 0x58
push 0x4014de4
push 6
call fcn.0055df5e
add esp, 0xc
mov dword [ebp - 0x30], eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x42324f
push ebx
call fcn.0055df58
add esp, 4
mov eax, dword [ebp - 0x30]
mov dword [ebp - 4], eax
jmp 0x423335
push reloc.WS2_32.dll_connect
push 0
push 0x114351c
push 1
mov ebx, 0x168
call fcn.0055eaf0
add esp, 0x10
mov dword [ebp - 0x28], eax
mov ebx, dword [ebp + 0x14]
push dword [ebx]
push 0x114354f
mov ecx, 2
call fcn.004010b8
add esp, 8
mov dword [ebp - 0x2c], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x2c]
test eax, eax
jne 0x4232a8
mov eax, 0x5bc2a6
push eax
push 1
mov ebx, 0x168
call fcn.0055eaf0
add esp, 0x10
mov dword [ebp - 0x30], eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x4232ce
push ebx
call fcn.0055df58
add esp, 4
mov dword [ebp - 0x34], esp
push 0
push 0x5bc2a6
push dword [ebp - 0x30]
push 3
push dword [ebp - 0x28]
call dword [sym.imp.WININET.dll_InternetOpenA]
nop
nop
nop
nop
cmp dword [ebp - 0x34], esp
je 0x42330c
push 0x155
push 0x4014de4
push 6
call fcn.0055df5e
add esp, 0xc
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x42331f
push ebx
call fcn.0055df58
add esp, 4
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x42332f
push ebx
call fcn.0055df58
add esp, 4
mov eax, dword [ebp - 0x38]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x423349
mov eax, 0x5bc2b7
jmp 0x423cb4
push dword [ebp + 8]
call fcn.00423cec
mov dword [ebp - 0x28], eax
push dword [ebp + 8]
call fcn.004240bd
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x30], esp
push 0
push 0
push 3
push 0x5bc2a6
push 0x5bc2a6
push dword [ebp - 0x2c]
push dword [ebp - 0x28]
push dword [ebp - 4]
call dword [sym.imp.WININET.dll_InternetConnectA]
nop
nop
nop
nop
cmp dword [ebp - 0x30], esp
je 0x4233aa
push 0x24d
push 0x4014de4
push 6
call fcn.0055df5e
add esp, 0xc
mov dword [ebp - 0x34], eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x4233bd
push ebx
call fcn.0055df58
add esp, 4
mov eax, dword [ebp - 0x34]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jne 0x423403
mov dword [ebp - 0x28], esp
push dword [ebp - 4]
call dword [sym.imp.WININET.dll_InternetCloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x28], esp
je 0x4233f9
push 0x2c6
push 0x4014de4
push 6
call fcn.0055df5e
add esp, 0xc
mov eax, 0x5bc2b7
jmp 0x423cb4
push reloc.WS2_32.dll_connect
push 0
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
test eax, eax
jne 0x423418
mov eax, 0x5bc2a6
push eax
push 1
mov ebx, 0x150
call fcn.0055f5b0
add esp, 0x10
mov dword [ebp - 0x28], eax
push 0x1143555
push dword [ebp - 0x28]
call fcn.00404022
add esp, 8
cmp eax, 0
mov eax, 0
setne al
mov dword [ebp - 0x2c], eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x42345c
push ebx
call fcn.0055df58
add esp, 4
cmp dword [ebp - 0x2c], 0
je 0x423484
mov eax, 0x114355a
push eax
mov ebx, dword [ebp + 0xc]
mov ebx, dword [ebx]
test ebx, ebx
je 0x42347e
push ebx
call fcn.0055df58
add esp, 4
pop eax
mov ebx, dword [ebp + 0xc]
mov dword [ebx], eax
push dword [ebp + 8]
call fcn.004244e1
mov dword [ebp - 0x28], eax
push reloc.WS2_32.dll_connect
push 0
push 0x5bc2a6
push 1
mov ebx, 0x168
call fcn.0055eaf0
add esp, 0x10
mov dword [ebp - 0x2c], eax
push reloc.WS2_32.dll_connect
push 0
push 0x5bc2a6
push 1
mov ebx, 0x168
call fcn.0055eaf0
add esp, 0x10
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x34], esp
push 0
push accept
push dword [ebp - 0x30]
push dword [ebp - 0x2c]
push 0x114355e
push dword [ebp - 0x28]
mov ebx, dword [ebp + 0xc]
push dword [ebx]
push dword [ebp - 8]
call dword [sym.imp.WININET.dll_HttpOpenRequestA]
nop
nop
nop
nop
cmp dword [ebp - 0x34], esp
je 0x42351a
push 0x3f3
push 0x4014de4
push 6
call fcn.0055df5e
add esp, 0xc
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x42352d
push ebx
call fcn.0055df58
add esp, 4
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x42353d
push ebx
call fcn.0055df58
add esp, 4
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x42354d
push ebx
call fcn.0055df58
add esp, 4
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jne 0x4235bf
mov dword [ebp - 0x28], esp
push dword [ebp - 4]
call dword [sym.imp.WININET.dll_InternetCloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x28], esp
je 0x423589
push 0x456
push 0x4014de4
push 6
call fcn.0055df5e
add esp, 0xc
mov dword [ebp - 0x28], esp
push dword [ebp - 8]
call dword [sym.imp.WININET.dll_InternetCloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x28], esp
je 0x4235b5
push 0x470
push 0x4014de4
push 6
call fcn.0055df5e
add esp, 0xc
mov eax, 0x5bc2b7
jmp 0x423cb4
mov dword [ebp - 0x10], 0x4650
mov dword [ebp - 0x28], esp
push 4
lea eax, [ebp - 0x10]
push eax
push 2
push dword [ebp - 0xc]
call dword [sym.imp.WININET.dll_InternetSetOptionA]
nop
nop
nop
nop
cmp dword [ebp - 0x28], esp
je 0x423600
push 0x4f0
push 0x4014de4
push 6
call fcn.0055df5e
add esp, 0xc
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x28], esp
push 4
lea eax, [ebp - 0x10]
push eax
push 6
push dword [ebp - 0xc]
call dword [sym.imp.WININET.dll_InternetSetOptionA]
nop
nop
nop
nop
cmp dword [ebp - 0x28], esp
je 0x42363d
push 0x53d
push 0x4014de4
push 6
call fcn.0055df5e
add esp, 0xc
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x28], esp
push 4
lea eax, [ebp - 0x10]
push eax
push 5
push dword [ebp - 0xc]
call dword [sym.imp.WININET.dll_InternetSetOptionA]
nop
nop
nop
nop
cmp dword [ebp - 0x28], esp
je 0x42367a
push 0x58a
push 0x4014de4
push 6
call fcn.0055df5e
add esp, 0xc
mov dword [ebp - 0x14], eax
push reloc.WS2_32.dll_bind
push 0
push 1
push 0x80000301
push 0
push 1
push reloc.WS2_32.dll_connect
push 0
push 0x1143567
push reloc.WS2_32.dll_connect
push 0
mov ebx, dword [ebp + 0x1c]
mov eax, dword [ebx]
test eax, eax
jne 0x4236b6
mov eax, 0x5bc2a6
push eax
push 4
mov ebx, 0x148
call fcn.00560e80
add esp, 0x34
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0xffffffff
jne 0x42370c
push 0x1143570
mov ebx, dword [ebp + 0x1c]
push dword [ebx]
mov ecx, 2
call fcn.004010b8
add esp, 8
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
push eax
mov ebx, dword [ebp + 0x1c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x423706
push ebx
call fcn.0055df58
add esp, 4
pop eax
mov ebx, dword [ebp + 0x1c]
mov dword [ebx], eax
push reloc.WS2_32.dll_bind
push 0
push 1
push 0x80000301
push 0
push 1
push reloc.WS2_32.dll_connect
push 0
push 0x114361f
push reloc.WS2_32.dll_connect
push 0
mov ebx, dword [ebp + 0x1c]
mov eax, dword [ebx]
test eax, eax
jne 0x423745
mov eax, 0x5bc2a6
push eax
push 4
mov ebx, 0x148
call fcn.00560e80
add esp, 0x34
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0xffffffff
jne 0x4237a5
push 0x5bc3ed
mov ebx, dword [ebp + 8]
push dword [ebx]
push 0x114361f
mov ebx, dword [ebp + 0x1c]
push dword [ebx]
mov ecx, 4
call fcn.004010b8
add esp, 0x10
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
push eax
mov ebx, dword [ebp + 0x1c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x42379f
push ebx
call fcn.0055df58
add esp, 4
pop eax
mov ebx, dword [ebp + 0x1c]
mov dword [ebx], eax
push reloc.WS2_32.dll_bind
push 0
push 1
push 0x80000301
push 0
push 1
push reloc.WS2_32.dll_connect
push 0
push 0x1143629
push reloc.WS2_32.dll_connect
push 0
mov ebx, dword [ebp + 0x1c]
mov eax, dword [ebx]
test eax, eax
jne 0x4237de
mov eax, 0x5bc2a6
push eax
push 4
mov ebx, 0x148
call fcn.00560e80
add esp, 0x34
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0xffffffff
jne 0x423834
push 0x114363b
mov ebx, dword [ebp + 0x1c]
push dword [ebx]
mov ecx, 2
call fcn.004010b8
add esp, 8
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
push eax
mov ebx, dword [ebp + 0x1c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x42382e
push ebx
call fcn.0055df58
add esp, 4
pop eax
mov ebx, dword [ebp + 0x1c]
mov dword [ebx], eax
push 0x114355a
mov ebx, dword [ebp + 0xc]
push dword [ebx]
call fcn.00404022
add esp, 8
cmp eax, 0
jne 0x4238bd
push reloc.WS2_32.dll_connect
push 0
mov ebx, dword [ebp + 0x1c]
mov eax, dword [ebx]
test eax, eax
jne 0x423864
mov eax, 0x5bc2a6
push eax
push 1
mov ebx, 0x130
call fcn.0055f640
add esp, 0x10
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x2c], esp
push 0
push 0x5bc2a6
push dword [ebp - 0x28]
mov ebx, dword [ebp + 0x1c]
push dword [ebx]
push dword [ebp - 0xc]
call dword [sym.imp.WININET.dll_HttpSendRequestA]
nop
nop
nop
nop
cmp dword [ebp - 0x2c], esp
je 0x4238b8
push 0x902
push 0x4014de4
push 6
call fcn.0055df5e
add esp, 0xc
jmp 0x423a33
push 0x5bc2a6
mov ebx, dword [ebp + 0x24]
push dword [ebx]
call fcn.00404022
add esp, 8
cmp eax, 0
je 0x4239a1
push 0x1143654
mov ebx, dword [ebp + 0x1c]
push dword [ebx]
mov ecx, 2
call fcn.004010b8
add esp, 8
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
push eax
mov ebx, dword [ebp + 0x1c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x423908
push ebx
call fcn.0055df58
add esp, 4
pop eax
mov ebx, dword [ebp + 0x1c]
mov dword [ebx], eax
push reloc.WS2_32.dll_connect
push 0
mov ebx, dword [ebp + 0x24]
mov eax, dword [ebx]
test eax, eax
jne 0x423923
mov eax, 0x5bc2a6
push eax
push 1
mov ebx, 0x130
call fcn.0055f640
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x168
call fcn.0055eaf0
add esp, 0x10
mov dword [ebp - 0x2c], eax
push 0x5bc3ed
push dword [ebp - 0x2c]
push 0x1143686
mov ebx, dword [ebp + 0x1c]
push dword [ebx]
mov ecx, 4
call fcn.004010b8
add esp, 0x10
mov dword [ebp - 0x30], eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x423985
push ebx
call fcn.0055df58
add esp, 4
mov eax, dword [ebp - 0x30]
push eax
mov ebx, dword [ebp + 0x1c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x42399b
push ebx
call fcn.0055df58
add esp, 4
pop eax
mov ebx, dword [ebp + 0x1c]
mov dword [ebx], eax
push reloc.WS2_32.dll_connect
push 0
mov ebx, dword [ebp + 0x1c]
mov eax, dword [ebx]
test eax, eax
jne 0x4239b6
mov eax, 0x5bc2a6
push eax
push 1
mov ebx, 0x130
call fcn.0055f640
add esp, 0x10
mov dword [ebp - 0x28], eax
push reloc.WS2_32.dll_connect
push 0
mov ebx, dword [ebp + 0x24]
mov eax, dword [ebx]
test eax, eax
jne 0x4239e1
mov eax, 0x5bc2a6
push eax
push 1
mov ebx, 0x130
call fcn.0055f640
add esp, 0x10
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x30], esp
push dword [ebp - 0x2c]
mov ebx, dword [ebp + 0x24]
push dword [ebx]
push dword [ebp - 0x28]
mov ebx, dword [ebp + 0x1c]
push dword [ebx]
push dword [ebp - 0xc]
call dword [sym.imp.WININET.dll_HttpSendRequestA]
nop
nop
nop
nop
cmp dword [ebp - 0x30], esp
je 0x423a33
push 0xa8d
push 0x4014de4
push 6
call fcn.0055df5e
add esp, 0xc
mov dword [ebp - 0x18], 1
cmp dword [ebp - 0x18], 0
jle 0x423b45
push 0x80000301
push 0
push 0x200
push 1
mov ebx, 0x1bc
call fcn.0055f610
add esp, 0x10
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
push eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x423a79
push ebx
call fcn.0055df58
add esp, 4
pop eax
mov dword [ebp - 0x1c], eax
push 0
mov ebx, 0x350
call fcn.0055f650
add esp, 4
mov dword [ebp - 0x28], esp
lea eax, [ebp - 0x18]
push eax
push 0x200
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x423aa5
add eax, 8
push eax
push dword [ebp - 0xc]
call dword [sym.imp.WININET.dll_InternetReadFile]
nop
nop
nop
nop
cmp dword [ebp - 0x28], esp
je 0x423acf
push 0xb5f
push 0x4014de4
push 6
call fcn.0055df5e
add esp, 0xc
push 0x80000301
push 0
push dword [ebp - 0x18]
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x423aec
mov eax, 0x5bc2b7
push eax
push 2
mov ebx, 0x1a0
call fcn.00560bf0
add esp, 0x1c
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
push dword [ebp - 0x20]
mov ecx, 2
call fcn.00402de5
add esp, 8
mov dword [ebp - 0x2c], eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x423b28
push ebx
call fcn.0055df58
add esp, 4
mov eax, dword [ebp - 0x2c]
push eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x423b3c
push ebx
call fcn.0055df58
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
jmp 0x423a3a
cmp dword [ebp + 0x30], 0
mov eax, 0
sete al
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
jne 0x423c11
push 0x80000301
push 0
push 0x400
push 1
mov ebx, 0x184
call fcn.0055ed90
add esp, 0x10
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
push eax
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x423b93
push ebx
call fcn.0055df58
add esp, 4
pop eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x28], esp
push 0
mov eax, 0x400
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
push dword [ebp - 0x24]
push 0x16
push dword [ebp - 0xc]
call dword [sym.imp.WININET.dll_HttpQueryInfoA]
nop
nop
nop
nop
cmp dword [ebp - 0x28], esp
je 0x423bdc
push 0xc85
push 0x4014de4
push 6
call fcn.0055df5e
add esp, 0xc
mov eax, dword [ebp - 0x24]
test eax, eax
je 0x423bf8
push eax
mov ebx, eax
call fcn.0040104d
inc eax
push eax
call fcn.0055df52
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp + 0x2c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x423c0b
push ebx
call fcn.0055df58
add esp, 4
pop eax
mov ebx, dword [ebp + 0x2c]
mov dword [ebx], eax
mov dword [ebp - 0x28], esp
push dword [ebp - 4]
call dword [sym.imp.WININET.dll_InternetCloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x28], esp
je 0x423c3d
push 0xcf7
push 0x4014de4
push 6
call fcn.0055df5e
add esp, 0xc
mov dword [ebp - 0x28], esp
push dword [ebp - 8]
call dword [sym.imp.WININET.dll_InternetCloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x28], esp
je 0x423c69
push 0xd11
push 0x4014de4
push 6
call fcn.0055df5e
add esp, 0xc
mov dword [ebp - 0x28], esp
push dword [ebp - 0xc]
call dword [sym.imp.WININET.dll_InternetCloseHandle]
nop
nop
nop
nop
cmp dword [ebp - 0x28], esp
je 0x423c95
push 0xd2b
push 0x4014de4
push 6
call fcn.0055df5e
add esp, 0xc
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x423caf
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0055df52
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x423cb4
push eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x423cc5
push ebx
call fcn.0055df58
add esp, 4
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x423cd5
push ebx
call fcn.0055df58
add esp, 4
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x423ce5
push ebx
call fcn.0055df58
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 0x2c