Function at 0x40ccb0
Capabilities:
Initialize winsock library

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x42d3d0
push 0x418360
mov eax, dword fs:[0]
push eax
sub esp, 0xc24
mov eax, dword [0x42e2a4]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x1c], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov dword [ebp - 0x18], esp
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0xbf8], eax
call fcn.0040a510
test ax, ax
jne 0x40cd09
push str.HTTP_POST_Over_LSP_infomation_and_NBMediaInfo_Adv.ini_not_exist__n
call fcn.00414284
add esp, 4
call fcn.00409b00
test eax, eax
jne 0x40cd1f
push str.getMACInfo_Error__n
call fcn.00414284
add esp, 4
lea ecx, [ebp - 0xbd8]
push ecx
push 0x202
call dword [sym.imp.WS2_32.dll_WSAStartup]
xor ebx, ebx
cmp eax, ebx
je 0x40cd53
push eax
push str.Unable_to_load_Winsock:__d_n
call fcn.00414a86
add eax, 0x40
push eax
call fcn.00414dec
add esp, 0xc
jmp 0x40d5c5
mov dword [ebp - 4], ebx
push 0xc31484
call dword [0x42304c]
mov dword [ebp - 4], 0xfffffffe
push ebx
push 0x1f400
push ebx
call dword [0x4230a0]
mov dword [0xc314b4], eax
cmp eax, ebx
jne 0x40cda7
push str.LspCreateHeap_128000_fail:_n
call fcn.00414284
add esp, 4
push str.LspCreateHeap_Error_n
call fcn.00414284
add esp, 4
mov dword [0xc314ac], 0xfffffc17
jmp 0x40d51f
push str.LspCreateHeap_128000_success:_n
call fcn.00414284
add esp, 4
push 0x104
push ebx
lea edx, [ebp - 0x220]
push edx
call fcn.0041d2d0
add esp, 0xc
push 0x104
lea eax, [ebp - 0x220]
push eax
push ebx
call dword [0x4230bc]
cmp eax, ebx
jne 0x40cdfc
push str.main_GetModuleFileNameA_faile_n
call fcn.00414284
add esp, 4
mov dword [0xc314ac], 0xfffffc16
jmp 0x40d51f
xor eax, eax
mov word [ebp - 0xbe0], ax
mov byte [ebp - 0xbde], al
push 0x100
push ebx
lea ecx, [ebp - 0x11c]
push ecx
call fcn.0041d2d0
push 0x100
push ebx
lea edx, [ebp - 0x420]
push edx
call fcn.0041d2d0
push 0x100
push ebx
lea eax, [ebp - 0x320]
push eax
call fcn.0041d2d0
push 0x104
push ebx
push 0x8302d0
call fcn.0041d2d0
push 0x104
push ebx
push 0x4301c8
call fcn.0041d2d0
push 0x104
push ebx
push 0xc30ce0
call fcn.0041d2d0
add esp, 0x48
push 0x104
push ebx
push 0xc30de8
call fcn.0041d2d0
push 0x100
lea ecx, [ebp - 0x320]
push ecx
push 0x100
lea edx, [ebp - 0x420]
push edx
push 0x100
lea eax, [ebp - 0x11c]
push eax
push 3
lea ecx, [ebp - 0xbe0]
push ecx
lea edx, [ebp - 0x220]
push edx
call fcn.004150c9
add esp, 0x30
cmp eax, ebx
je 0x40ced3
mov dword [0xc314ac], 0xfffffc15
jmp 0x40d51f
push 0x42f128
push str.xdatapoint
lea eax, [ebp - 0x11c]
push eax
lea ecx, [ebp - 0xbe0]
push ecx
push 0x104
push 0x8302d0
call fcn.00414776
add esp, 0x18
cmp eax, ebx
je 0x40cf10
mov dword [0xc314ac], 0xfffffc14
jmp 0x40d51f
push 0x42f128
push str.xdpch
lea edx, [ebp - 0x11c]
push edx
lea eax, [ebp - 0xbe0]
push eax
push 0x104
push 0x4301c8
call fcn.00414776
add esp, 0x18
cmp eax, ebx
je 0x40cf4d
mov dword [0xc314ac], 0xfffffc13
jmp 0x40d51f
push 0x42f348
push 0x42f01c
lea ecx, [ebp - 0x11c]
push ecx
lea edx, [ebp - 0xbe0]
push edx
push 0x104
push 0xc30ce0
call fcn.00414776
add esp, 0x18
cmp eax, ebx
je 0x40cf8a
mov dword [0xc314ac], 0xfffffc12
jmp 0x40d51f
push 0x42f348
push str.xdpcache
lea eax, [ebp - 0x11c]
push eax
lea ecx, [ebp - 0xbe0]
push ecx
push 0x104
push 0xc30de8
call fcn.00414776
add esp, 0x18
cmp eax, ebx
je 0x40cfc7
mov dword [0xc314ac], 0xfffffc11
jmp 0x40d51f
call fcn.00411420
mov dword [0xc314a0], eax
cmp eax, ebx
jne 0x40cfe4
mov dword [0xc314ac], 0xfffffc12
jmp 0x40d51f
push 0x38
push ebx
lea edx, [ebp - 0xc34]
push edx
call fcn.0041d2d0
xor eax, eax
mov dword [0xc31474], eax
mov dword [0xc31478], eax
mov dword [0xc3147c], eax
mov dword [0xc31480], eax
mov eax, dword [ebp - 0xbf8]
mov ecx, dword [eax]
mov dword [ebp - 0xc34], ecx
mov dword [ebp - 0xc30], ebx
mov dword [ebp - 0xc2c], ebx
xor edx, edx
mov dword [ebp - 0xc28], edx
xor ecx, ecx
mov dword [ebp - 0xc24], ecx
xor eax, eax
mov dword [ebp - 0xc20], eax
mov dword [ebp - 0xc1c], 0x10000
mov word [ebp - 0xc18], cx
mov dword [ebp - 0xc14], ebx
mov dword [ebp - 0xc10], ebx
mov dword [ebp - 0xc0c], ebx
mov dword [ebp - 0xc08], ebx
mov dword [ebp - 0xc00], ebx
mov dword [ebp - 0xc04], 1
mov word [ebp - 0xa38], dx
mov dword [ebp - 0xa34], 0x3e9
mov ecx, 0xa
mov esi, str.MSAFD_Tcpip__TCP_IP_
lea edi, [ebp - 0xa30]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
push 0x1d6
push ebx
lea eax, [ebp - 0xa06]
push eax
call fcn.0041d2d0
xor ecx, ecx
mov word [ebp - 0x830], cx
mov dword [ebp - 0x82c], 0x3ea
mov ecx, 0xa
mov esi, str.MSAFD_Tcpip__UDP_IP_
lea edi, [ebp - 0x828]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
push 0x1d6
push ebx
lea edx, [ebp - 0x7fe]
push edx
call fcn.0041d2d0
xor eax, eax
mov word [ebp - 0x628], ax
mov dword [ebp - 0x624], ebx
push 0x200
push ebx
lea ecx, [ebp - 0x620]
push ecx
call fcn.0041d2d0
mov dword [ebp - 0xbf0], ebx
mov dword [ebp - 0xbec], ebx
mov dword [ebp - 0xbe4], ebx
lea edx, [ebp - 0xbf4]
push edx
lea eax, [ebp - 0xbe4]
push eax
lea ecx, [ebp - 0xbec]
push ecx
lea edx, [ebp - 0xbf0]
push edx
lea eax, [ebp - 0xc34]
call fcn.00409d30
add esp, 0x40
cmp eax, ebx
jl 0x40d51f
mov eax, dword [ebp - 0xbe4]
cmp eax, ebx
setne byte [ebp - 0xbe5]
xor esi, esi
cmp eax, ebx
jle 0x40d1d1
mov dword [ebp - 0xa48], 0x30052007
mov dword [ebp - 0xa44], 0x11d19736
mov dword [ebp - 0xa40], 0xc0007f93
mov dword [ebp - 0xa3c], 0xd86ad4f
mov eax, 0x10
lea ecx, [ebp - 0xa48]
mov edx, esi
imul edx, edx, 0x4a4
mov edi, dword [ebp - 0xbec]
lea edx, [edx + edi + 0x21c]
mov edi, dword [edx]
cmp edi, dword [ecx]
jne 0x40d33b
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x40d1a6
xor eax, eax
cmp eax, ebx
je 0x40d3f8
inc esi
cmp esi, dword [ebp - 0xbe4]
jl 0x40d15e
xor al, al
jne 0x40d3f4
mov dword [ebp - 0xbdc], ebx
cmp dword [ebp - 0xbf4], ebx
jle 0x40d27a
jmp 0x40d1f0
xor ebx, ebx
mov eax, 2
test eax, eax
jle 0x40d261
jmp 0x40d200
mov edi, dword [ebp - 0xbdc]
imul edi, edi, 0x274
add edi, dword [ebp - 0xbf0]
lea edx, [edi + 0x74]
mov eax, edx
lea esi, [eax + 2]
lea ebx, [ebx]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x40d220
sub eax, esi
sar eax, 1
mov esi, ebx
imul esi, esi, 0x208
push eax
lea ecx, [ebp + esi - 0xa30]
push ecx
push edx
call fcn.0041495d
add esp, 0xc
test eax, eax
jne 0x40d257
mov edx, dword [edi + 0x24]
mov dword [ebp + esi - 0xa34], edx
inc ebx
mov eax, 2
cmp ebx, eax
jl 0x40d200
mov eax, dword [ebp - 0xbdc]
inc eax
mov dword [ebp - 0xbdc], eax
cmp eax, dword [ebp - 0xbf4]
jl 0x40d1f0
xor ebx, ebx
cmp byte [ebp - 0xbe5], bl
je 0x40d3d7
mov dword [ebp - 0xbdc], ebx
mov eax, 2
cmp eax, ebx
jle 0x40d3d7
jmp 0x40d2a0
mov eax, dword [ebp - 0xbdc]
imul eax, eax, 0x208
cmp word [ebp + eax - 0xa38], bx
jne 0x40d3bd
mov dword [ebp - 0xbfc], ebx
cmp dword [ebp - 0xbe4], ebx
jle 0x40d3bd
lea esp, [esp]
xor eax, eax
mov esi, dword [ebp - 0xbfc]
imul esi, esi, 0x4a4
add esi, dword [ebp - 0xbec]
mov edi, dword [esi + 0x484]
cmp edi, ebx
jle 0x40d3a2
mov edx, dword [esi + 0x480]
mov ecx, eax
imul ecx, ecx, 0x274
mov ecx, dword [ecx + edx + 0x28]
cmp ecx, 7
jge 0x40d407
test ecx, ecx
jle 0x40d334
mov ebx, eax
imul ebx, ebx, 0x9d
add ebx, ecx
mov ecx, dword [ebp - 0xbdc]
imul ecx, ecx, 0x208
mov edx, dword [edx + ebx*4 + 0x28]
cmp edx, dword [ebp + ecx - 0xa34]
je 0x40d372
inc eax
cmp eax, edi
jl 0x40d2f2
jmp 0x40d3a2
movzx eax, byte [edx]
movzx edi, byte [ecx]
sub eax, edi
jne 0x40d367
movzx eax, byte [edx + 1]
movzx edi, byte [ecx + 1]
sub eax, edi
jne 0x40d367
movzx eax, byte [edx + 2]
movzx edi, byte [ecx + 2]
sub eax, edi
jne 0x40d367
movzx eax, byte [edx + 3]
movzx ecx, byte [ecx + 3]
sub eax, ecx
sar eax, 0x1f
or eax, 1
jmp 0x40d1c0
mov ecx, dword [ebp - 0xbdc]
imul ecx, ecx, 0x208
imul eax, eax, 0x274
mov edx, dword [esi + 0x480]
mov eax, dword [edx + eax + 0x24]
mov dword [ebp + ecx - 0xa34], eax
mov edx, 1
mov word [ebp + ecx - 0xa38], dx
mov eax, dword [ebp - 0xbfc]
inc eax
mov dword [ebp - 0xbfc], eax
xor ebx, ebx
cmp eax, dword [ebp - 0xbe4]
jl 0x40d2d0
mov ecx, dword [ebp - 0xbdc]
inc ecx
mov dword [ebp - 0xbdc], ecx
mov eax, 2
cmp ecx, eax
jl 0x40d2a0
mov eax, dword [ebp - 0xbf4]
push eax
mov ecx, dword [ebp - 0xbf0]
call fcn.0040c6e0
add esp, 4
test al, al
je 0x40d51f
xor al, al
je 0x40d418
mov dword [0xc314ac], 0xfffffc10
jmp 0x40d51f
mov dword [0xc314ac], 0xfffffc11
xor ebx, ebx
jmp 0x40d51f
call fcn.0040b670
test ax, ax
je 0x40d51f
push 0x38
push ebx
lea ecx, [ebp - 0xc34]
push ecx
call fcn.0041d2d0
add esp, 0xc
mov edx, dword [ebp - 0xbf8]
mov eax, dword [edx]
mov dword [ebp - 0xc34], eax
mov dword [ebp - 0xc2c], ebx
mov dword [ebp - 0xc28], 1
xor eax, eax
mov dword [ebp - 0xc24], eax
xor edx, edx
mov dword [ebp - 0xc20], edx
xor ecx, ecx
mov dword [ebp - 0xc1c], ecx
mov word [ebp - 0xc18], ax
mov dword [ebp - 0xc14], str.xdpLsp
mov dword [ebp - 0xc10], 0x8302d0
mov dword [ebp - 0xc0c], ebx
mov dword [ebp - 0xc08], ebx
mov dword [ebp - 0xc00], ebx
mov dword [ebp - 0xc04], 1
mov edi, 2
mov dword [ebp - 0xc30], edi
cmp edi, ebx
jbe 0x40d4f5
lea ecx, [ebp - 0xbf8]
push ecx
lea esi, [edi*4]
call fcn.00412480
add esp, 4
mov dword [ebp - 0xc2c], eax
cmp eax, ebx
jne 0x40d4e0
mov dword [0xc314ac], 0xfffffc0f
jmp 0x40d51f
cmp edi, ebx
jle 0x40d4f5
mov edx, dword [ebp - 0xa34]
mov dword [eax], edx
mov ecx, dword [ebp - 0x82c]
mov dword [eax + 4], ecx
lea edx, [ebp - 0xbf4]
push edx
lea eax, [ebp - 0xbe4]
push eax
lea ecx, [ebp - 0xbec]
push ecx
lea edx, [ebp - 0xbf0]
push edx
lea eax, [ebp - 0xc34]
call fcn.00409d30
add esp, 0x10
mov eax, dword [ebp - 0xc2c]
cmp eax, ebx
je 0x40d537
push eax
push ebx
mov eax, dword [0xc314b4]
push eax
call dword [0x423090]
mov eax, dword [ebp - 0xbf0]
cmp eax, ebx
je 0x40d550
push eax
push ebx
mov ecx, dword [0xc314b4]
push ecx
call dword [0x423090]
mov eax, dword [ebp - 0xbec]
cmp eax, ebx
je 0x40d569
push eax
mov eax, dword [ebp - 0xbe4]
call fcn.00410b60
add esp, 4
cmp dword [0xc314ac], ebx
je 0x40d576
call fcn.0040ba50
mov eax, dword [0xc314a0]
cmp eax, ebx
je 0x40d586
push eax
call dword [0x423040]
mov eax, dword [0xc314b4]
cmp eax, ebx
je 0x40d59c
push eax
call dword [0x42309c]
mov dword [0xc314b4], ebx
push 0xc31484
call dword [0x42305c]
call dword [sym.imp.WS2_32.dll_WSACleanup]
jmp 0x40d5c5
xor eax, eax
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x1c]
xor ecx, ebp
call fcn.0041369d
mov esp, ebp
pop ebp
ret