Function at 0x10092360
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Create tcp socket

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x10147f5b
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x15e8
call fcn.10140530
mov eax, dword [0x10189710]
xor eax, esp
mov dword [esp + 0x15e4], eax
push ebx
push edi
mov eax, dword [0x10189710]
xor eax, esp
push eax
lea eax, [esp + 0x15f8]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
xor ebx, ebx
push 0x103
lea edx, [esp + 0xc9]
push ebx
push edx
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], ecx
mov byte [esp + 0xd0], bl
call fcn.1012e060
add esp, 0xc
push 0xbff
lea eax, [esp + 0x9f1]
push ebx
push eax
mov byte [esp + 0x9f8], bl
call fcn.1012e060
add esp, 0xc
push 0x103
lea ecx, [esp + 0x2d9]
push ebx
push ecx
mov byte [esp + 0x2e0], bl
call fcn.1012e060
add esp, 0xc
push 0x103
lea edx, [esp + 0x1d1]
push ebx
push edx
mov dword [esp + 0x1c], ebx
mov byte [esp + 0x1d8], bl
call fcn.1012e060
add esp, 0xc
lea edi, [esp + 0xc4]
call fcn.1005d0a0
cmp eax, 1
je 0x10092449
mov ecx, edi
call fcn.1005d240
test eax, eax
je 0x10092833
cmp esi, ebx
je 0x10092463
lea eax, [esp + 0xc4]
push eax
push str._MWD__eScan_Path:___s_
push ebx
call fcn.1006ed90
add esp, 0xc
lea ecx, [esp + 0xc4]
push ebx
push ecx
call fcn.100612a0
add esp, 8
test eax, eax
je 0x10092812
lea ecx, [esp + 0xc4]
call fcn.10065200
push str.eupdate.ini
lea edx, [esp + 0xc8]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
push 1
push ebx
xor edx, edx
lea ecx, [esp + 0xcc]
call fcn.10060eb0
add esp, 8
test eax, eax
jne 0x100927f1
cmp esi, ebx
je 0x100924d1
lea eax, [esp + 0xc4]
push eax
push str._MWD__Eupdate.INI:___s_
push ebx
call fcn.1006ed90
add esp, 0xc
lea ecx, [esp + 0xc4]
push ecx
push 0xc00
push str.Config
lea edi, [esp + 0x9f8]
mov edx, 0x1014d5e3
mov ecx, str.Servers
call fcn.10073c60
add esp, 0xc
cmp esi, ebx
je 0x10092511
mov edx, edi
push edx
push str._MWD__EUPDATE.INI__Config__Servers__s_
push ebx
call fcn.1006ed90
add esp, 0xc
cmp byte [esp + 0x9ec], bl
je 0x100927ea
push 0x103
lea eax, [esp + 0x3e1]
push ebx
push eax
mov byte [esp + 0x3e8], bl
call fcn.1012e060
add esp, 0xc
lea ecx, [esp + 0xc4]
push ecx
push 0x104
push str.Config
lea edi, [esp + 0x3e8]
mov edx, 0x1014d5e3
mov ecx, str.PriorityServer
call fcn.10073c60
add esp, 0xc
cmp esi, ebx
je 0x1009257b
mov edx, edi
push edx
push str._MWD__EUPDATE.INI__Config__PriorityServer__s_
push ebx
call fcn.1006ed90
add esp, 0xc
cmp byte [esp + 0x3dc], bl
je 0x100925b9
push 1
push 0x2c
lea edx, [esp + 0x3e4]
lea ecx, [esp + 0x9f4]
call fcn.1006c030
test eax, eax
je 0x100925b9
cmp esi, ebx
je 0x100925b9
lea eax, [esp + 0x9ec]
push eax
push str._MWD__New_IpList_1_:__s_
push ebx
call fcn.1006ed90
add esp, 0xc
push 0x3ff
lea ecx, [esp + 0x5f1]
push ebx
push ecx
mov byte [esp + 0x5f8], bl
call fcn.1012e060
add esp, 0xc
push 0x400
lea edx, [esp + 0x5f0]
push edx
push 0x1014d5e3
mov edx, str.ServerIP
mov ecx, str.eScan
call fcn.1005ffb0
add esp, 0xc
cmp byte [esp + 0x5ec], bl
je 0x100926a7
push 1
push 0x2c
lea eax, [esp + 0x14]
lea ecx, [esp + 0x4ec]
push eax
push ecx
xor cl, cl
lea edx, [esp + 0x5fc]
mov dword [esp + 0x1c], ebx
xor edi, edi
call fcn.10061f00
add esp, 0x10
cmp dword [esp + 0xc], 0xffffffff
je 0x100926a7
jmp 0x10092640
push 1
push 0x2c
lea edx, [esp + 0x4ec]
lea ecx, [esp + 0x9f4]
call fcn.1006c030
test eax, eax
je 0x10092660
mov edi, 1
push 1
push 0x2c
lea edx, [esp + 0x14]
push edx
lea eax, [esp + 0x4f0]
push eax
xor cl, cl
lea edx, [esp + 0x5fc]
call fcn.10061f00
add esp, 0x10
cmp dword [esp + 0xc], 0xffffffff
jne 0x10092640
cmp edi, ebx
je 0x100926a7
cmp esi, ebx
je 0x100926a7
lea ecx, [esp + 0x9ec]
push ecx
push str._MWD__New_IpList_2_:__s_
push ebx
call fcn.1006ed90
add esp, 0xc
lea ecx, [esp + 0x1c]
call fcn.1007ed00
push 1
push 0x2c
lea eax, [esp + 0x18]
lea ecx, [esp + 0x2dc]
push eax
push ecx
xor cl, cl
lea edx, [esp + 0x9fc]
mov dword [esp + 0x1610], ebx
call fcn.10061f00
or edi, 0xffffffff
add esp, 0x10
cmp dword [esp + 0x10], edi
je 0x10092968
cmp esi, ebx
je 0x10092700
lea edx, [esp + 0x2d4]
push edx
push str._MWD__GetIPAddressFromHost___s_
push ebx
call fcn.1006ed90
add esp, 0xc
lea ebx, [esp + 0x1cc]
lea ecx, [esp + 0x2d4]
call fcn.10086b20
test eax, eax
je 0x10092909
cmp byte [esp + 0x1cc], 0
je 0x10092909
push 0
mov ecx, ebx
lea edx, [esp + 0x20]
call fcn.1007eff0
test eax, eax
je 0x100928e5
test esi, esi
je 0x1009275a
mov eax, dword [0x10191bfc]
push eax
mov ecx, ebx
push ecx
push str._MWD__Trying_to_Connect_to__s:_d
push 0
call fcn.1006ed90
add esp, 0x10
push 6
push 1
push 2
call sub.WS2_32.dll_socket
mov edi, eax
cmp edi, 0xffffffff
je 0x100928d0
movzx eax, word [0x10191bfc]
mov edx, 2
push eax
mov word [esp + 0xb8], dx
call sub.WS2_32.dll_htons
lea ecx, [esp + 0x1cc]
push ecx
mov word [esp + 0xba], ax
call sub.WS2_32.dll_inet_addr
push 0x10
lea edx, [esp + 0xb8]
push edx
push edi
mov dword [esp + 0xc4], eax
call sub.WS2_32.dll_connect
test eax, eax
jge 0x100929d6
test esi, esi
je 0x100927df
mov eax, dword [0x10191bfc]
push eax
lea ecx, [esp + 0x1d0]
push ecx
push str._MWD__failed_to_connect_to__s:_d
push 0
call fcn.1006ed90
add esp, 0x10
push edi
call sub.WS2_32.dll_closesocket
jmp 0x10092937
mov edi, 5
jmp 0x1009284a
cmp esi, ebx
je 0x1009280b
lea edx, [esp + 0xc4]
push edx
push str._MWD__INI_Absent:___s_
push ebx
call fcn.1006ed90
add esp, 0xc
mov edi, 4
jmp 0x1009284a
cmp esi, ebx
je 0x1009282c
lea eax, [esp + 0xc4]
push eax
push str._MWD__Path_Absent:___s_
push ebx
call fcn.1006ed90
add esp, 0xc
mov edi, 2
jmp 0x1009284a
cmp esi, ebx
je 0x10092845
push str._MWD__GeteScanPath_failed_
push ebx
call fcn.1006ed90
add esp, 8
mov edi, 1
cmp esi, ebx
je 0x1009285d
push edi
push str._MWD__Failed_to_get_IPList_from_eupdate.ini___u_.__Trying_to_read_entries_from_win.ini
push ebx
call fcn.1006ed90
add esp, 0xc
push edi
push str._MWD__Failed_to_get_IPList_from_eupdate.ini___u_.__Trying_to_read_entries_from_win.ini
call fcn.10017540
push 0xc00
lea ecx, [esp + 0x9f8]
push ecx
push 0x1014d5e3
mov edx, str.ServerIP
mov ecx, str.eScan
call fcn.1005ffb0
add esp, 0x14
cmp esi, ebx
je 0x100928a6
lea edx, [esp + 0x9ec]
push edx
push str._MWD__WIN.INI__eScan__ServerIP__s_
push ebx
call fcn.1006ed90
add esp, 0xc
cmp byte [esp + 0x9ec], bl
jne 0x100926a7
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x100928c9
push str._MWD__Failed_to_get_IPList_from_win.ini_and_eupdate.ini...
push eax
call fcn.10127dc0
add esp, 8
xor eax, eax
jmp 0x100929b3
test esi, esi
je 0x10092937
push str._MWD__Invalid_Socket_
push 0
call fcn.1006ed90
add esp, 8
jmp 0x10092937
test esi, esi
je 0x10092937
mov edx, dword [0x10191bfc]
push edx
lea eax, [esp + 0x1d0]
push eax
push str._MWD__Already_tried__s:_d
push 0
call fcn.1006ed90
add esp, 0x10
jmp 0x10092937
test esi, esi
je 0x10092937
test eax, eax
je 0x10092920
lea ecx, [esp + 0x2d4]
push ecx
push str._MWD__GetIPAddressFromHost___s__Failed_
jmp 0x1009292d
lea edx, [esp + 0x2d4]
push edx
push str._MWD__GetIPAddressFromHost___s__Failed__Blank_IP_address_got_
push 0
call fcn.1006ed90
add esp, 0xc
push 1
push 0x2c
lea eax, [esp + 0x18]
lea ecx, [esp + 0x2dc]
push eax
push ecx
xor cl, cl
lea edx, [esp + 0x9fc]
call fcn.10061f00
or edi, 0xffffffff
add esp, 0x10
xor ebx, ebx
cmp dword [esp + 0x10], edi
jne 0x100926e6
cmp esi, ebx
je 0x10092981
mov edx, dword [0x10191bfc]
push edx
push str._MWD__Connection_for_ESRAProxy__u__was_not_available_on_any_of_given_servers._Retrying...
push ebx
call fcn.1006ed90
add esp, 0xc
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x1009299e
mov ecx, dword [0x10191bfc]
push ecx
push str._MWD__Connection_for_ESRAProxy__u__was_not_available_on_any_of_given_servers._Retrying...
push eax
call fcn.10127dc0
add esp, 0xc
lea ecx, [esp + 0x1c]
mov dword [esp + 0x1600], edi
call fcn.1007edd0
mov eax, 1
mov ecx, dword [esp + 0x15f8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop ebx
mov ecx, dword [esp + 0x15e4]
xor ecx, esp
call fcn.10127db1
mov esp, ebp
pop ebp
ret
test esi, esi
je 0x100929f8
mov edx, dword [0x10191bfc]
push edx
lea eax, [esp + 0x1d0]
push eax
push str._MWD__SUCCESS_connecting_to__s:_d
push 0
call fcn.1006ed90
add esp, 0x10
push edi
call sub.WS2_32.dll_closesocket
mov edx, dword [esp + 0x18]
lea eax, [esp + 0x1cc]
mov ecx, eax
sub edx, ecx
lea ecx, [ecx]
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x10092a10
lea ecx, [esp + 0x1c]
mov dword [esp + 0x1600], 0xffffffff
call fcn.1007edd0
mov eax, 2
jmp 0x100929b3