Function at 0x43f4b0
Capabilities:
Get socket status
Receive data
Receive data on socket
Send data
Send data on socket
Send http request

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x60cd5c
mov eax, dword fs:[0]
push eax
mov eax, 0x109d0
call fcn.005fffa0
mov eax, dword [0x6a0f4c]
xor eax, ebp
mov dword [ebp - 0x130], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x108ac], 0
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x404]
mov dword [ebp - 0x10140], ecx
mov edx, dword [ebp + 8]
mov dword [ebp - 0x10138], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x400]
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
mov byte [ebp - 0x10134], 0
push 0xfffe
push 0
lea edx, [ebp - 0x10133]
push edx
call sub.MSVCR90.dll_memset
add esp, 0xc
mov eax, dword [ebp - 0x10140]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [ebp - 0x10138]
push edx
call fcn.0043f3c0
add esp, 8
mov dword [ebp - 0x1013c], eax
cmp dword [ebp - 0x1013c], 0xffffffff
jne 0x43f57a
push str.Client_Socket_Init_error__r_n
call dword [sym.imp.MSVCR90.dll_printf]
add esp, 4
jmp 0x44062d
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0x186a0
mov eax, 1
test eax, eax
je 0x440608
mov dword [ebp - 0x12c], 0
mov dword [ebp - 0x10148], 0
jmp 0x43f5ba
mov ecx, dword [ebp - 0x10148]
add ecx, 1
mov dword [ebp - 0x10148], ecx
mov edx, dword [ebp - 0x10148]
cmp edx, dword [ebp - 0x12c]
jae 0x43f5de
mov eax, dword [ebp - 0x10148]
mov ecx, dword [ebp + eax*4 - 0x128]
cmp ecx, dword [ebp - 0x1c]
jne 0x43f5dc
jmp 0x43f5de
jmp 0x43f5ab
mov edx, dword [ebp - 0x10148]
cmp edx, dword [ebp - 0x12c]
jne 0x43f614
cmp dword [ebp - 0x12c], 0x40
jae 0x43f614
mov eax, dword [ebp - 0x10148]
mov ecx, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x128], ecx
mov edx, dword [ebp - 0x12c]
add edx, 1
mov dword [ebp - 0x12c], edx
xor eax, eax
jne 0x43f59f
mov dword [ebp - 0x1014c], 0
jmp 0x43f633
mov ecx, dword [ebp - 0x1014c]
add ecx, 1
mov dword [ebp - 0x1014c], ecx
mov edx, dword [ebp - 0x1014c]
cmp edx, dword [ebp - 0x12c]
jae 0x43f65a
mov eax, dword [ebp - 0x1014c]
mov ecx, dword [ebp + eax*4 - 0x128]
cmp ecx, dword [ebp - 0x1013c]
jne 0x43f658
jmp 0x43f65a
jmp 0x43f624
mov edx, dword [ebp - 0x1014c]
cmp edx, dword [ebp - 0x12c]
jne 0x43f693
cmp dword [ebp - 0x12c], 0x40
jae 0x43f693
mov eax, dword [ebp - 0x1014c]
mov ecx, dword [ebp - 0x1013c]
mov dword [ebp + eax*4 - 0x128], ecx
mov edx, dword [ebp - 0x12c]
add edx, 1
mov dword [ebp - 0x12c], edx
xor eax, eax
jne 0x43f618
lea ecx, [ebp - 0x18]
push ecx
push 0
push 0
lea edx, [ebp - 0x12c]
push edx
push 0
call dword [sym.imp.WS2_32.dll_select]
mov dword [ebp - 0x10144], eax
cmp dword [ebp - 0x10144], 0xffffffff
jne 0x43f6d7
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.socket_error:__d_n
call dword [sym.imp.MSVCR90.dll_printf]
add esp, 8
jmp 0x440608
cmp dword [ebp - 0x10144], 0
jne 0x43f729
push 1
lea ecx, [ebp - 0x101e8]
call fcn.00409eb0
mov dword [ebp - 0x108b0], eax
lea eax, [ebp - 0x1019c]
mov dword [ebp - 0x108b4], eax
mov ecx, dword [ebp - 0x108b4]
sub ecx, 4
call fcn.004016e0
lea ecx, [ebp - 0x1019c]
call dword [sym.imp.MSVCP90.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x43f588
lea ecx, [ebp - 0x12c]
push ecx
mov edx, dword [ebp - 0x1c]
push edx
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x43fdbd
push 0
push 0xffff
lea eax, [ebp - 0x10134]
push eax
mov ecx, dword [ebp - 0x1c]
push ecx
call dword [sym.imp.WS2_32.dll_recv]
mov dword [ebp - 0x10144], eax
cmp dword [ebp - 0x10144], 0
jg 0x43f7a6
push 1
lea ecx, [ebp - 0x10268]
call fcn.00409eb0
mov dword [ebp - 0x108b8], eax
lea edx, [ebp - 0x1021c]
mov dword [ebp - 0x108bc], edx
mov ecx, dword [ebp - 0x108bc]
sub ecx, 4
call fcn.004016e0
lea ecx, [ebp - 0x1021c]
call dword [sym.imp.MSVCP90.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
jmp 0x440608
mov eax, dword [ebp - 0x10144]
mov dword [ebp - 0x10150], eax
cmp dword [ebp - 0x20], 0
jne 0x43f818
push 0x218
call sub.MSVCR90.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov dword [ebp - 0x10270], eax
mov dword [ebp - 4], 0
cmp dword [ebp - 0x10270], 0
je 0x43f7f2
push 0
push 0
mov ecx, dword [ebp - 0x10270]
call fcn.0044a820
mov dword [ebp - 0x10940], eax
jmp 0x43f7fc
mov dword [ebp - 0x10940], 0
mov ecx, dword [ebp - 0x10940]
mov dword [ebp - 0x1026c], ecx
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x1026c]
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 0x10144]
push eax
lea ecx, [ebp - 0x10134]
push ecx
mov ecx, dword [ebp - 0x20]
call fcn.0044ac60
mov edx, dword [ebp - 0x20]
movzx eax, byte [edx + 0x1c9]
test eax, eax
jne 0x43faad
mov ecx, dword [ebp - 0x20]
call fcn.0044ac80
movzx ecx, al
test ecx, ecx
jne 0x43f88d
push 1
lea ecx, [ebp - 0x102f0]
call fcn.00409eb0
mov dword [ebp - 0x108c0], eax
lea edx, [ebp - 0x102a4]
mov dword [ebp - 0x108c4], edx
mov ecx, dword [ebp - 0x108c4]
sub ecx, 4
call fcn.004016e0
lea ecx, [ebp - 0x102a4]
call dword [sym.imp.MSVCP90.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
jmp 0x43f588
mov eax, dword [ebp - 0x20]
movzx ecx, byte [eax + 0x1c8]
test ecx, ecx
jne 0x43f9e8
push 0
mov ecx, dword [ebp - 0x20]
add ecx, 8
call fcn.00447140
push eax
mov ecx, dword [ebp - 0x20]
add ecx, 8
call fcn.00447120
push eax
mov edx, dword [ebp - 0x1013c]
push edx
call dword [sym.imp.WS2_32.dll_send]
mov dword [ebp - 0x10144], eax
cmp dword [ebp - 0x10144], 0
jg 0x43f913
push 1
lea ecx, [ebp - 0x10370]
call fcn.00409eb0
mov dword [ebp - 0x108c8], eax
lea eax, [ebp - 0x10324]
mov dword [ebp - 0x108cc], eax
mov ecx, dword [ebp - 0x108cc]
sub ecx, 4
call fcn.004016e0
lea ecx, [ebp - 0x10324]
call dword [sym.imp.MSVCP90.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
jmp 0x440608
mov eax, dword [ebp - 0x10144]
cdq
mov ecx, dword [ebp - 0x20]
add eax, dword [ecx + 0x1d8]
mov ecx, dword [ecx + 0x1dc]
adc ecx, edx
mov edx, dword [ebp - 0x20]
mov dword [edx + 0x1d8], eax
mov dword [edx + 0x1dc], ecx
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x10944], eax
mov dword [ebp - 0x10948], ecx
mov edx, dword [ebp - 0x10944]
mov eax, dword [ebp - 0x10948]
mov ecx, dword [edx + 0x1dc]
cmp ecx, dword [eax + 0x1d4]
jb 0x43f9e3
ja 0x43f982
mov edx, dword [ebp - 0x10944]
mov eax, dword [ebp - 0x10948]
mov ecx, dword [edx + 0x1d8]
cmp ecx, dword [eax + 0x1d0]
jb 0x43f9e3
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0x10378], edx
mov eax, dword [ebp - 0x10378]
mov dword [ebp - 0x10374], eax
cmp dword [ebp - 0x10374], 0
je 0x43f9d2
mov ecx, dword [ebp - 0x10374]
call fcn.0044ab80
mov ecx, 1
and ecx, 1
je 0x43f9c4
mov edx, dword [ebp - 0x10374]
push edx
call sub.MSVCR90.dll_void___cdecl_operator_delete_void__
add esp, 4
mov eax, dword [ebp - 0x10374]
mov dword [ebp - 0x1094c], eax
jmp 0x43f9dc
mov dword [ebp - 0x1094c], 0
mov dword [ebp - 0x20], 0
jmp 0x43f588
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x10950], ecx
mov edx, dword [ebp - 0x10950]
cmp dword [edx + 0x1d4], 0
ja 0x43fa13
mov eax, dword [ebp - 0x10950]
cmp dword [eax + 0x1d0], 0
jbe 0x43faad
mov ecx, dword [ebp - 0x20]
add ecx, 8
call fcn.00447160
xor ecx, ecx
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0x10958], eax
mov dword [ebp - 0x10954], ecx
mov dword [ebp - 0x1095c], edx
mov eax, dword [ebp - 0x1095c]
mov ecx, dword [ebp - 0x10954]
cmp ecx, dword [eax + 0x1d4]
ja 0x43faad
jb 0x43fa5f
mov edx, dword [ebp - 0x1095c]
mov eax, dword [ebp - 0x10958]
cmp eax, dword [edx + 0x1d0]
jae 0x43faad
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + 0x1d0]
push edx
mov ecx, dword [ebp - 0x20]
add ecx, 8
call fcn.00447200
push 1
lea ecx, [ebp - 0x103f8]
call fcn.00409eb0
mov dword [ebp - 0x108d0], eax
lea eax, [ebp - 0x103ac]
mov dword [ebp - 0x108d4], eax
mov ecx, dword [ebp - 0x108d4]
sub ecx, 4
call fcn.004016e0
lea ecx, [ebp - 0x103ac]
call dword [sym.imp.MSVCP90.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
mov ecx, dword [ebp - 0x20]
movzx edx, byte [ecx + 0x1c8]
test edx, edx
jne 0x43fbfe
push 0
mov eax, dword [ebp - 0x10144]
push eax
lea ecx, [ebp - 0x10134]
push ecx
mov edx, dword [ebp - 0x1013c]
push edx
call dword [sym.imp.WS2_32.dll_send]
mov dword [ebp - 0x10144], eax
cmp dword [ebp - 0x10144], 0
jg 0x43fb29
push 1
lea ecx, [ebp - 0x10478]
call fcn.00409eb0
mov dword [ebp - 0x108d8], eax
lea eax, [ebp - 0x1042c]
mov dword [ebp - 0x108dc], eax
mov ecx, dword [ebp - 0x108dc]
sub ecx, 4
call fcn.004016e0
lea ecx, [ebp - 0x1042c]
call dword [sym.imp.MSVCP90.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
jmp 0x440608
mov eax, dword [ebp - 0x10144]
cdq
mov ecx, dword [ebp - 0x20]
add eax, dword [ecx + 0x1d8]
mov ecx, dword [ecx + 0x1dc]
adc ecx, edx
mov edx, dword [ebp - 0x20]
mov dword [edx + 0x1d8], eax
mov dword [edx + 0x1dc], ecx
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x10960], eax
mov dword [ebp - 0x10964], ecx
mov edx, dword [ebp - 0x10960]
mov eax, dword [ebp - 0x10964]
mov ecx, dword [edx + 0x1dc]
cmp ecx, dword [eax + 0x1d4]
jb 0x43fbf9
ja 0x43fb98
mov edx, dword [ebp - 0x10960]
mov eax, dword [ebp - 0x10964]
mov ecx, dword [edx + 0x1d8]
cmp ecx, dword [eax + 0x1d0]
jb 0x43fbf9
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0x10480], edx
mov eax, dword [ebp - 0x10480]
mov dword [ebp - 0x1047c], eax
cmp dword [ebp - 0x1047c], 0
je 0x43fbe8
mov ecx, dword [ebp - 0x1047c]
call fcn.0044ab80
mov ecx, 1
and ecx, 1
je 0x43fbda
mov edx, dword [ebp - 0x1047c]
push edx
call sub.MSVCR90.dll_void___cdecl_operator_delete_void__
add esp, 4
mov eax, dword [ebp - 0x1047c]
mov dword [ebp - 0x10968], eax
jmp 0x43fbf2
mov dword [ebp - 0x10968], 0
mov dword [ebp - 0x20], 0
jmp 0x43f588
mov ecx, dword [ebp - 0x20]
add ecx, 8
call fcn.00447140
xor ecx, ecx
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0x10970], eax
mov dword [ebp - 0x1096c], ecx
mov dword [ebp - 0x10974], edx
mov eax, dword [ebp - 0x10974]
mov ecx, dword [ebp - 0x10970]
cmp ecx, dword [eax + 0x1d0]
jne 0x43fdb8
mov edx, dword [ebp - 0x10974]
mov eax, dword [ebp - 0x1096c]
cmp eax, dword [edx + 0x1d4]
jne 0x43fdb8
mov ecx, dword [ebp - 0x20]
movzx edx, byte [ecx + 0x1c8]
test edx, edx
je 0x43fc66
mov ecx, dword [ebp - 0x20]
call fcn.0044b640
mov eax, dword [ebp - 0x20]
movzx ecx, byte [eax + 0x1c8]
test ecx, ecx
je 0x43fc8a
mov ecx, dword [ebp - 0x20]
add ecx, 0x1e0
call fcn.00447120
mov dword [ebp - 0x10978], eax
jmp 0x43fc9b
mov ecx, dword [ebp - 0x20]
add ecx, 8
call fcn.00447120
mov dword [ebp - 0x10978], eax
mov edx, dword [ebp - 0x10978]
mov dword [ebp - 0x10158], edx
mov eax, dword [ebp - 0x20]
movzx ecx, byte [eax + 0x1c8]
test ecx, ecx
je 0x43fccb
mov ecx, dword [ebp - 0x20]
add ecx, 0x1e0
call fcn.00447140
mov dword [ebp - 0x1097c], eax
jmp 0x43fcdc
mov ecx, dword [ebp - 0x20]
add ecx, 8
call fcn.00447140
mov dword [ebp - 0x1097c], eax
mov edx, dword [ebp - 0x1097c]
mov dword [ebp - 0x10154], edx
push 0
mov eax, dword [ebp - 0x10154]
push eax
mov ecx, dword [ebp - 0x10158]
push ecx
mov edx, dword [ebp - 0x1013c]
push edx
call dword [sym.imp.WS2_32.dll_send]
mov dword [ebp - 0x10144], eax
cmp dword [ebp - 0x10144], 0
jg 0x43fd52
push 1
lea ecx, [ebp - 0x10500]
call fcn.00409eb0
mov dword [ebp - 0x108e0], eax
lea eax, [ebp - 0x104b4]
mov dword [ebp - 0x108e4], eax
mov ecx, dword [ebp - 0x108e4]
sub ecx, 4
call fcn.004016e0
lea ecx, [ebp - 0x104b4]
call dword [sym.imp.MSVCP90.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
jmp 0x440608
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x10508], ecx
mov edx, dword [ebp - 0x10508]
mov dword [ebp - 0x10504], edx
cmp dword [ebp - 0x10504], 0
je 0x43fda2
mov ecx, dword [ebp - 0x10504]
call fcn.0044ab80
mov eax, 1
and eax, 1
je 0x43fd94
mov ecx, dword [ebp - 0x10504]
push ecx
call sub.MSVCR90.dll_void___cdecl_operator_delete_void__
add esp, 4
mov edx, dword [ebp - 0x10504]
mov dword [ebp - 0x10980], edx
jmp 0x43fdac
mov dword [ebp - 0x10980], 0
mov dword [ebp - 0x20], 0
jmp 0x43f588
jmp 0x4405fb
lea eax, [ebp - 0x12c]
push eax
mov ecx, dword [ebp - 0x1013c]
push ecx
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x4405fb
push 0
push 0xffff
lea edx, [ebp - 0x10134]
push edx
mov eax, dword [ebp - 0x1013c]
push eax
call dword [sym.imp.WS2_32.dll_recv]
mov dword [ebp - 0x10144], eax
cmp dword [ebp - 0x10144], 0
jg 0x43fe31
push 1
lea ecx, [ebp - 0x10588]
call fcn.00409eb0
mov dword [ebp - 0x108e8], eax
lea ecx, [ebp - 0x1053c]
call fcn.00409fa0
lea ecx, [ebp - 0x1053c]
call dword [sym.imp.MSVCP90.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
jmp 0x440608
mov ecx, dword [ebp - 0x10144]
mov dword [ebp - 0x1015c], ecx
push str.HTTP_1.1
lea edx, [ebp - 0x10134]
push edx
call dword [sym.imp.MSVCR90.dll_strstr]
add esp, 8
lea ecx, [ebp - 0x10134]
cmp ecx, eax
je 0x43fe7f
push 0x618234
lea edx, [ebp - 0x10134]
push edx
call dword [sym.imp.MSVCR90.dll_strstr]
add esp, 8
lea ecx, [ebp - 0x10134]
cmp ecx, eax
jne 0x43ff46
cmp dword [ebp - 0x24], 0
je 0x43fee6
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x10590], edx
mov eax, dword [ebp - 0x10590]
mov dword [ebp - 0x1058c], eax
cmp dword [ebp - 0x1058c], 0
je 0x43fed5
mov ecx, dword [ebp - 0x1058c]
call fcn.0044ab80
mov ecx, 1
and ecx, 1
je 0x43fec7
mov edx, dword [ebp - 0x1058c]
push edx
call sub.MSVCR90.dll_void___cdecl_operator_delete_void__
add esp, 4
mov eax, dword [ebp - 0x1058c]
mov dword [ebp - 0x10984], eax
jmp 0x43fedf
mov dword [ebp - 0x10984], 0
mov dword [ebp - 0x24], 0
push 0x218
call sub.MSVCR90.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov dword [ebp - 0x10598], eax
mov dword [ebp - 4], 1
cmp dword [ebp - 0x10598], 0
je 0x43ff20
push 1
push 0
mov ecx, dword [ebp - 0x10598]
call fcn.0044a820
mov dword [ebp - 0x10988], eax
jmp 0x43ff2a
mov dword [ebp - 0x10988], 0
mov ecx, dword [ebp - 0x10988]
mov dword [ebp - 0x10594], ecx
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x10594]
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x10144]
push eax
lea ecx, [ebp - 0x10134]
push ecx
mov ecx, dword [ebp - 0x24]
call fcn.0044ac60
mov edx, dword [ebp - 0x24]
movzx eax, byte [edx + 0x1c9]
test eax, eax
jne 0x43ffa8
mov ecx, dword [ebp - 0x24]
call fcn.0044d0a0
movzx ecx, al
test ecx, ecx
jne 0x43ffa8
push 1
lea ecx, [ebp - 0x10618]
call fcn.00409eb0
mov dword [ebp - 0x108f4], eax
lea ecx, [ebp - 0x105cc]
call fcn.00409fa0
lea ecx, [ebp - 0x105cc]
call dword [sym.imp.MSVCP90.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
jmp 0x43f588
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x1098c], edx
mov eax, dword [ebp - 0x1098c]
mov ecx, dword [ebp - 0x1098c]
mov edx, dword [eax + 0x1d0]
or edx, dword [ecx + 0x1d4]
jne 0x440288
mov eax, dword [ebp - 0x24]
cmp dword [eax + 0x110], 0x130
jne 0x440001
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x24]
mov eax, dword [edx + 0x1c0]
mov dword [ecx + 0x1d0], eax
mov edx, dword [edx + 0x1c4]
mov dword [ecx + 0x1d4], edx
jmp 0x440196
mov eax, dword [ebp - 0x24]
movzx ecx, byte [eax + 0x1bc]
test ecx, ecx
je 0x4400a0
mov ecx, dword [ebp - 0x24]
add ecx, 8
call fcn.00447120
mov esi, eax
mov ecx, dword [ebp - 0x24]
add ecx, 8
call fcn.00447140
lea edx, [esi + eax - 5]
mov dword [ebp - 0x10160], edx
mov eax, dword [ebp - 0x10160]
movsx ecx, byte [eax]
cmp ecx, 0x30
jne 0x44009b
mov edx, dword [ebp - 0x10160]
movsx eax, byte [edx + 1]
cmp eax, 0xd
jne 0x44009b
mov ecx, dword [ebp - 0x10160]
movsx edx, byte [ecx + 2]
cmp edx, 0xa
jne 0x44009b
mov eax, dword [ebp - 0x10160]
movsx ecx, byte [eax + 3]
cmp ecx, 0xd
jne 0x44009b
mov edx, dword [ebp - 0x10160]
movsx eax, byte [edx + 4]
cmp eax, 0xa
jne 0x44009b
mov ecx, dword [ebp - 0x24]
add ecx, 8
call fcn.00447140
xor ecx, ecx
mov edx, dword [ebp - 0x24]
mov dword [edx + 0x1d0], eax
mov dword [edx + 0x1d4], ecx
jmp 0x440196
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x10990], eax
mov ecx, dword [ebp - 0x10990]
mov edx, dword [ebp - 0x10990]
mov eax, dword [ecx + 0x130]
and eax, dword [edx + 0x134]
cmp eax, 0xffffffff
jne 0x440116
mov ecx, dword [ebp - 0x24]
mov dword [ecx + 0x1d0], 0xffffffff
mov dword [ecx + 0x1d4], 0xffffffff
mov edx, dword [ebp - 0x24]
mov byte [edx + 0x20e], 1
push 1
lea ecx, [ebp - 0x10698]
call fcn.00409eb0
mov dword [ebp - 0x10900], eax
lea ecx, [ebp - 0x1064c]
call fcn.00409fa0
lea ecx, [ebp - 0x1064c]
call dword [sym.imp.MSVCP90.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
jmp 0x440196
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x10994], eax
mov ecx, dword [ebp - 0x10994]
cmp dword [ecx + 0x134], 0
ja 0x44013d
mov edx, dword [ebp - 0x10994]
cmp dword [edx + 0x130], 0
jb 0x44016c
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x24]
mov edx, dword [eax + 0x1c0]
add edx, dword [ecx + 0x130]
mov eax, dword [eax + 0x1c4]
adc eax, dword [ecx + 0x134]
mov ecx, dword [ebp - 0x24]
mov dword [ecx + 0x1d0], edx
mov dword [ecx + 0x1d4], eax
jmp 0x440196
push 1
lea ecx, [ebp - 0x10718]
call fcn.00409eb0
mov dword [ebp - 0x1090c], eax
lea ecx, [ebp - 0x106cc]
call fcn.00409fa0
lea ecx, [ebp - 0x106cc]
call dword [sym.imp.MSVCP90.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
mov edx, dword [ebp - 0x24]
movzx eax, byte [edx + 0x20e]
test eax, eax
jne 0x440288
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x10998], ecx
mov edx, dword [ebp - 0x10998]
mov eax, dword [ebp - 0x10998]
mov ecx, dword [edx + 0x130]
and ecx, dword [eax + 0x134]
cmp ecx, 0xffffffff
je 0x440288
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x1099c], edx
mov eax, dword [ebp - 0x1099c]
cmp dword [eax + 0x1d4], 0
ja 0x4401fd
mov ecx, dword [ebp - 0x1099c]
cmp dword [ecx + 0x1d0], 0
jbe 0x440288
mov ecx, dword [ebp - 0x24]
add ecx, 8
call fcn.00447160
xor edx, edx
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x109a4], eax
mov dword [ebp - 0x109a0], edx
mov dword [ebp - 0x109a8], ecx
mov edx, dword [ebp - 0x109a8]
mov eax, dword [ebp - 0x109a0]
cmp eax, dword [edx + 0x1d4]
ja 0x440288
jb 0x440249
mov ecx, dword [ebp - 0x109a8]
mov edx, dword [ebp - 0x109a4]
cmp edx, dword [ecx + 0x1d0]
jae 0x440288
mov eax, dword [ebp - 0x24]
mov ecx, dword [eax + 0x1d0]
push ecx
mov ecx, dword [ebp - 0x24]
add ecx, 8
call fcn.00447200
push 1
lea ecx, [ebp - 0x10798]
call fcn.00409eb0
mov dword [ebp - 0x10918], eax
lea ecx, [ebp - 0x1074c]
call fcn.00409fa0
lea ecx, [ebp - 0x1074c]
call dword [sym.imp.MSVCP90.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
mov edx, dword [ebp - 0x24]
movzx eax, byte [edx + 0x1c8]
test eax, eax
jne 0x4403f0
push 0
mov ecx, dword [ebp - 0x10144]
push ecx
lea edx, [ebp - 0x10134]
push edx
mov eax, dword [ebp - 0x1c]
push eax
call dword [sym.imp.WS2_32.dll_send]
mov dword [ebp - 0x10144], eax
cmp dword [ebp - 0x10144], 0
jg 0x4402f2
push 1
lea ecx, [ebp - 0x10818]
call fcn.00409eb0
mov dword [ebp - 0x10924], eax
lea ecx, [ebp - 0x107cc]
call fcn.00409fa0
lea ecx, [ebp - 0x107cc]
call dword [sym.imp.MSVCP90.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
jmp 0x440608
mov eax, dword [ebp - 0x1015c]
cdq
mov ecx, dword [ebp - 0x24]
add eax, dword [ecx + 0x1d8]
mov ecx, dword [ecx + 0x1dc]
adc ecx, edx
mov edx, dword [ebp - 0x24]
mov dword [edx + 0x1d8], eax
mov dword [edx + 0x1dc], ecx
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x109ac], eax
mov ecx, dword [ebp - 0x109ac]
cmp dword [ecx + 0x1d0], 0xffffffff
jne 0x440344
mov edx, dword [ebp - 0x109ac]
cmp dword [edx + 0x1d4], 0xffffffff
je 0x4403eb
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x109b0], eax
mov dword [ebp - 0x109b4], ecx
mov edx, dword [ebp - 0x109b0]
mov eax, dword [ebp - 0x109b4]
mov ecx, dword [edx + 0x1d8]
cmp ecx, dword [eax + 0x1d0]
jne 0x4403eb
mov edx, dword [ebp - 0x109b0]
mov eax, dword [ebp - 0x109b4]
mov ecx, dword [edx + 0x1dc]
cmp ecx, dword [eax + 0x1d4]
jne 0x4403eb
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x10820], edx
mov eax, dword [ebp - 0x10820]
mov dword [ebp - 0x1081c], eax
cmp dword [ebp - 0x1081c], 0
je 0x4403da
mov ecx, dword [ebp - 0x1081c]
call fcn.0044ab80
mov ecx, 1
and ecx, 1
je 0x4403cc
mov edx, dword [ebp - 0x1081c]
push edx
call sub.MSVCR90.dll_void___cdecl_operator_delete_void__
add esp, 4
mov eax, dword [ebp - 0x1081c]
mov dword [ebp - 0x109b8], eax
jmp 0x4403e4
mov dword [ebp - 0x109b8], 0
mov dword [ebp - 0x24], 0
jmp 0x43f588
mov ecx, dword [ebp - 0x24]
add ecx, 8
call fcn.00447140
xor ecx, ecx
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x109c0], eax
mov dword [ebp - 0x109bc], ecx
mov dword [ebp - 0x109c4], edx
mov eax, dword [ebp - 0x109c4]
mov ecx, dword [ebp - 0x109c0]
cmp ecx, dword [eax + 0x1d0]
jne 0x4405fb
mov edx, dword [ebp - 0x109c4]
mov eax, dword [ebp - 0x109bc]
cmp eax, dword [edx + 0x1d4]
jne 0x4405fb
mov ecx, dword [ebp - 0x24]
call fcn.0044db80
mov ecx, dword [ebp - 0x24]
movzx edx, byte [ecx + 0x1c8]
test edx, edx
je 0x44046e
mov ecx, dword [ebp - 0x24]
add ecx, 0x1e0
call fcn.00447120
mov dword [ebp - 0x109c8], eax
jmp 0x44047f
mov ecx, dword [ebp - 0x24]
add ecx, 8
call fcn.00447120
mov dword [ebp - 0x109c8], eax
mov eax, dword [ebp - 0x109c8]
mov dword [ebp - 0x10168], eax
mov ecx, dword [ebp - 0x24]
movzx edx, byte [ecx + 0x1c8]
test edx, edx
je 0x4404af
mov ecx, dword [ebp - 0x24]
add ecx, 0x1e0
call fcn.00447140
mov dword [ebp - 0x109cc], eax
jmp 0x4404c0
mov ecx, dword [ebp - 0x24]
add ecx, 8
call fcn.00447140
mov dword [ebp - 0x109cc], eax
mov eax, dword [ebp - 0x109cc]
mov dword [ebp - 0x10164], eax
push 0
mov ecx, dword [ebp - 0x10164]
push ecx
mov edx, dword [ebp - 0x10168]
push edx
mov eax, dword [ebp - 0x1c]
push eax
call dword [sym.imp.WS2_32.dll_send]
mov dword [ebp - 0x10144], eax
cmp dword [ebp - 0x10144], 0
jg 0x440524
push 1
lea ecx, [ebp - 0x108a0]
call fcn.00409eb0
mov dword [ebp - 0x10934], eax
lea ecx, [ebp - 0x10854]
call fcn.00409fa0
lea ecx, [ebp - 0x10854]
call dword [sym.imp.MSVCP90.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
jmp 0x440608
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x109d0], ecx
mov edx, dword [ebp - 0x109d0]
cmp dword [edx + 0x1d0], 0xffffffff
jne 0x44054f
mov eax, dword [ebp - 0x109d0]
cmp dword [eax + 0x1d4], 0xffffffff
je 0x4405f6
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x109d4], ecx
mov dword [ebp - 0x109d8], edx
mov eax, dword [ebp - 0x109d4]
mov ecx, dword [ebp - 0x109d8]
mov edx, dword [eax + 0x1d8]
cmp edx, dword [ecx + 0x1d0]
jne 0x4405f6
mov eax, dword [ebp - 0x109d4]
mov ecx, dword [ebp - 0x109d8]
mov edx, dword [eax + 0x1dc]
cmp edx, dword [ecx + 0x1d4]
jne 0x4405f6
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x108a8], eax
mov ecx, dword [ebp - 0x108a8]
mov dword [ebp - 0x108a4], ecx
cmp dword [ebp - 0x108a4], 0
je 0x4405e5
mov ecx, dword [ebp - 0x108a4]
call fcn.0044ab80
mov edx, 1
and edx, 1
je 0x4405d7
mov eax, dword [ebp - 0x108a4]
push eax
call sub.MSVCR90.dll_void___cdecl_operator_delete_void__
add esp, 4
mov ecx, dword [ebp - 0x108a4]
mov dword [ebp - 0x109dc], ecx
jmp 0x4405ef
mov dword [ebp - 0x109dc], 0
mov dword [ebp - 0x24], 0
jmp 0x43f588
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x43f588
mov edx, dword [ebp - 0x1c]
push edx
call dword [sym.imp.WS2_32.dll_closesocket]
mov eax, dword [ebp - 0x1013c]
push eax
call dword [sym.imp.WS2_32.dll_closesocket]
push 0x618220
call dword [sym.imp.MSVCR90.dll_printf]
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x130]
xor ecx, ebp
call fcn.005fff12
mov esp, ebp
pop ebp
ret 4