Function at 0x4142c6
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xa2c
lea ecx, [ebp - 0x60]
push ebx
push esi
push edi
call fcn.004020bf
lea ecx, [ebp - 0x114]
call fcn.0041aa86
lea ecx, [ebp - 0x63c]
call fcn.004020bf
mov edi, 0x4742a8
push 0x29
mov ecx, edi
call fcn.00401e45
mov ecx, eax
call fcn.00401f8b
push eax
call fcn.0043aa6c
pop ecx
test eax, eax
je 0x41431d
imul eax, eax, 0x3e8
push eax
call dword [sym.imp.KERNEL32.dll_Sleep]
sub esp, 0x18
mov ecx, esp
push 0x46b638
call fcn.00402073
push 0
mov ecx, edi
call fcn.00401e45
sub esp, 0x18
mov ecx, esp
push eax
call fcn.004020d6
lea ecx, [ebp - 0x48]
call fcn.0041afee
add esp, 0x30
xor ebx, ebx
call fcn.0040487e
push 0x38
mov ecx, edi
call fcn.00401e45
mov edx, 0x465074
mov ecx, eax
call fcn.0040afc1
test al, al
je 0x4143dd
push 0x38
mov ecx, edi
call fcn.00401e45
mov ecx, eax
call fcn.0040245c
push eax
push 0x38
mov ecx, edi
call fcn.00401e45
mov ecx, eax
call fcn.00401f8b
push eax
push 0x37
mov ecx, edi
call fcn.00401e45
mov ecx, eax
call fcn.0040245c
push eax
push 0x37
mov ecx, edi
call fcn.00401e45
mov ecx, eax
call fcn.00401f8b
push eax
push 0x36
mov ecx, edi
call fcn.00401e45
mov ecx, eax
call fcn.0040245c
push 0x36
mov ecx, edi
mov esi, eax
call fcn.00401e45
mov ecx, eax
call fcn.00401f8b
mov edx, esi
mov ecx, eax
call fcn.0040471d
add esp, 0x10
sub esp, 0x18
mov byte [0x474529], 1
mov ecx, esp
push 0x46b63c
call fcn.00402073
push ebx
lea ecx, [ebp - 0x48]
call fcn.00401e45
sub esp, 0x18
mov ecx, esp
push eax
call fcn.004020d6
lea ecx, [ebp - 0xc]
call fcn.0041afee
add esp, 0x30
lea ecx, [ebp - 0xc]
push 1
call fcn.00401e45
push eax
push 0x46b63c
push 0
lea ecx, [ebp - 0xc]
call fcn.00401e45
mov edx, eax
lea ecx, [ebp - 0x3c]
call fcn.00406292
pop ecx
mov edx, eax
lea ecx, [ebp - 0x24]
call fcn.00402ef0
pop ecx
push eax
mov ecx, 0x47452c
call fcn.00401fc2
lea ecx, [ebp - 0x24]
call fcn.00401fb8
lea ecx, [ebp - 0x3c]
call fcn.00401fb8
push 2
lea ecx, [ebp - 0xc]
call fcn.00401e45
mov edx, 0x4650ec
mov ecx, eax
call fcn.00405ae5
lea ecx, [ebp - 0x60]
test al, al
je 0x414488
mov byte [0x471ae4], 0
push str.TLS_Off
jmp 0x414494
mov byte [0x471ae4], 1
push str.TLS_On
call fcn.00405a86
sub esp, 0x18
lea eax, [ebp - 0x60]
mov esi, esp
lea ecx, [ebp - 0x3c]
mov edx, str.Connecting__
push 0x47452c
push 0x46b650
push eax
call fcn.004052fe
pop ecx
mov edx, eax
lea ecx, [ebp - 0x24]
call fcn.00408832
pop ecx
mov edx, eax
mov ecx, esi
call fcn.00402ef0
sub esp, 0x14
mov ecx, esp
push 0x464f74
call fcn.00402073
call fcn.0041a6c2
add esp, 0x30
lea ecx, [ebp - 0x24]
call fcn.00401fb8
lea ecx, [ebp - 0x3c]
call fcn.00401fb8
push ecx
push ecx
push 1
lea ecx, [ebp - 0xc]
call fcn.00401e45
mov ecx, eax
call fcn.00401f8b
push 0
lea ecx, [ebp - 0xc]
mov esi, eax
call fcn.00401e45
mov ecx, eax
call fcn.00401f8b
mov edx, esi
mov ecx, eax
call fcn.00414285
test eax, eax
je 0x414571
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea ecx, [ebp - 0x24]
call fcn.0041bad2
sub esp, 0x18
mov edx, str.Connection_Error:
mov ecx, esp
push eax
call fcn.004052dd
sub esp, 0x14
mov ecx, esp
push 0x464ed8
call fcn.00402073
call fcn.0041a6c2
add esp, 0x30
lea ecx, [ebp - 0x24]
call fcn.00401fb8
mov esi, 0x4744f8
jmp 0x414e3f
mov esi, 0x4744f8
mov ecx, esi
call fcn.0040480d
test al, al
jne 0x4145ac
sub esp, 0x18
mov ecx, esp
push str.Connection_Error:_Unable_to_create_socket
call fcn.00402073
sub esp, 0x18
mov ecx, esp
push 0x464ed8
call fcn.00402073
call fcn.0041a6c2
add esp, 0x30
jmp 0x414e3f
push 0
push 0x3c
mov ecx, esi
call fcn.00404f31
push ecx
mov ecx, esi
call fcn.004048a8
test al, al
je 0x414e3f
push 1
lea ecx, [ebp - 0xc]
call fcn.00401e45
sub esp, 0x18
lea ecx, [ebp - 0xc]
mov esi, esp
push eax
push 0x46b63c
push 0
call fcn.00401e45
push eax
lea eax, [ebp - 0x60]
mov edx, str.Connected___
push 0x46b650
push eax
lea ecx, [ebp - 0xfc]
call fcn.004052fe
pop ecx
mov edx, eax
lea ecx, [ebp - 0xe4]
call fcn.00408832
pop ecx
mov edx, eax
lea ecx, [ebp - 0xcc]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x78]
call fcn.00408832
pop ecx
mov edx, eax
mov ecx, esi
call fcn.00402ef0
sub esp, 0x14
mov ecx, esp
push 0x464f74
call fcn.00402073
call fcn.0041a6c2
add esp, 0x30
lea ecx, [ebp - 0x78]
call fcn.00401fb8
lea ecx, [ebp - 0xcc]
call fcn.00401fb8
lea ecx, [ebp - 0xe4]
call fcn.00401fb8
lea ecx, [ebp - 0xfc]
call fcn.00401fb8
mov byte [ebp - 0x9c], 0
lea edi, [ebp - 0x9b]
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
call fcn.0041a9b3
push edx
push eax
lea eax, [ebp - 0x9c]
push str._I64u
push eax
call fcn.00413959
add esp, 0x10
lea ecx, [ebp - 0x24]
push 0x4740b0
call fcn.004086d0
push 0xa
lea eax, [ebp - 0x84]
push eax
push dword [0x4709d0]
call fcn.00440e11
add esp, 0xc
mov ecx, 0x4742a8
push 1
call fcn.00401e45
push eax
lea ecx, [ebp - 0xb4]
call fcn.004020d6
mov esi, 0x474290
mov ecx, esi
call fcn.0040245c
push eax
mov ecx, esi
call fcn.00401f8b
push eax
push 0x104
lea eax, [ebp - 0xa28]
mov esi, 0x474248
push eax
push str.name
mov ecx, esi
call fcn.00401f8b
mov edx, eax
call fcn.00412a35
add esp, 0x14
test al, al
je 0x41472e
lea eax, [ebp - 0xa28]
push eax
lea ecx, [ebp - 0xb4]
call fcn.00405a86
push ecx
push str.hlight
mov ecx, esi
call fcn.00401f8b
push eax
mov edx, closesocket
lea ecx, [ebp - 0x3c]
call fcn.004128e3
mov eax, dword [0x471d58]
add esp, 0xc
xor edi, edi
test eax, eax
je 0x41475c
call eax
movzx edi, ax
push 0x471b38
lea ecx, [ebp - 0x78]
call fcn.0040415e
call fcn.0040d321
mov edx, eax
lea ecx, [ebp - 0x624]
call fcn.0041ae15
sub esp, 0x18
mov ecx, 0x473ed0
mov esi, esp
mov edx, 0x474230
push eax
push ecx
lea eax, [ebp - 0x3c]
push eax
push ecx
push 0x4742e4
push ecx
lea eax, [ebp - 0x114]
push eax
push ecx
lea ecx, [ebp - 0x60c]
call fcn.0041aef1
push eax
push 0x473ed0
movzx edx, di
lea ecx, [ebp - 0x5f4]
call fcn.0041ad61
push eax
mov edi, 0x473ed0
lea ecx, [ebp - 0xc]
push edi
push 0x474278
push edi
push 0
call fcn.00401e45
push eax
push edi
lea eax, [ebp - 0x84]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, eax
lea ecx, [ebp - 0x5dc]
call fcn.0041ad61
push eax
push edi
call fcn.0041acb9
mov edx, eax
lea ecx, [ebp - 0x5c4]
call fcn.0041ad61
mov edx, dword [0x474094]
lea ecx, [ebp - 0x5ac]
push eax
push edi
call fcn.0041ad61
push eax
push edi
lea ecx, [ebp - 0x594]
call fcn.0041ac69
mov edx, eax
lea ecx, [ebp - 0x57c]
call fcn.0041aef1
push eax
push edi
mov edx, 0x473d48
lea ecx, [ebp - 0x564]
call fcn.0041aef1
push eax
push edi
lea edx, [ebp - 0x78]
lea ecx, [ebp - 0x54c]
call fcn.0041aef1
push eax
push edi
lea edx, [ebp - 0x24]
lea ecx, [ebp - 0x534]
call fcn.0041aef1
push eax
push edi
push str.4.7.2_Pro
push edi
lea eax, [ebp - 0x9c]
mov edx, 0x474628
push eax
push edi
lea ecx, [ebp - 0x51c]
call fcn.0041aef1
push eax
push edi
push 0x474960
push edi
lea ecx, [ebp - 0x504]
call fcn.0040ee69
push eax
push edi
mov edx, 0x4742b4
lea ecx, [ebp - 0x4ec]
call fcn.0041aef1
push eax
push edi
lea edx, [ebp - 0xb4]
lea ecx, [ebp - 0x4d4]
call fcn.00402f11
pop ecx
mov edx, eax
lea ecx, [ebp - 0x4bc]
call fcn.00402e81
pop ecx
mov edx, eax
lea ecx, [ebp - 0x4a4]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x48c]
call fcn.00402e81
pop ecx
mov edx, eax
lea ecx, [ebp - 0x474]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x45c]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x444]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x42c]
call fcn.00402e81
pop ecx
mov edx, eax
lea ecx, [ebp - 0x414]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x3fc]
call fcn.00408832
pop ecx
mov edx, eax
lea ecx, [ebp - 0x3e4]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x3cc]
call fcn.00408832
pop ecx
mov edx, eax
lea ecx, [ebp - 0x3b4]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x39c]
call fcn.00402e81
pop ecx
mov edx, eax
lea ecx, [ebp - 0x384]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x36c]
call fcn.00402e81
pop ecx
mov edx, eax
lea ecx, [ebp - 0x354]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x33c]
call fcn.00402e81
pop ecx
mov edx, eax
lea ecx, [ebp - 0x324]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x30c]
call fcn.00402e81
pop ecx
mov edx, eax
lea ecx, [ebp - 0x2f4]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x2dc]
call fcn.00402e81
pop ecx
mov edx, eax
lea ecx, [ebp - 0x2c4]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x2ac]
call fcn.00402e81
pop ecx
mov edx, eax
lea ecx, [ebp - 0x294]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x27c]
call fcn.00402e81
pop ecx
mov edx, eax
lea ecx, [ebp - 0x264]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x24c]
call fcn.00408832
pop ecx
mov edx, eax
lea ecx, [ebp - 0x234]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x21c]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x204]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x1ec]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x1d4]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x1bc]
call fcn.00402e81
pop ecx
mov edx, eax
lea ecx, [ebp - 0x1a4]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x18c]
call fcn.00402e81
pop ecx
mov edx, eax
lea ecx, [ebp - 0x174]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x15c]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x144]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x12c]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0xcc]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0xe4]
call fcn.00402ef0
pop ecx
mov edx, eax
lea ecx, [ebp - 0xfc]
call fcn.00402ef0
pop ecx
mov edx, eax
mov ecx, esi
call fcn.00402e81
pop ecx
mov esi, 0x4744f8
push 0x4b
mov ecx, esi
call fcn.00404a81
lea ecx, [ebp - 0xfc]
call fcn.00401fb8
lea ecx, [ebp - 0xe4]
call fcn.00401fb8
lea ecx, [ebp - 0xcc]
call fcn.00401fb8
lea ecx, [ebp - 0x12c]
call fcn.00401fb8
lea ecx, [ebp - 0x144]
call fcn.00401fb8
lea ecx, [ebp - 0x15c]
call fcn.00401fb8
lea ecx, [ebp - 0x174]
call fcn.00401fb8
lea ecx, [ebp - 0x18c]
call fcn.00401fb8
lea ecx, [ebp - 0x1a4]
call fcn.00401fb8
lea ecx, [ebp - 0x1bc]
call fcn.00401fb8
lea ecx, [ebp - 0x1d4]
call fcn.00401fb8
lea ecx, [ebp - 0x1ec]
call fcn.00401fb8
lea ecx, [ebp - 0x204]
call fcn.00401fb8
lea ecx, [ebp - 0x21c]
call fcn.00401fb8
lea ecx, [ebp - 0x234]
call fcn.00401fb8
lea ecx, [ebp - 0x24c]
call fcn.00401fb8
lea ecx, [ebp - 0x264]
call fcn.00401fb8
lea ecx, [ebp - 0x27c]
call fcn.00401fb8
lea ecx, [ebp - 0x294]
call fcn.00401fb8
lea ecx, [ebp - 0x2ac]
call fcn.00401fb8
lea ecx, [ebp - 0x2c4]
call fcn.00401fb8
lea ecx, [ebp - 0x2dc]
call fcn.00401fb8
lea ecx, [ebp - 0x2f4]
call fcn.00401fb8
lea ecx, [ebp - 0x30c]
call fcn.00401fb8
lea ecx, [ebp - 0x324]
call fcn.00401fb8
lea ecx, [ebp - 0x33c]
call fcn.00401fb8
lea ecx, [ebp - 0x354]
call fcn.00401fb8
lea ecx, [ebp - 0x36c]
call fcn.00401fb8
lea ecx, [ebp - 0x384]
call fcn.00401fb8
lea ecx, [ebp - 0x39c]
call fcn.00401fb8
lea ecx, [ebp - 0x3b4]
call fcn.00401fb8
lea ecx, [ebp - 0x3cc]
call fcn.00401fb8
lea ecx, [ebp - 0x3e4]
call fcn.00401fb8
lea ecx, [ebp - 0x3fc]
call fcn.00401fb8
lea ecx, [ebp - 0x414]
call fcn.00401fb8
lea ecx, [ebp - 0x42c]
call fcn.00401fb8
lea ecx, [ebp - 0x444]
call fcn.00401fb8
lea ecx, [ebp - 0x45c]
call fcn.00401fb8
lea ecx, [ebp - 0x474]
call fcn.00401fb8
lea ecx, [ebp - 0x48c]
call fcn.00401fb8
lea ecx, [ebp - 0x4a4]
call fcn.00401fb8
lea ecx, [ebp - 0x4bc]
call fcn.00401fb8
lea ecx, [ebp - 0x4d4]
call fcn.00401fb8
lea ecx, [ebp - 0x4ec]
call fcn.00401fb8
lea ecx, [ebp - 0x504]
call fcn.00401fb8
lea ecx, [ebp - 0x51c]
call fcn.00401fb8
lea ecx, [ebp - 0x534]
call fcn.00401fb8
lea ecx, [ebp - 0x54c]
call fcn.00401fb8
lea ecx, [ebp - 0x564]
call fcn.00401fb8
lea ecx, [ebp - 0x57c]
call fcn.00401fb8
lea ecx, [ebp - 0x594]
call fcn.00401ee9
lea ecx, [ebp - 0x5ac]
call fcn.00401fb8
lea ecx, [ebp - 0x5c4]
call fcn.00401fb8
lea ecx, [ebp - 0x5dc]
call fcn.00401fb8
lea ecx, [ebp - 0x5f4]
call fcn.00401fb8
lea ecx, [ebp - 0x60c]
call fcn.00401fb8
lea ecx, [ebp - 0x624]
call fcn.00401fb8
lea ecx, [ebp - 0x78]
call fcn.00401ee9
push 1
push 0x414e86
mov ecx, esi
call fcn.00404bf0
mov eax, dword [0x471d5c]
test eax, eax
je 0x414dc6
cmp byte [0x471d4a], 0
je 0x414dc6
call eax
mov byte [0x471d4a], 0
cmp byte [0x474092], 0
je 0x414dd9
mov ecx, 0x474048
call fcn.0040a655
call fcn.00405a4b
sub esp, 0x18
mov ecx, esp
push str.Disconnected
call fcn.00402073
sub esp, 0x18
mov ecx, esp
push 0x465030
call fcn.00402073
call fcn.0041a6c2
add esp, 0x30
cmp byte [0x473ad3], 0
je 0x414e1f
xor eax, eax
push eax
push eax
push eax
push fcn.00419eea
push eax
push eax
call dword [sym.imp.KERNEL32.dll_CreateThread]
lea ecx, [ebp - 0x3c]
call fcn.00401fb8
lea ecx, [ebp - 0xb4]
call fcn.00401fb8
lea ecx, [ebp - 0x24]
call fcn.00401ee9
mov edi, 0x4742a8
mov ecx, esi
call fcn.00404e06
lea ecx, [ebp - 0x48]
inc ebx
call fcn.004021da
cmp ebx, eax
jb 0x414e79
push 2
mov ecx, edi
xor ebx, ebx
call fcn.00401e45
mov ecx, eax
call fcn.00401f8b
push eax
call fcn.0043aa6c
imul eax, eax, 0x3e8
pop ecx
push eax
call dword [sym.imp.KERNEL32.dll_Sleep]
lea ecx, [ebp - 0xc]
call fcn.00401e6d
jmp 0x4143dd