Function at 0x409447
Capabilities:
Initialize winsock library

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x439e1d
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x14b4
call fcn.004272a0
mov eax, dword [0x452c60]
xor eax, esp
mov dword [esp + 0x14b0], eax
push ebx
push esi
push edi
mov eax, dword [0x452c60]
xor eax, esp
push eax
lea eax, [esp + 0x14c8]
mov dword fs:[0], eax
lea eax, [esp + 0x18]
push eax
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], 8
mov dword [esp + 0x20], 0xff
call dword [sym.imp.COMCTL32.dll_InitCommonControlsEx]
mov ecx, dword [esp + 0x14]
call fcn.004153b7
call fcn.00415bb5
lea eax, [esp + 0x74]
push eax
push 0x202
call dword [sym.imp.WS2_32.dll_WSAStartup]
call fcn.004086e8
call fcn.00409379
test al, al
jne 0x4094df
xor eax, eax
inc eax
jmp 0x40979b
mov esi, 0x104
push esi
mov edi, 0x458d70
push edi
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
push edi
push esi
mov ebx, 0x458c68
push ebx
call fcn.00423114
add esp, 0xc
push edi
push esi
mov esi, 0x458b60
push esi
call fcn.00423114
add esp, 0xc
push ebx
call dword [sym.imp.SHLWAPI.dll_PathStripPathA]
push esi
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecA]
mov eax, dword [esp + 0x14]
push dword [eax + 0x48]
lea ecx, [esp + 0x40]
call fcn.0040229e
push edi
lea eax, [esp + 0x40]
xor ebx, ebx
push eax
mov dword [esp + 0x14d8], ebx
call fcn.00403c50
cmp eax, 0xffffffff
je 0x409594
mov ecx, edi
lea esi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x40954f
push dword [esp + 0x50]
sub ecx, esi
add ecx, eax
push ecx
lea eax, [esp + 0x44]
push eax
lea esi, [esp + 0x2c]
call fcn.00409bb7
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0x48]
mov byte [esp + 0x14dc], 1
call fcn.0040251a
push ebx
push 1
mov ecx, esi
mov byte [esp + 0x14d8], 0
call fcn.00402614
push edi
lea ecx, [esp + 0x5c]
call fcn.0040229e
lea ebx, [esp + 0x58]
mov byte [esp + 0x14d0], 2
call fcn.00406c11
xor ebx, ebx
cmp eax, 0xffffffff
je 0x4095ed
push eax
push ebx
lea eax, [esp + 0x60]
push eax
lea esi, [esp + 0x2c]
call fcn.00409bb7
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0x64]
mov byte [esp + 0x14dc], 3
call fcn.0040251a
push ebx
push 1
mov ecx, esi
mov byte [esp + 0x14d8], 2
call fcn.00402614
lea eax, [esp + 0x204]
push eax
call fcn.00409f13
push 0xffffffffffffffff
push ebx
lea eax, [esp + 0x44]
push eax
lea ecx, [esp + 0x14ac]
mov byte [esp + 0x14dc], 4
call fcn.0040251a
push edi
lea ecx, [esp + 0x146c]
call fcn.0040227b
push 0xffffffffffffffff
push ebx
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0x1490]
call fcn.0040251a
lea ecx, [esp + 0x204]
call fcn.0040a8e9
cmp dword [esp + 0x278], 1
lea eax, [esp + 0x204]
je 0x409773
mov ecx, dword [esp + 0x14]
mov dword [ecx + 0x20], eax
mov ecx, eax
call fcn.00416394
lea eax, [esp + 0x204]
call fcn.0040c0e8
cmp dword [0x458f70], ebx
je 0x40971d
push ebx
lea ecx, [esp + 0x24]
mov dword [esp + 0x3c], 0xf
call fcn.004025f8
push str.v65__
lea eax, [esp + 0x24]
push eax
mov byte [esp + 0x14d8], 5
call fcn.00403c71
push str.25b8df9ddd1d463ba23e9fb44a316f89
lea eax, [esp + 0x24]
push eax
call fcn.00403c71
push str.___
lea eax, [esp + 0x24]
push eax
call fcn.00403c71
push 0xffffffffffffffff
push ebx
mov eax, 0x45a5d4
lea esi, [esp + 0x28]
call fcn.00403d2c
push str.____
mov eax, esi
push eax
call fcn.00403c71
cmp dword [esp + 0x38], 0x10
mov eax, dword [esp + 0x24]
jae 0x4096f2
lea eax, [esp + 0x24]
cmp dword [0x458f70], ebx
je 0x409709
push eax
push dword [0x45a5d0]
call dword [0x458f60]
pop ecx
pop ecx
push ebx
push 1
lea ecx, [esp + 0x28]
mov byte [esp + 0x14d8], 4
call fcn.00402614
lea eax, [esp + 0x12]
push eax
mov esi, 0x45a178
push esi
lea ecx, [esp + 0x1b]
mov byte [esp + 0x1b], bl
mov byte [esp + 0x1a], bl
call fcn.00403643
cmp byte [esp + 0x12], bl
je 0x40975a
push 0xa5a
push esi
xor ecx, ecx
lea edi, [esp + 0x28]
call fcn.004033b1
push ebx
push 1
mov ecx, edi
call fcn.00402614
call fcn.00402d28
cmp dword [0x458f7c], ebx
je 0x40976c
call fcn.00409afb
lea eax, [esp + 0x204]
push eax
mov byte [esp + 0x14d4], 2
call fcn.004097bf
push ebx
push 1
lea ecx, [esp + 0x60]
call fcn.00402614
push ebx
push 1
lea ecx, [esp + 0x44]
call fcn.00402614
xor eax, eax
mov ecx, dword [esp + 0x14c8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x14b0]
xor ecx, esp
call fcn.00421987
mov esp, ebp
pop ebp
ret