Function at 0x4184bf
Capabilities:
Encode data using xor
Encrypt data using rc4 ksa

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x530
push ebx
push esi
push edi
push 9
mov dword [ebp - 0x204], ecx
pop ecx
push 0x14
pop eax
mov dword [ebp - 0x208], edx
mov dword [ebp - 0x200], 0x8479ca6e
mov dword [ebp - 0x1fc], 0x5a33f1b2
mov dword [ebp - 0x1f8], 0x17c616db
mov dword [ebp - 0x1f4], 0xbfd8ec95
mov dword [ebp - 0x1f0], 0xe32993cc
mov dword [ebp - 0x1ec], 0x29e7fa7c
mov dword [ebp - 0x1e8], 0xa103a9d2
mov dword [ebp - 0x1e4], 0x371e3a38
mov dword [ebp - 0x1e0], 0x4e2e8258
mov dword [ebp - 0x1dc], 0x767dc307
mov dword [ebp - 0x1d8], 0x318af7b3
mov dword [ebp - 0x1d4], 0x6c0f80fe
mov dword [ebp - 0x1d0], 0xdeabb426
mov dword [ebp - 0x1cc], 0x2f683f3a
mov dword [ebp - 0x1c8], 0x9cf5c79b
mov dword [ebp - 0x1c4], 0xd8a3666c
mov dword [ebp - 0x1c0], 0xcfc09333
mov dword [ebp - 0x1bc], 0x88f92ddf
mov dword [ebp - 0x1b8], 0x56eaaee2
mov dword [ebp - 0x1b4], 0x1eb037d3
mov dword [ebp - 0x1b0], 0xb0eb4c01
mov dword [ebp - 0x1ac], 0xb9f64590
mov dword [ebp - 0x1a8], 0x43151b96
mov dword [ebp - 0x1a4], 0x4188dfcc
mov dword [ebp - 0x1a0], 0xfa44caee
mov dword [ebp - 0x19c], 0xaa52423c
mov dword [ebp - 0x198], 0xa8557d26
mov dword [ebp - 0x194], 0x9966ba1d
mov byte [ebp - 0x190], cl
mov dword [ebp - 0x18f], 0x15ab9cd
mov dword [ebp - 0x18b], 0x74a4763b
mov dword [ebp - 0x187], 0xd916dbe3
mov dword [ebp - 0x183], 0x510d06ca
mov dword [ebp - 0x17f], 0xf58f0689
mov dword [ebp - 0x17b], 0xbb6f6118
mov dword [ebp - 0x177], 0xb8d69ca9
mov dword [ebp - 0x173], 0xe1ed9ce9
mov dword [ebp - 0x16f], 0x8377a321
mov dword [ebp - 0x16b], 0xa0d57442
mov dword [ebp - 0x167], 0x79559438
mov dword [ebp - 0x163], 0x93f1f698
mov dword [ebp - 0x15f], 0xff655b8e
mov dword [ebp - 0x15b], 0xce97bd19
mov byte [ebp - 0x157], al
mov dword [ebp - 0x156], 0xba191626
mov dword [ebp - 0x152], 0x8920ea37
mov dword [ebp - 0x14e], 0x76f4aa32
mov dword [ebp - 0x14a], 0x7a406a32
mov dword [ebp - 0x146], 0x3284deb4
mov dword [ebp - 0x142], 0x8e06c6b8
mov dword [ebp - 0x13e], 0x61dfe77d
mov dword [ebp - 0x13a], 0xbeb3605d
mov dword [ebp - 0x136], 0x8dee2723
mov word [ebp - 0x132], 0x39b7
mov byte [ebp - 0x130], 0xd2
mov byte [ebp - 0x12f], al
mov dword [ebp - 0x12e], 0xc53aa703
mov dword [ebp - 0x12a], 0xd7e9976c
mov dword [ebp - 0x126], 0xda5fdfde
mov dword [ebp - 0x122], 0xa2253a2
mov dword [ebp - 0x11e], 0xb92bec24
mov dword [ebp - 0x11a], 0x13a2e0bc
mov dword [ebp - 0x116], 0xbf24dc7
mov dword [ebp - 0x112], 0xf0dde892
mov dword [ebp - 0x10e], 0xa72f436
mov dword [ebp - 0x10a], 0xfb18df75
mov dword [ebp - 0x106], 0xa6a0dba5
mov dword [ebp - 0x102], 0xeba55f27
mov dword [ebp - 0xfe], 0x504139f4
mov dword [ebp - 0xfa], 0xb7db2135
mov dword [ebp - 0xf6], 0xbd0ba428
mov dword [ebp - 0xf2], 0x1d2285fe
mov esi, 0x42c538
mov dword [ebp - 0xee], 0xaf306cbf
lea edi, [ebp - 0x10]
mov dword [ebp - 0xea], 0x7e488b61
push 0x1c
pop eax
movsd dword es:[edi], dword [esi]
xor ebx, ebx
mov byte [ebp - 0xb9], al
mov eax, ebx
mov dword [ebp - 0xe6], 0xc9026e94
mov dword [ebp - 0xe2], 0x88cdee32
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0xde], 0x82371e57
mov word [ebp - 0xda], 0xa782
mov byte [ebp - 0xd8], cl
movsb byte es:[edi], byte [esi]
mov dword [ebp - 0xd7], 0x7ec9b19c
mov edi, ebx
mov dword [ebp - 0xd3], 0xb36f507b
mov dword [ebp - 0xcf], 0x204eb080
mov dword [ebp - 0xcb], 0xee152da2
mov dword [ebp - 0xc7], 0xba428fa6
mov dword [ebp - 0xc3], 0xe15ef8ed
mov dword [ebp - 0xbf], 0xc2ac3efc
mov word [ebp - 0xbb], 0xb183
mov dword [ebp - 0xb8], 0x2c5cd1a4
mov dword [ebp - 0xb4], 0x74014015
mov dword [ebp - 0xb0], 0xc28845a2
mov dword [ebp - 0xac], 0xe6542d46
mov dword [ebp - 0xa8], 0x25fcf0cd
mov dword [ebp - 0xa4], 0x94f177c2
mov dword [ebp - 0xa0], 0xf96745dd
mov dword [ebp - 0x9c], 0xa9b1b940
mov dword [ebp - 0x98], 0xf3cc5efc
mov dword [ebp - 0x94], 0xc43bf5f5
mov dword [ebp - 0x90], 0x925e9738
mov dword [ebp - 0x8c], 0x8e55fe0f
mov dword [ebp - 0x88], 0x8013ebbc
mov dword [ebp - 0x84], 0xb5cf6f42
mov dword [ebp - 0x80], 0x89a33197
mov dword [ebp - 0x7c], 0x2eb70ecb
mov dword [ebp - 0x78], 0xb8137fb9
mov dword [ebp - 0x74], 0x1bfb88e7
mov dword [ebp - 0x70], 0xd48cf37b
mov dword [ebp - 0x6c], 0x2a778307
mov byte [ebp + eax - 0x334], al
inc eax
cmp eax, 0x100
jb 0x4188fd
mov esi, ebx
mov dl, byte [ebp + esi - 0x334]
mov eax, esi
and eax, 7
movzx ecx, dl
movzx eax, byte [ebp + eax - 0x10]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x334]
mov byte [ebp + esi - 0x334], al
inc esi
mov byte [ebp + edi - 0x334], dl
cmp esi, 0x100
jb 0x41890e
xor eax, eax
mov edi, eax
mov esi, eax
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x334]
movzx edx, cl
lea eax, [edx + ebx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x334]
mov byte [ebp + edi - 0x334], al
mov byte [ebp + ebx - 0x334], cl
movzx eax, byte [ebp + edi - 0x334]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x334]
xor al, byte [ebp + esi - 0x200]
mov byte [ebp + esi - 0x530], al
inc esi
cmp esi, 0x198
jb 0x41894d
mov eax, dword [0x4356ac]
lea edi, [ebp - 0x228]
push 7
pop ecx
mov esi, 0x430814
mov dword [ebp - 0x68], 0x49c804c6
rep movsd dword es:[edi], dword [esi]
xor edx, edx
mov dword [ebp - 0x64], 0x8e11513
add eax, 0x3911242d
mov byte [ebp - 0x398], dl
mov dword [0x43571c], eax
mov ecx, edx
movsb byte es:[edi], byte [esi]
xor eax, 0xd7dab42e
mov dword [ebp - 0x60], 0x96c84b83
mov edi, edx
mov dword [ebp - 0x5c], 0x785b8ef5
mov dword [ebp - 0x58], 0xd69e820c
mov dword [ebp - 0x54], 0x415b89c4
mov dword [ebp - 0x50], 0x30d5ee0b
mov dword [ebp - 0x4c], 0xc5b9c1f8
mov dword [ebp - 0x48], 0xd7e681f1
mov dword [ebp - 0x44], 0x44ba6a71
mov dword [ebp - 0x40], 0xb4ec275c
mov dword [ebp - 0x3c], 0x8b7c023
mov dword [ebp - 0x38], 0x9675a3ad
mov dword [ebp - 0x34], 0x374c2ba0
mov dword [ebp - 0x30], 0x143bbf46
mov dword [ebp - 0x2c], 0xbfa9e0fe
mov dword [ebp - 4], eax
mov byte [ebp + ecx - 0x334], cl
inc ecx
cmp ecx, 0x100
jb 0x418a47
mov esi, edx
xor edx, edx
mov bl, byte [ebp + esi - 0x334]
push 0x1c
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x228]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x334]
mov byte [ebp + esi - 0x334], al
inc esi
mov byte [ebp + edi - 0x334], bl
cmp esi, 0x100
jb 0x418a59
xor eax, eax
mov ebx, eax
mov edi, eax
mov esi, eax
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x334]
movzx edx, cl
lea eax, [edx + ebx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x334]
mov byte [ebp + edi - 0x334], al
mov byte [ebp + ebx - 0x334], cl
movzx eax, byte [ebp + edi - 0x334]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x334]
xor al, byte [ebp + esi - 0x68]
mov byte [ebp + esi - 0x394], al
inc esi
cmp esi, 0x40
jb 0x418aa1
mov esi, 0x42c254
mov dword [ebp - 0x28], 0xee035a8b
lea edi, [ebp - 0x10]
mov dword [ebp - 0x24], 0x7bb07903
push 0x14
xor ecx, ecx
mov dword [ebp - 0x20], 0x2de13287
movsd dword es:[edi], dword [esi]
pop eax
mov byte [ebp - 0x13], al
mov eax, ecx
mov byte [ebp - 0x354], cl
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x1c], 0x1b76b455
mov dword [ebp - 0x18], 0xf20a7b3b
mov byte [ebp - 0x14], 0x52
movsw word es:[edi], word [esi]
mov word [ebp - 0x12], 0xecf7
mov edi, ecx
mov byte [ebp + eax - 0x334], al
inc eax
cmp eax, 0x100
jb 0x418b3c
mov esi, ecx
xor edx, edx
mov bl, byte [ebp + esi - 0x334]
push 9
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x10]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x334]
mov byte [ebp + esi - 0x334], al
inc esi
mov byte [ebp + edi - 0x334], bl
cmp esi, 0x100
jb 0x418b4d
xor eax, eax
mov ebx, eax
mov edi, eax
mov esi, eax
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x334]
movzx edx, cl
lea eax, [edx + ebx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x334]
mov byte [ebp + edi - 0x334], al
mov byte [ebp + ebx - 0x334], cl
movzx eax, byte [ebp + edi - 0x334]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x334]
xor al, byte [ebp + esi - 0x28]
mov byte [ebp + esi - 0x350], al
inc esi
cmp esi, 0x18
jb 0x418b92
push 5
pop ecx
mov esi, 0x42ceb0
mov dword [ebp - 0x10], 0xb5a9b9f7
lea edi, [ebp - 0x28]
mov dword [ebp - 0xc], 0xd2d45c08
rep movsd dword es:[edi], dword [esi]
push 0xb
pop ecx
push 0x49
movsb byte es:[edi], byte [esi]
xor ebx, ebx
mov esi, 0x42d480
mov byte [ebp - 0x338], bl
lea edi, [ebp - 0x234]
mov dword [ebp - 8], 0x61e7f19b
rep movsd dword es:[edi], dword [esi]
pop ecx
mov edx, ebx
cmp cx, word [ebp - 0x234]
jne 0x418c51
mov eax, ebx
test cx, cx
je 0x418c51
cmp word [ebp + eax - 0x234], bx
je 0x418c51
inc edx
lea eax, [edx + edx]
movzx ecx, word [eax + str.IsLowPriorityConfiguration]
cmp cx, word [ebp + eax - 0x234]
je 0x418c2d
movzx eax, byte [ebp + edx*2 - 0x234]
movzx ecx, byte [edx*2 + str.IsLowPriorityConfiguration]
sub ecx, eax
cmp ecx, 0x15c8
jbe 0x418c84
mov eax, dword [ebp - 4]
mov ecx, 0x4356f0
sub eax, 0x16249ce8
mov dword [0x4356ac], eax
call fcn.00414ab4
jmp 0x418c90
imul eax, dword [ebp - 4], 0xe84a77fa
mov dword [0x4356ac], eax
mov edi, ebx
mov eax, ebx
mov byte [ebp + eax - 0x334], al
inc eax
cmp eax, 0x100
jb 0x418c94
mov esi, ebx
xor edx, edx
mov bl, byte [ebp + esi - 0x334]
push 0x14
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x28]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x334]
mov byte [ebp + esi - 0x334], al
inc esi
mov byte [ebp + edi - 0x334], bl
cmp esi, 0x100
jb 0x418ca5
xor eax, eax
mov ebx, eax
mov edi, eax
mov esi, eax
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x334]
movzx edx, cl
lea eax, [edx + ebx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x334]
mov byte [ebp + edi - 0x334], al
mov byte [ebp + ebx - 0x334], cl
movzx eax, byte [ebp + edi - 0x334]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x334]
xor al, byte [ebp + esi - 0x10]
movzx eax, al
mov word [ebp + esi*2 - 0x224], ax
inc esi
cmp esi, 0xc
jb 0x418cea
xor eax, eax
mov word [ebp - 0x20c], ax
call fcn.00406fca
lea ecx, [ebp - 0x530]
mov dword [ebp - 4], eax
call fcn.0040b628
lea ecx, [ebp - 0x394]
mov edi, eax
call fcn.0040b628
mov ecx, 0x1000
mov esi, eax
call fcn.0040a2a8
mov edx, dword [ebp - 4]
mov ebx, eax
lea eax, [ebp - 0x224]
push dword [edx + 0x1468]
lea ecx, [edx + 0x1e94]
push dword [ebp + 0xc]
push ecx
lea ecx, [edx + 0x1a84]
push ecx
lea ecx, [edx + 0x1674]
push ecx
push eax
lea eax, [edx + 0x146c]
push eax
push dword [edx + 0x1460]
lea eax, [edx + 0x1050]
push eax
push dword [edx + 0x1464]
lea eax, [edx + 0xc40]
push eax
lea eax, [edx + 0x830]
push eax
lea eax, [edx + 0x420]
push eax
lea eax, [edx + 0x10]
push eax
push dword [edx + 8]
push dword [edx + 4]
push dword [edx]
lea edx, [ebp - 0x350]
push esi
push dword [ebp + 8]
push edi
push ebx
push 2
pop ecx
call fcn.0040a2e6
call eax
mov ecx, ebx
call fcn.0040b8f4
mov ecx, dword [ebp - 0x204]
mov edx, ebx
push eax
call fcn.0040b6ac
add esp, 0x58
push 0x1000
push 0
push ebx
call fcn.0040b587
mov ecx, dword [ebp - 0x204]
call fcn.0040b8e6
mov edx, dword [ebp - 0x208]
push eax
call fcn.00408921
mov ecx, edi
call fcn.0040b8f4
push eax
push 0
push edi
call fcn.0040b587
mov ecx, esi
call fcn.0040b8f4
push eax
push 0
push esi
call fcn.0040b587
mov ecx, edi
call fcn.0040a2d2
mov ecx, esi
call fcn.0040a2d2
mov esi, dword [ebp - 4]
push 0x22a4
push 0
push esi
call fcn.0040b587
add esp, 0x34
mov ecx, esi
call fcn.0040a2d2
mov ecx, ebx
call fcn.0040a2d2
pop edi
pop esi
pop ebx
leave
ret