Function at 0xc629e3
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x50
push ebx
push esi
push edi
mov edi, dword [0xc78b18]
xor edx, edx
mov esi, edi
mov dword [ebp - 0xc], ecx
mov eax, edx
or esi, 0xc2689e67
inc eax
cmp byte [eax + str.RtlUnregisterFeatureConfigurationChangeNotification], dl
jne 0xc62a01
cmp eax, 0x1ccc
jbe 0xc62a23
and dword [0xc78af4], 0xcb428ade
mov ebx, dword [0xc78b00]
jmp 0xc62a29
imul ebx, esi, 0xe538cdbe
mov eax, dword [0xc78b30]
or edi, 0x6c29b892
mov ecx, eax
mov esi, edx
xor ecx, 0x65efb0ed
mov dword [ebp - 8], ecx
inc esi
cmp word [esi*2 + str.RtlUnsubscribeWnfNotificationWaitForCompletion], dx
jne 0xc62a41
mov ecx, dword [ebp - 0x10]
cmp ecx, esi
jae 0xc62a6e
and eax, 0x6c08fcea
mov dword [ebp - 8], eax
cmp ecx, 0x17e5
jne 0xc62a69
lea ebx, [edi + 0x68dd8b02]
inc ecx
cmp ecx, esi
jb 0xc62a5b
push 0xb
pop ecx
mov esi, 0xc737c0
mov dword [ebp - 4], edx
lea edi, [ebp - 0x50]
and ebx, 0xf6438ceb
rep movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0xc]
mov dword [ebp - 0x10], ebx
or ebx, 0x1d421750
mov dword [0xc78b00], ebx
movzx eax, word [esi]
mov edi, eax
mov dword [ebp - 0xc], edi
cmp ax, word [ebp - 0x50]
jne 0xc62acf
movzx ecx, di
mov eax, edx
mov ebx, edx
test cx, cx
je 0xc62ac6
cmp word [ebp + eax - 0x50], dx
je 0xc62ac6
inc ebx
lea eax, [ebx + ebx]
movzx ecx, word [eax + esi]
cmp cx, word [ebp + eax - 0x50]
je 0xc62aab
mov dword [ebp - 4], ebx
mov ebx, dword [0xc78b00]
mov eax, dword [ebp - 4]
movzx ecx, byte [esi + eax*2]
movzx eax, byte [ebp + eax*2 - 0x50]
sub ecx, eax
mov eax, dword [0xc78b30]
cmp ecx, 0x14ba
jae 0xc62afb
mov ebx, dword [ebp - 0x10]
and ebx, 0x73a65c68
mov dword [0xc78b00], ebx
jmp 0xc62b00
xor eax, 0x6b235a32
xor eax, 0x8de326dd
mov dword [0xc78b48], eax
test di, di
je 0xc62b1e
mov eax, dword [ebp - 8]
add eax, 0x23308410
mov dword [0xc78af4], eax
jmp 0xc62b23
mov eax, dword [0xc78af4]
mov ecx, ebx
xor ecx, 0xec9567fa
test di, di
je 0xc62b44
lea esi, [esi + 2]
xor ebx, 0x681f461
cmp word [esi], dx
jne 0xc62b30
mov dword [0xc78b00], ebx
imul edi, eax, 0xa1b7bbfb
mov esi, edx
mov dword [0xc78b30], edi
inc esi
cmp byte [esi + 0xc75954], dl
jne 0xc62b52
mov edi, dword [ebp - 0x10]
jmp 0xc62b7b
cmp edi, 0x897
jne 0xc62b74
sub ebx, 0x373b5940
mov dword [0xc78b00], ebx
or ecx, 0xd559a037
inc edi
cmp edi, esi
jb 0xc62b60
cmp word [ebp - 0xc], dx
je 0xc62b8b
lea ecx, [ebx - 0x5be066]
mov esi, str.identifier_removed
lea edi, [ebp - 0x24]
and ecx, 0xe5b6fe1a
mov dword [0xc78b18], ecx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
cmp byte [ebp - 0x24], 0x69
jne 0xc62bf8
mov cl, 0x69
test cl, cl
je 0xc62bc6
cmp byte [ebp + edx - 0x24], 0
je 0xc62bc6
mov cl, byte [edx + 0xc759b1]
inc edx
cmp cl, byte [ebp + edx - 0x24]
je 0xc62bae
mov ecx, dword [ebp - 0x10]
cmp ecx, edx
jae 0xc62bf8
mov ebx, dword [0xc78b30]
xor ebx, 0xf02ca81c
cmp ecx, 0x20bc
jne 0xc62bec
imul eax, eax, 0xae5266c4
mov dword [0xc78b00], eax
inc ecx
mov eax, ebx
cmp ecx, edx
jb 0xc62bd9
mov dword [0xc78af4], eax
pop edi
pop esi
pop ebx
leave
ret