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

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x9ec
mov edx, dword [0x428290]
mov eax, edx
or eax, 0x70c8daad
mov dword [0x428290], eax
xor eax, eax
cmp word [eax + 0x42cf00], 0
je 0x1443498
add eax, 2
cmp eax, 0x1452
jne 0x1443478
or edx, 0xf0fdfaed
mov dword [0x428290], edx
lea edi, [ebp - 0x9d7]
mov esi, 0x42a262
xor ebx, ebx
mov ecx, 0xa
rep movsb byte es:[edi], byte [esi]
mov esi, 0x42a26c
lea edi, [ebp - 0x798]
mov ecx, 0x10
rep movsd dword es:[edi], dword [esi]
sub dword [0x428290], 0x3b77ad87
mov eax, dword [0x428290]
add eax, 0x1abe5d61
imul eax, eax, 0x929daa7f
mov dword [0x428290], eax
call fcn.0144e588
mov byte [ebp + ebx - 0x718], bl
inc ebx
cmp ebx, 0x100
jne 0x14434c8
mov ebx, dword [0x428290]
xor edi, edi
xor esi, esi
mov al, byte [ebp + esi - 0x718]
mov ecx, 0x3f
xor edx, edx
and ebx, 0x78cf40e6
mov byte [ebp - 0x9dc], al
mov eax, esi
div ecx
movzx eax, byte [ebp + edx - 0x798]
movzx edx, byte [ebp - 0x9dc]
add eax, edx
add eax, edi
movzx edi, al
mov al, byte [ebp + edi - 0x718]
mov byte [ebp + esi - 0x718], al
mov al, byte [ebp - 0x9dc]
inc esi
mov byte [ebp + edi - 0x718], al
cmp esi, 0x100
jne 0x14434fc
xor ecx, ecx
xor esi, esi
xor edx, edx
inc edx
or ebx, 0x2e8c6991
movzx edx, dl
sub ebx, 0x3f7df233
movzx edi, byte [ebp + edx - 0x718]
add esi, edi
mov eax, esi
movzx esi, al
mov al, byte [ebp + esi - 0x718]
mov byte [ebp + edx - 0x718], al
mov eax, edi
mov byte [ebp + esi - 0x718], al
add al, byte [ebp + edx - 0x718]
movzx eax, al
mov al, byte [ebp + eax - 0x718]
xor al, byte [ecx + ebp - 0x9d7]
movzx eax, al
mov word [ebp + ecx*2 - 0x9a8], ax
inc ecx
cmp ecx, 0xa
jne 0x144355a
lea edi, [ebp - 0x9cd]
mov esi, 0x42a2ac
mov word [ebp - 0x994], 0
mov edx, 0x429460
rep movsb byte es:[edi], byte [esi]
lea edi, [ebp - 0x838]
mov esi, 0x42a2b6
mov ecx, 0x2e
rep movsb byte es:[edi], byte [esi]
mov dword [0x428290], ebx
mov al, byte [edx]
test al, al
je 0x144360a
sub eax, 0x30
cmp al, 9
jbe 0x1443607
imul ebx, ebx, 0x35e18cf9
mov dword [0x428290], ebx
jmp 0x144360a
inc edx
jmp 0x14435ec
mov eax, dword [0x428290]
xor ebx, ebx
and eax, 0x49449798
mov dword [0x428290], eax
mov dword [esp + 4], eax
mov dword [esp], 0x42be00
call fcn.01451630
mov eax, dword [0x428290]
sub eax, 0x1653ce1
or eax, 0x9be0f5bd
add eax, 0x10e2724d
mov dword [0x428290], eax
mov eax, dword [0x428290]
mov dword [esp], eax
call dword [0x42e0d8]
push eax
mov byte [ebp + ebx - 0x618], bl
inc ebx
cmp ebx, 0x100
jne 0x1443644
xor edi, edi
xor ecx, ecx
mov esi, 0x2d
mov eax, ecx
xor edx, edx
mov bl, byte [ebp + ecx - 0x618]
div esi
movzx eax, byte [ebp + edx - 0x838]
movzx edx, bl
add eax, edx
add eax, edi
movzx edi, al
mov al, byte [ebp + edi - 0x618]
mov byte [ebp + ecx - 0x618], al
inc ecx
mov byte [ebp + edi - 0x618], bl
cmp ecx, 0x100
jne 0x144366c
xor edi, edi
xor esi, esi
xor ebx, ebx
inc ebx
movzx ebx, bl
mov dl, byte [ebp + ebx - 0x618]
lea eax, [edx + esi]
movzx esi, al
mov al, byte [ebp + esi - 0x618]
mov byte [ebp + ebx - 0x618], al
mov byte [ebp + esi - 0x618], dl
add dl, byte [ebp + ebx - 0x618]
movzx edx, dl
cmp byte [0x429460], 0
mov al, byte [ebp + edx - 0x618]
mov byte [ebp - 0x9dc], al
je 0x14436ff
or dword [0x428290], 0xe77e2535
mov eax, dword [0x428290]
sub eax, 0x9ebb503
and eax, 0x43fbc755
mov dword [0x428290], eax
call fcn.0144fec8
mov eax, dword [0x428290]
mov dl, byte [ebp - 0x9dc]
xor dl, byte [ebp + edi - 0x9cd]
movzx edx, dl
and eax, 0x3237c11b
mov word [ebp + edi*2 - 0x994], dx
inc edi
mov dword [0x428290], eax
cmp edi, 0xa
jne 0x14436af
xor eax, 0xa166223a
lea edi, [ebp - 0x9c3]
mov esi, 0x42a2e4
mov word [ebp - 0x980], 0
mov dword [0x428290], eax
mov ecx, 0xb
rep movsb byte es:[edi], byte [esi]
lea edi, [ebp - 0x88e]
mov esi, 0x42a2ef
mov ecx, 0x2a
rep movsb byte es:[edi], byte [esi]
mov ecx, 0x429460
mov dl, byte [ecx]
test dl, dl
je 0x14437a2
sub edx, 0x30
cmp dl, 9
jbe 0x144379f
and eax, 0x4a917090
mov dword [0x428290], eax
jmp 0x14437a2
inc ecx
jmp 0x1443785
sub dword [0x428290], 0x2e63f7aa
xor eax, eax
mov byte [eax + ebp - 0x518], al
inc eax
cmp eax, 0x100
jne 0x14437ae
xor edi, edi
xor ebx, ebx
mov ecx, 0x29
mov eax, ebx
xor edx, edx
movzx esi, byte [ebp + ebx - 0x518]
div ecx
mov eax, esi
mov ecx, 0x77
add al, byte [ebp + edx - 0x88e]
mov edx, 0x429460
add eax, edi
movzx edi, al
movzx eax, byte [edx]
inc edx
test al, al
je 0x1443808
add ecx, eax
cmp ecx, 0x546
jbe 0x14437ec
add dword [0x428290], 0x5f8321db
mov eax, dword [0x428290]
sub eax, 0x210b2f62
and eax, 0xa575cb0
mov dword [0x428290], eax
mov dword [esp + 4], 0x429460
mov dword [esp], 0x429460
call fcn.0144e3b0
add dword [0x428290], 0x7451b03b
call fcn.014523bc
mov al, byte [ebp + edi - 0x518]
mov byte [ebp + ebx - 0x518], al
xor eax, eax
cmp word [eax + 0x42cf00], 0
je 0x144386d
add eax, 2
cmp eax, 0x3a08
jne 0x144384f
sub dword [0x428290], 0x7f306a92
imul eax, dword [0x428290], 0xbcbe4a53
inc ebx
and eax, 0x5b368353
mov dword [0x428290], eax
call fcn.01453038
mov eax, dword [0x428290]
mov ecx, esi
mov byte [ebp + edi - 0x518], cl
and eax, 0x578fd7a6
sub eax, 0x27c1d554
mov dword [0x428290], eax
cmp ebx, 0x100
jne 0x14437c1
xor esi, esi
xor ebx, ebx
xor ecx, ecx
inc ecx
and eax, 0xcea5d809
movzx ecx, cl
or eax, 0x4ae724d9
mov dl, byte [ebp + ecx - 0x518]
mov dword [ebp - 0x9dc], eax
add ebx, edx
movzx ebx, bl
mov al, byte [ebp + ebx - 0x518]
mov byte [ebp + ecx - 0x518], al
imul eax, dword [ebp - 0x9dc], 0xb3b11488
mov byte [ebp + ebx - 0x518], dl
add dl, byte [ebp + ecx - 0x518]
movzx edx, dl
mov dl, byte [ebp + edx - 0x518]
xor dl, byte [esi + ebp - 0x9c3]
movzx edx, dl
mov word [ebp + esi*2 - 0x96c], dx
inc esi
cmp esi, 0xb
jne 0x14438b6
mov word [ebp - 0x956], 0
lea edi, [ebp - 0x9b8]
mov esi, 0x42a319
xor eax, eax
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
lea edi, [ebp - 0x80a]
mov esi, 0x42a329
mov ecx, 0x32
rep movsb byte es:[edi], byte [esi]
mov byte [ebp + eax - 0x418], al
inc eax
cmp eax, 0x100
jne 0x144394d
xor esi, esi
xor ecx, ecx
mov edi, 0x31
mov eax, ecx
xor edx, edx
mov bl, byte [ebp + ecx - 0x418]
div edi
movzx eax, byte [ebp + edx - 0x80a]
movzx edx, bl
add eax, edx
add eax, esi
movzx esi, al
mov al, byte [ebp + esi - 0x418]
mov byte [ebp + ecx - 0x418], al
inc ecx
mov byte [ebp + esi - 0x418], bl
cmp ecx, 0x100
jne 0x1443965
xor eax, eax
xor ebx, ebx
xor ecx, ecx
inc ecx
movzx ecx, cl
movzx edi, byte [ebp + ecx - 0x418]
add ebx, edi
movzx ebx, bl
mov dl, byte [ebp + ebx - 0x418]
mov byte [ebp + ecx - 0x418], dl
mov edx, edi
mov byte [ebp + ebx - 0x418], dl
add dl, byte [ebp + ecx - 0x418]
movzx edx, dl
mov dl, byte [ebp + edx - 0x418]
xor dl, byte [eax + ebp - 0x9b8]
movzx edx, dl
mov word [ebp + eax*2 - 0x8f6], dx
inc eax
cmp eax, 0x10
jne 0x14439a8
lea edi, [ebp - 0x980]
mov esi, 0x42a35b
mov ecx, 5
mov word [ebp - 0x8d6], 0
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
lea edi, [ebp - 0x758]
mov esi, 0x42a36f
imul eax, dword [ebp - 0x9dc], 0xa7463ba8
mov edx, 0x42be00
rep movsd dword es:[edi], dword [esi]
mov ecx, 0x110e
mov dword [0x428290], eax
movzx eax, word [edx]
add edx, 2
test ax, ax
je 0x1443a6f
add ecx, eax
cmp ecx, 0x2551
jbe 0x1443a3c
mov dword [esp + 4], 0x429460
mov dword [esp], 0x429460
call fcn.0144e3b0
and dword [0x428290], 0xbee41213
mov eax, dword [0x428290]
sub eax, 0x2758272e
xor eax, 0x43cad565
mov dword [0x428290], eax
call fcn.014523bc
xor eax, eax
mov byte [ebp + eax - 0x318], al
inc eax
cmp eax, 0x100
jne 0x1443a8a
xor edi, edi
xor ecx, ecx
mov esi, 0x3f
mov eax, ecx
xor edx, edx
mov bl, byte [ebp + ecx - 0x318]
div esi
movzx eax, byte [ebp + edx - 0x758]
movzx edx, bl
add eax, edx
add eax, edi
movzx edi, al
mov al, byte [ebp + edi - 0x318]
mov byte [ebp + ecx - 0x318], al
inc ecx
mov byte [ebp + edi - 0x318], bl
cmp ecx, 0x100
jne 0x1443aa2
mov eax, dword [0x428290]
xor esi, esi
xor ebx, ebx
and eax, 0x4a20e0e1
or eax, 0x4000a000
mov dword [0x428290], eax
mov dword [esp + 4], eax
mov dword [esp], 0x42be00
call fcn.01451630
mov eax, dword [0x428290]
xor ecx, ecx
mov dword [ebp - 0x9dc], eax
inc ecx
movzx ecx, cl
mov dl, byte [ebp + ecx - 0x318]
add ebx, edx
movzx ebx, bl
mov al, byte [ebp + ebx - 0x318]
mov byte [ebp + ecx - 0x318], al
mov byte [ebp + ebx - 0x318], dl
add dl, byte [ebp + ecx - 0x318]
movzx edx, dl
mov dl, byte [ebp + edx - 0x318]
xor dl, byte [esi + ebp - 0x980]
movzx edx, dl
mov word [ebp + esi*2 - 0x8b6], dx
inc esi
cmp esi, 0x14
jne 0x1443b14
mov eax, dword [ebp - 0x9dc]
lea edi, [ebp - 0x956]
mov esi, 0x42a3af
mov word [ebp - 0x88e], 0
mov ecx, 0x16
rep movsb byte es:[edi], byte [esi]
add eax, 0x2c21f708
lea edi, [ebp - 0x940]
mov esi, 0x42a3c5
mov ecx, 0x16
imul eax, eax, 0x64728d13
rep movsb byte es:[edi], byte [esi]
xor eax, 0xe18894f7
mov dword [0x428290], eax
xor eax, eax
mov byte [ebp + eax - 0x218], al
inc eax
cmp eax, 0x100
jne 0x1443bac
xor edi, edi
xor ecx, ecx
mov esi, 0x15
mov eax, ecx
xor edx, edx
mov bl, byte [ebp + ecx - 0x218]
div esi
movzx eax, byte [ebp + edx - 0x940]
movzx edx, bl
add eax, edx
add eax, edi
movzx edi, al
mov al, byte [ebp + edi - 0x218]
mov byte [ebp + ecx - 0x218], al
inc ecx
mov byte [ebp + edi - 0x218], bl
cmp ecx, 0x100
jne 0x1443bc4
xor edx, edx
xor esi, esi
xor edi, edi
lea eax, [edi + 1]
mov ebx, 0x42cf00
movzx edi, al
mov al, byte [ebp + edi - 0x218]
mov byte [ebp - 0x9dc], al
lea ecx, [eax + esi]
movzx esi, cl
mov ecx, 0xd2a
movzx eax, word [ebx]
add ebx, 2
test ax, ax
je 0x1443c5f
add ecx, eax
cmp ecx, 0xe70
jbe 0x1443c2a
mov dword [ebp - 0x9e0], edx
call fcn.01451508
or dword [0x428290], 0x30fd9f12
call fcn.01453038
mov edx, dword [ebp - 0x9e0]
mov al, byte [ebp + esi - 0x218]
mov ebx, dword [0x428290]
mov byte [ebp + edi - 0x218], al
mov al, byte [ebp - 0x9dc]
or ebx, 0x63596ea5
add ebx, 0x5d33c44f
mov byte [ebp + esi - 0x218], al
add al, byte [ebp + edi - 0x218]
movzx eax, al
mov dword [0x428290], ebx
mov al, byte [ebp + eax - 0x218]
xor al, byte [ebp + edx - 0x956]
movzx eax, al
mov word [ebp + edx*2 - 0x864], ax
inc edx
cmp edx, 0x16
jne 0x1443c07
mov word [ebp - 0x838], 0
lea edi, [ebp - 0x8d6]
mov esi, 0x42a3db
xor eax, eax
mov ecx, 8
rep movsd dword es:[edi], dword [esi]
lea edi, [ebp - 0x92a]
mov esi, 0x42a3c5
mov ecx, edx
rep movsb byte es:[edi], byte [esi]
mov byte [ebp + eax - 0x118], al
inc eax
cmp eax, 0x100
jne 0x1443ceb
xor edi, edi
xor esi, esi
mov al, byte [ebp + esi - 0x118]
mov ecx, 0x15
xor edx, edx
mov byte [ebp - 0x9dc], al
mov eax, esi
div ecx
movzx eax, byte [ebp + edx - 0x92a]
movzx edx, byte [ebp - 0x9dc]
add eax, edx
add eax, edi
movzx edi, al
mov al, byte [ebp + edi - 0x118]
mov byte [ebp + esi - 0x118], al
mov al, byte [ebp - 0x9dc]
inc esi
mov byte [ebp + edi - 0x118], al
cmp esi, 0x100
jne 0x1443cfe
mov dword [esp + 4], ebx
xor edi, edi
xor esi, esi
xor ebx, ebx
mov dword [esp], 0x42be00
call fcn.01451630
mov eax, dword [0x428290]
add eax, 0xb5ae735
and eax, 0x3fd6ac44
or eax, 0x1956a000
mov dword [0x428290], eax
mov dword [esp + 4], 0x429460
mov dword [esp], eax
call fcn.0144f940
inc ebx
movzx ebx, bl
mov dl, byte [ebp + ebx - 0x118]
lea eax, [edx + esi]
movzx esi, al
xor eax, eax
cmp word [eax + 0x42cf00], 0
je 0x1443dc0
add eax, 2
cmp eax, 0x472c
jne 0x1443da2
sub dword [0x428290], 0x55ccfd8d
mov eax, dword [0x428290]
mov cl, byte [ebp + esi - 0x118]
mov byte [ebp - 0x9dc], dl
xor eax, 0x4f16533a
mov byte [ebp + ebx - 0x118], cl
sub eax, 0x5b95f52c
mov dword [0x428290], eax
call dword [0x42e094]
mov dl, byte [ebp - 0x9dc]
mov ecx, eax
mov byte [ebp + esi - 0x118], dl
add dl, byte [ebp + ebx - 0x118]
or ecx, 0x523392a6
movzx edx, dl
mov dword [0x428290], ecx
lea ecx, [ebp - 0x7d8]
mov dl, byte [ebp + edx - 0x118]
xor dl, byte [ebp + edi - 0x8d6]
movzx edx, dl
mov word [ecx + edi*2], dx
inc edi
cmp edi, 0x20
jne 0x1443d8f
cmp byte [0x429460], 0
mov word [ebp - 0x798], 0
je 0x1443e54
or eax, 0x5a33f6bf
mov dword [0x428290], eax
mov eax, dword [0x428290]
xor esi, esi
add eax, 0x60378a86
and eax, 0xdece8c4a
sub eax, 0x19ce78f1
or eax, 0x2a32e5b7
mov dword [0x428290], eax
call fcn.014523bc
mov eax, dword [0x428290]
and eax, 0x81242
or eax, 0x1240
xor eax, 0x8cfe03dc
mov dword [0x428290], eax
mov dword [esp + 4], 0x429460
mov dword [esp], eax
call fcn.0144f940
lea edx, [ebp - 0x9a8]
lea ecx, [ebp - 0x7d8]
mov dword [ebp - 0x914], edx
lea edx, [ebp - 0x994]
mov dword [ebp - 0x910], edx
lea edx, [ebp - 0x96c]
imul eax, dword [0x428290], 0x5db83fc6
mov dword [ebp - 0x90c], edx
lea edx, [ebp - 0x8f6]
mov dword [ebp - 0x908], edx
lea edx, [ebp - 0x8b6]
mov dword [ebp - 0x904], edx
lea edx, [ebp - 0x864]
mov dword [0x428290], eax
mov dword [ebp - 0x900], edx
mov dword [ebp - 0x8fc], ecx
mov dword [esp + 4], 0x429460
mov dword [esp], eax
call fcn.0144f940
mov eax, dword [0x428290]
add eax, 0x1a7b04ca
and eax, 0x6e01b895
imul eax, eax, 0x2fb8dd37
mov dword [0x428290], eax
mov eax, dword [ebp + esi*4 - 0x914]
mov dword [esp], eax
call fcn.014410e8
mov ebx, eax
test eax, eax
je 0x1443f65
mov eax, dword [0x428290]
mov ebx, 1
or eax, 0x82ba2515
imul eax, eax, 0xdbb8933c
mov dword [0x428290], eax
call fcn.01451708
jmp 0x1443fc2
inc esi
cmp esi, 7
jne 0x1443f2f
mov edx, dword [0x428290]
lea eax, [edx + 0x5179bbdb]
mov dword [0x428290], eax
xor eax, eax
cmp word [eax + 0x42cf00], 0
je 0x1443f9e
add eax, 2
cmp eax, 0x4a82
jne 0x1443f7e
sub edx, 0x6cd0b808
mov dword [0x428290], edx
mov eax, dword [0x428290]
xor eax, 0x58a99f96
and eax, 0x26de73dc
mov dword [0x428290], eax
call dword [0x42e098]
xor eax, 0x1642b9dc
mov dword [0x428290], eax
lea esp, [ebp - 0xc]
mov eax, ebx
pop ebx
pop esi
pop edi
pop ebp
ret