Function at 0x47fdb0
Capabilities:
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x254c
call fcn.005d9990
mov ecx, dword [0x642fa4]
push ebx
push esi
mov esi, ecx
test esi, esi
push edi
mov dword [esp + 0x10], esi
je 0x47fdec
mov eax, dword [ebp + 0xc]
cmp dword [esi + 0x3a4], eax
je 0x47fe0c
mov esi, dword [esi + 0x7b0]
test esi, esi
jne 0x47fdd6
mov dword [esp + 0x10], esi
test ecx, ecx
je 0x47fdf9
push ecx
call fcn.0047f5e0
add esp, 4
push 0
call fcn.0047f930
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 0x7ac]
push eax
mov dword [esp + 0x14], esi
call fcn.00508aa0
add esp, 4
test eax, eax
je 0x480831
mov ecx, dword [ebp + 8]
shr ecx, 0x10
test ecx, ecx
jne 0x47ff7b
mov edx, dword [esi + 0x3a4]
push edx
call dword [sym.imp.WSOCK32.dll_WSACancelAsyncRequest]
lea ebx, [esi + 0x3ac]
test ebx, ebx
je 0x47ff7b
push 0x642fa8
call fcn.004e8c50
add esp, 4
lea edi, [esi + 0x132]
push edi
call dword [sym.imp.WSOCK32.dll_inet_addr]
cmp eax, 0xffffffff
jne 0x47ff71
mov ebx, dword [ebx + 0xc]
test ebx, ebx
je 0x47ff7b
mov eax, dword [ebx]
test eax, eax
je 0x47ff7b
mov eax, dword [eax]
push eax
call dword [sym.imp.WSOCK32.dll_inet_ntoa]
test eax, eax
lea ebx, [esi + 0x264]
je 0x47feac
push eax
push 0x132
push ebx
call fcn.00425550
add esp, 0xc
jmp 0x47feaf
mov byte [ebx], 0
mov eax, dword [esi + 0x3b8]
cmp dword [eax], 0
je 0x47ff18
xor edi, edi
lea esp, [esp]
mov ecx, dword [eax + edi*4]
mov eax, dword [ecx]
push eax
call dword [sym.imp.WSOCK32.dll_inet_ntoa]
test eax, eax
je 0x47ff09
push eax
lea edx, [esp + 0x1c]
push 0x432
push edx
call fcn.00425550
call fcn.005d9ec8
mov ecx, dword [0x642fa8]
push eax
lea eax, [esp + 0x28]
push eax
push ecx
call fcn.004e8850
add esp, 0x18
test eax, eax
je 0x47ff09
mov dword [0x642fa8], eax
mov edx, dword [eax + 0x44]
mov dword [edx + 8], edi
mov eax, dword [esi + 0x3b8]
mov ecx, dword [eax + edi*4 + 4]
inc edi
test ecx, ecx
jne 0x47fec0
mov eax, dword [0x642fa8]
test eax, eax
je 0x480107
mov ecx, dword [esi + 0x7ac]
push ecx
push 0x32
push eax
call fcn.005547c0
mov dword [0x642fa8], eax
mov edx, dword [eax + 8]
mov eax, dword [esi + 0x3b8]
mov ecx, dword [eax + edx*4]
mov edx, dword [ecx]
add esp, 0xc
push edx
call dword [sym.imp.WSOCK32.dll_inet_ntoa]
test eax, eax
je 0x47ff69
push eax
push 0x132
push ebx
call fcn.00425550
add esp, 0xc
jmp 0x480107
mov byte [ebx], 0
jmp 0x480107
mov eax, dword [ebx]
test eax, eax
jne 0x4800c6
mov eax, dword [esi + 0x39c]
cmp eax, 4
lea ebx, [esi + 0x264]
mov byte [ebx], 0
je case.0x480120.4
cmp eax, 5
je case.0x480120.5
cmp eax, 0x33
je case.0x480120.51
cmp eax, 0x34
je case.0x480120.52
cmp eax, 6
je case.0x480120.6
cmp eax, 7
je case.0x480120.7
cmp eax, 8
je case.0x480120.8
cmp eax, 9
je case.0x480120.9
cmp eax, 0xa
je case.0x480120.10
mov ecx, dword [0x68758c]
test ecx, ecx
je 0x480033
test eax, eax
je 0x47ffee
cmp eax, 1
jne 0x480033
xor eax, eax
mov ecx, 0x842
lea edi, [esp + 0x450]
rep stosd dword es:[edi], eax
mov ecx, dword [esi + 0x7ac]
lea eax, [esp + 0x450]
push eax
push 0
push 0
push 0x16
push 0x5f86e4
push 0
push 0
push ecx
mov dword [esp + 0x484], esi
call fcn.0053a710
add esp, 0x20
test eax, eax
je 0x480831
mov eax, dword [esi + 0x398]
test eax, eax
je 0x480831
mov eax, dword [esi + 0x39c]
test eax, eax
jne 0x48006d
push esi
push 0
push 0x7d6
call fcn.00424130
add esp, 8
push eax
lea edx, [esp + 0x20]
push edx
call fcn.005d9929
mov eax, dword [0x63ca9c]
jmp 0x480093
lea eax, [esi + 0x132]
push eax
push 0
push 0x7d5
call fcn.00424130
add esp, 8
push eax
lea ecx, [esp + 0x20]
push ecx
call fcn.005d9929
mov eax, dword [0x63caac]
add esp, 0xc
push eax
mov dword [0x6870cc], 0
mov dword [0x6870dc], 1
mov eax, dword [esi + 0x7ac]
mov ecx, dword [eax]
lea edx, [esp + 0x1c]
push edx
push ecx
call fcn.0052eb30
add esp, 0xc
jmp 0x480831
push eax
lea ebx, [esi + 0x264]
push 0x132
push ebx
call fcn.00425550
push edi
lea edx, [esp + 0x28]
push 0x432
push edx
call fcn.00425550
mov ecx, dword [0x642fa8]
push 0
lea eax, [esp + 0x34]
push eax
push ecx
call fcn.004e8850
add esp, 0x24
test eax, eax
je 0x480107
mov dword [0x642fa8], eax
mov edx, dword [esi + 0x39c]
lea eax, [edx - 2]
cmp eax, 0x32
ja case.0x480120.11
movzx eax, byte [eax + 0x480888]
jmp dword [eax*4 + 0x480858]
mov esi, dword [0x634560]
test esi, esi
je 0x480831
mov eax, dword [esi + 0x141c]
test eax, eax
je 0x4801ab
mov ecx, dword [esp + 0x10]
add ecx, 0x132
lea eax, [esi + 0x12d4]
push ecx
push eax
call fcn.005f1860
add esp, 8
test eax, eax
jne 0x4801ab
lea edi, [esi + 0x11a2]
lea eax, [esi + 0x12d4]
push edi
push eax
call fcn.005f1860
add esp, 8
test eax, eax
jne 0x4801ab
push ebx
push 0x132
push edi
call fcn.00425550
push edi
lea ecx, [esi + 0x1070]
push ecx
lea edx, [esp + 0x2c]
push str.Chat__s___s_
push edx
call fcn.005d9929
mov ecx, dword [esi]
add esp, 0x1c
lea eax, [esp + 0x18]
push eax
push ecx
call dword [sym.imp.USER32.dll_SetWindowTextA]
mov esi, dword [esi + 0x2104]
test esi, esi
jne 0x480135
jmp 0x480831
mov edi, dword [0x6696c8]
test edi, edi
je 0x480831
jmp 0x4801d0
mov eax, dword [edi + 0x10e0]
test eax, eax
je 0x480233
lea ecx, [esi + 0x132]
lea eax, [edi + 0x268]
push ecx
push eax
call fcn.005f1860
add esp, 8
test eax, eax
jne 0x480233
lea eax, [edi + 0x136]
push eax
lea eax, [edi + 0x268]
push eax
call fcn.005f1860
add esp, 8
test eax, eax
jne 0x480233
push ebx
lea eax, [edi + 0x136]
push 0x132
push eax
call fcn.00425550
push 0
push 1
push 1
push 1
push 1
push edi
call fcn.00572130
add esp, 0x24
mov edi, dword [edi + 0x1128]
test edi, edi
jne 0x4801d0
jmp 0x480831
mov edi, dword [0x69362c]
test edi, edi
je 0x480831
cmp dword [edi + 0x4ec], 4
jne 0x4802f2
lea edx, [esi + 0x132]
lea eax, [edi + 0x264]
push edx
push eax
call fcn.005f1860
add esp, 8
test eax, eax
jne 0x4802f2
mov dword [edi + 0x4ec], eax
cmp byte [ebx], 0
je 0x4802aa
push ebx
lea eax, [edi + 0x264]
push 0x132
push eax
call fcn.00425550
mov al, byte [ebx]
add esp, 0xc
test al, al
je 0x4802aa
push edi
call fcn.00551240
add esp, 4
test eax, eax
je 0x4802f2
mov eax, dword [edi + 0x4e4]
mov dword [esp + 0x14], eax
mov eax, dword [0x68758c]
test eax, eax
je 0x4802cf
push 4
push 0x3d
push edi
push str.SOCKOPEN
call fcn.0054fc90
add esp, 0x10
mov ecx, dword [esp + 0x14]
push ecx
push edi
call fcn.0054fb50
add esp, 8
test eax, eax
je 0x4802ea
push edi
call fcn.0054fa70
add esp, 4
mov edi, dword [0x69362c]
jmp 0x4802f8
mov edi, dword [edi + 0x54c]
test edi, edi
jne 0x480250
jmp 0x480831
cmp byte [ebx], 0
je 0x480352
push ebx
call dword [sym.imp.WSOCK32.dll_inet_addr]
cmp eax, 0xffffffff
jne 0x480324
mov edx, dword [esi + 0x7ac]
add edx, 0x14bc
jmp 0x480343
push eax
call dword [sym.imp.WSOCK32.dll_htonl]
mov ecx, dword [esi + 0x7ac]
mov dword [ecx + 0x1720], eax
mov edx, dword [esi + 0x7ac]
add edx, 0x15ee
push ebx
push 0x132
push edx
call fcn.00425550
add esp, 0xc
mov eax, dword [esi + 0x7ac]
mov ecx, dword [eax + 0x14b0]
test ecx, ecx
jne 0x480831
mov ecx, dword [esi + 0x398]
test ecx, ecx
je 0x480379
push eax
call fcn.005984f0
add esp, 4
mov eax, dword [esi + 0x7ac]
push eax
call fcn.004d3250
add esp, 4
jmp 0x480831
cmp byte [ebx], 0
je 0x480831
push ebx
call dword [sym.imp.WSOCK32.dll_inet_addr]
mov ecx, dword [esi + 0x7ac]
mov dword [ecx + 0x1720], eax
mov ecx, dword [esi + 0x7ac]
mov eax, dword [ecx + 0x1720]
cmp eax, 0xffffffff
jne 0x4803d6
mov dword [ecx + 0x1720], 0
mov edx, dword [esi + 0x7ac]
mov byte [edx + 0x15ee], 0
jmp 0x480831
push eax
call dword [sym.imp.WSOCK32.dll_htonl]
mov ecx, dword [esi + 0x7ac]
mov dword [ecx + 0x1720], eax
mov edx, dword [esi + 0x7ac]
push ebx
add edx, 0x15ee
push 0x132
push edx
call fcn.00425550
mov eax, dword [esi + 0x7ac]
mov ecx, dword [esi + 0x398]
push 0x34
push ecx
lea edx, [eax + 0x15ee]
mov eax, dword [eax]
push edx
push 0x5f4c90
push eax
call fcn.0047fc10
add esp, 0x20
jmp 0x480831
cmp byte [ebx], 0
je 0x480479
push ebx
call dword [sym.imp.WSOCK32.dll_inet_addr]
cmp eax, 0xffffffff
jne 0x48046c
mov ecx, dword [esi + 0x7ac]
push ebx
add ecx, 0x14bc
push 0x132
push ecx
call fcn.00425550
mov edx, dword [esi + 0x7ac]
add edx, 0x14bc
push edx
call fcn.0055ad60
add esp, 0x10
jmp 0x480479
mov eax, dword [esi + 0x7ac]
mov byte [eax + 0x14bc], 0
mov eax, dword [esi + 0x398]
test eax, eax
je 0x480492
mov ecx, dword [esi + 0x7ac]
push ecx
call fcn.005984f0
add esp, 4
mov edx, dword [esi + 0x7ac]
push edx
call fcn.004d3250
add esp, 4
jmp 0x480831
push 0
push ebx
call fcn.004954a0
add esp, 8
jmp 0x480831
mov edi, dword [0x634560]
test edi, edi
je 0x480831
mov esi, dword [esi + 0x3a0]
lea ebx, [ebx]
cmp esi, dword [edi]
je 0x4804e3
mov edi, dword [edi + 0x2104]
test edi, edi
jne 0x4804d0
jmp 0x480831
cmp byte [ebx], 0
je 0x480517
push ebx
lea esi, [edi + 0x12d4]
push 0x132
push esi
call fcn.00425550
add esp, 0xc
push esi
call dword [sym.imp.WSOCK32.dll_inet_addr]
cmp eax, 0xffffffff
je 0x480517
push edi
call fcn.00435530
add esp, 4
jmp 0x480831
push 0
push 0x7d7
call fcn.00424130
push eax
push edi
call fcn.00434cd0
add esp, 0x10
jmp 0x480831
mov edi, dword [0x68d418]
test edi, edi
je 0x480831
mov esi, dword [esi + 0x3a0]
cmp esi, dword [edi]
je 0x480559
mov edi, dword [edi + 0xd1c]
test edi, edi
jne 0x480546
jmp 0x480831
cmp byte [ebx], 0
je 0x48058d
push ebx
lea esi, [edi + 0x268]
push 0x132
push esi
call fcn.00425550
add esp, 0xc
push esi
call dword [sym.imp.WSOCK32.dll_inet_addr]
cmp eax, 0xffffffff
je 0x48058d
push edi
call fcn.005476e0
add esp, 4
jmp 0x480831
push 0
push 0x7d7
call fcn.00424130
push eax
push 0
push edi
call fcn.00546ec0
add esp, 0x14
jmp 0x480831
mov edi, dword [0x68d418]
test edi, edi
je 0x480654
jmp 0x4805c0
mov eax, dword [edi + 0xc08]
test eax, eax
je 0x4805ee
cmp word [edi + 0xc20], 0
jne 0x4805ee
lea eax, [esi + 0x132]
push eax
lea ecx, [edi + 0x268]
push ecx
call fcn.005f1860
add esp, 8
test eax, eax
je 0x4805fa
mov edi, dword [edi + 0xd1c]
test edi, edi
jne 0x4805c0
jmp 0x480654
cmp byte [ebx], 0
je 0x48063c
push ebx
lea eax, [edi + 0x268]
push 0x132
push eax
call fcn.00425550
add esp, 0xc
lea eax, [edi + 0x268]
push eax
call dword [sym.imp.WSOCK32.dll_inet_addr]
cmp eax, 0xffffffff
je 0x48063c
push 5
push 0
lea eax, [edi + 0x268]
push eax
push edi
call fcn.00545d00
add esp, 0x10
jmp 0x480654
push 0
push 0x7d8
call fcn.00424130
push eax
push 0
push edi
call fcn.00546ec0
add esp, 0x14
mov edi, dword [0x634560]
test edi, edi
je 0x480831
mov eax, dword [edi + 0x1414]
test eax, eax
je 0x480690
cmp word [edi + 0x1406], 0
jne 0x480690
lea edx, [esi + 0x132]
push edx
lea eax, [edi + 0x12d4]
push eax
call fcn.005f1860
add esp, 8
test eax, eax
je 0x48069f
mov edi, dword [edi + 0x2104]
test edi, edi
jne 0x480662
jmp 0x480831
cmp byte [ebx], 0
je 0x4806d8
push ebx
lea esi, [edi + 0x12d4]
push 0x132
push esi
call fcn.00425550
add esp, 0xc
push esi
call dword [sym.imp.WSOCK32.dll_inet_addr]
cmp eax, 0xffffffff
je 0x4806d8
push 5
push 0
push esi
push edi
call fcn.004348f0
add esp, 0x10
jmp 0x480831
push 0
push 0x7d8
call fcn.00424130
push eax
push edi
call fcn.00434cd0
add esp, 0x10
jmp 0x480831
mov edi, dword [0x6696c8]
test edi, edi
je 0x480831
mov esi, dword [esi + 0x3a0]
cmp esi, dword [edi]
je 0x48071a
mov edi, dword [edi + 0x1128]
test edi, edi
jne 0x480707
jmp 0x480831
cmp byte [ebx], 0
je 0x48074e
push ebx
lea esi, [edi + 0x268]
push 0x132
push esi
call fcn.00425550
add esp, 0xc
push esi
call dword [sym.imp.WSOCK32.dll_inet_addr]
cmp eax, 0xffffffff
je 0x48074e
push edi
call fcn.004a05d0
add esp, 4
jmp 0x480831
push 0
push 0x7d7
call fcn.00424130
push eax
push 0
push edi
call fcn.0049fd30
add esp, 0x14
jmp 0x480831
mov eax, dword [0x68758c]
test eax, eax
je 0x4807c7
push esi
call fcn.0047f650
add esp, 4
test eax, eax
je 0x4807c7
test edx, edx
je 0x48078a
cmp edx, 1
jne 0x4807c7
mov edx, dword [esi + 0x7ac]
xor eax, eax
mov ecx, 0x842
lea edi, [esp + 0x450]
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x450]
push ecx
push eax
push eax
push 0x16
push 0x5f86e4
push eax
push eax
push edx
mov dword [esp + 0x484], esi
call fcn.0053a710
add esp, 0x20
test eax, eax
je 0x480831
push esi
call fcn.0047f650
add esp, 4
test eax, eax
je 0x480831
mov eax, dword [esi + 0x398]
test eax, eax
je 0x480831
push ebx
lea eax, [esi + 0x132]
push eax
push 0
push 0x7d4
call fcn.00424130
add esp, 8
push eax
lea eax, [esp + 0x24]
push eax
call fcn.005d9929
mov ecx, dword [0x63caac]
mov dword [0x6870cc], 0
mov dword [0x6870dc], 1
mov eax, dword [esi + 0x7ac]
push ecx
mov ecx, dword [eax]
lea edx, [esp + 0x2c]
push edx
push ecx
call fcn.0052eb30
add esp, 0x1c
push 0x642fa8
call fcn.004e8c50
mov edx, dword [esp + 0x14]
push edx
call fcn.0047f5e0
push 0
call fcn.0047f930
add esp, 0xc
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret