Function at 0x42001c
Capabilities:
Initialize winsock library

Disassembly:
sub esp, 0x1b0
mov eax, dword [esp + 0x1b8]
push ebx
push esi
push edi
push 0xfa2
mov byte [eax], 0
call fcn.0040f85a
mov esi, eax
mov eax, dword [esp + 0x1c4]
mov dword [eax], esi
pop ecx
lea eax, [esp + 0x2c]
push eax
xor edi, edi
push 0x202
mov word [esi], di
call dword [sym.imp.WS2_32.dll_WSAStartup]
lea eax, [esp + 0x1c]
push eax
push edi
mov byte [esp + 0x15], 1
call fcn.00421c37
mov ebx, eax
cmp ebx, edi
pop ecx
pop ecx
mov dword [esp + 0x20], ebx
jne 0x420080
mov byte [esp + 0xd], 0
jmp 0x4202e7
mov eax, dword [esp + 0x1c]
cmp eax, edi
mov byte [esp + 0x18], 1
mov byte [esp + 0xf], 0
mov byte [esp + 0xe], 0
mov word [0x431168], di
mov word [0x430f58], di
mov word [0x430d48], di
jle 0x4202f6
add ebx, 0x74
push ebp
mov dword [esp + 0x18], ebx
mov dword [esp + 0x20], eax
mov edi, 0x431168
mov ebp, 0x430f58
jmp 0x4200cc
mov ebx, dword [esp + 0x18]
and word [0x431168], 0
lea eax, [esp + 0x2c]
push eax
lea eax, [esp + 0x2c]
push eax
push edi
lea eax, [ebx - 0x60]
push eax
mov dword [esp + 0x38], 0x104
call sub.WS2_32.dll_WSCGetProviderPath
and word [0x431370], 0
push 0
push 0x425d6c
push edi
call fcn.004147a2
add esp, 0xc
cmp eax, 0xffffffff
je 0x420117
mov eax, dword [esp + 0x1c8]
mov byte [eax], 1
cmp dword [ebx - 0x18], 6
jne 0x420177
cmp byte [esp + 0x13], 0
jne 0x420177
push dword [esp + 0x1c]
mov byte [esp + 0x17], 1
call fcn.0041fe19
test al, al
pop ecx
jne 0x420151
push 0x430d48
push ebp
push ebx
mov ebx, esi
call fcn.0041fe92
mov ebx, dword [esp + 0x24]
add esp, 0xc
mov byte [esp + 0x11], 0
push edi
push ebp
call dword [0x4241a0]
push 0x104
push ebx
push 0x430d48
call dword [fcn.00424134]
and word [0x430f50], 0
mov byte [esp + 0x1c], 0
cmp dword [ebx - 0x18], 0x11
jne 0x4201d7
cmp byte [esp + 0x12], 0
jne 0x4201d7
push dword [esp + 0x1c]
mov byte [esp + 0x16], 1
call fcn.0041fe19
test al, al
pop ecx
jne 0x4201b1
push 0x430d48
push ebp
push ebx
mov ebx, esi
call fcn.0041fe92
mov ebx, dword [esp + 0x24]
add esp, 0xc
mov byte [esp + 0x11], 0
push edi
push ebp
call dword [0x4241a0]
push 0x104
push ebx
push 0x430d48
call dword [fcn.00424134]
and word [0x430f50], 0
mov byte [esp + 0x1c], 0
and dword [esp + 0x14], 0
jmp 0x4201e2
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
push dword [eax + 0x431850]
mov eax, ebx
call fcn.00413ff7
test eax, eax
pop ecx
mov ebx, 0x7d0
je 0x420244
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x431854]
push ebx
push esi
call fcn.0041fe3a
test al, al
pop ecx
pop ecx
je 0x420222
push ebx
push esi
mov eax, 0x424e28
call fcn.0041fe3a
pop ecx
pop ecx
push ebx
push esi
mov eax, edi
call fcn.0041fe3a
test al, al
pop ecx
pop ecx
je 0x42023f
push ebx
push esi
mov eax, 0x424e28
call fcn.0041fe3a
pop ecx
pop ecx
mov byte [esp + 0x11], 0
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x431850]
push 0x427d88
call fcn.00413ff7
test eax, eax
pop ecx
je 0x4202ba
mov eax, dword [esp + 0x14]
push dword [eax + 0x431850]
mov eax, edi
call fcn.00413ff7
test eax, eax
pop ecx
je 0x4202ba
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x431854]
push ebx
push esi
call fcn.0041fe3a
test al, al
pop ecx
pop ecx
je 0x420298
push ebx
push esi
mov eax, 0x424e28
call fcn.0041fe3a
pop ecx
pop ecx
push ebx
push esi
mov eax, edi
call fcn.0041fe3a
test al, al
pop ecx
pop ecx
je 0x4202b5
push ebx
push esi
mov eax, 0x424e28
call fcn.0041fe3a
pop ecx
pop ecx
mov byte [esp + 0x11], 0
add dword [esp + 0x14], 8
cmp dword [esp + 0x14], 0x80
jb 0x4201de
add dword [esp + 0x18], 0x274
dec dword [esp + 0x20]
jne 0x4200c8
cmp byte [esp + 0x11], 0
pop ebp
jne 0x4202f6
mov eax, dword [esp + 0x1c0]
push dword [eax]
call fcn.0041106b
pop ecx
cmp dword [esp + 0x20], 0
pop edi
pop esi
pop ebx
je 0x42030a
push dword [esp + 0x14]
call fcn.0040f96d
pop ecx
call dword [sym.imp.WS2_32.dll_WSACleanup]
cmp byte [esp + 1], 0
jne 0x420334
push 0x42b2e8
push 0x424470
call fcn.0040aa7d
call fcn.004176d7
test al, al
je 0x420334
mov byte [esp + 1], 1
mov al, byte [esp + 1]
add esp, 0x1b0
ret