Function at 0x999c354
Capabilities:
Encode data using xor

Disassembly:
dec ecx
shr esi, cl
ror eax, 3
neg byte [esp + edx + 2]
sete bl
dec eax
sub ebp, 0x6bbd5a4
xor eax, 0x66a127a4
dec esp
lea ecx, [ecx*8 + 0x6e33100f]
sal bl, 0x45
ror ebp, 0x7e
dec esp
mov dword [esp + edx], edi
inc esp
bts ecx, esi
xor dword [esp + edx*8], eax
inc esp
movsx ebx, cx
inc esp
movsx edi, bh
inc ebp
xchg ecx, edx
inc ecx
pop edi
dec ecx
sal edx, 0xf4
jne 0x997eb7d
mov ecx, 0x4f1fa123
imul ecx, ecx
movzx eax, cx
lea edi, [edi + ecx - 0x5e70acd]
movzx edx, cx
imul ecx
bt eax, eax
mov edx, dword [edi + ecx*4 - 0x179c2b24]
shr al, 0xa2
xor edx, ebx
cbw
call fcn.09430543
mov ss, ebx
add dl, byte [ecx + edx*4]
invalid
mov edx, dword [edi + eax*2 - 0x5895ca4a]
sar ecx, 0xda
dec eax
xor edx, ebx
and cx, cx
sal al, 0xa7
sar al, 0xc1
rol edx, 3
not edx
dec edx
cbw
neg ecx
xor edx, 0xdd1cb99c
dec edx
neg ecx
ror cl, 0xe1
sbb al, cl
xor ebx, edx
add esi, edx
movsx edx, cx
movzx cx, byte [ebp + eax*2 - 0x58940114]
btr edx, eax
sar al, 0x22
mov al, byte [ebp + eax*2 - 0x589401c2]
adc ebp, 1
ror dl, 0x83
bswap edx
jae 0x94633cd
add cl, al
movzx eax, dl
rol edx, 0xde
mov word [ebp + eax*4 - 0x3fc], cx
mov ecx, edx
btc edx, 0x13
jmp esi
dec eax
arpl ax, ax
dec esp
add eax, eax
inc cx
ror ebx, 0x81
inc cx
or edi, ecx
dec ebp
imul ecx, edx
jb fcn.0947c99b
out 0x18, eax
inc edx
into
invalid
inc ecx
mov edi, 0xfd8e8e15
inc cx
sar edi, 0x2a
inc esp
xor dword [esp + edx], ebx
dec esp
xor esi, edx
dec eax
rol eax, 0x16
inc bp
and edx, esi
inc ecx
pop edi
btr bp, 7
inc eax
movsx esi, ch
jb 0x9989405
dec ebp
lea ebp, [ebp + edx - 4]
dec eax
ror eax, 0x93
ror dx, 0xeb
inc cx
add edx, 0x8946bd85
sbb al, 0x2a
inc ecx
movsx ebx, dl
dec ecx
not edx
dec eax
rol edx, cl
inc ecx
mov eax, dword [esp + edx]
inc eax
movzx edi, dh
inc ecx
not cl
dec ebp
lea esp, [esp + edx*8 + 4]
dec eax
bt ebx, 0x38
dec eax
dec ebx
inc ecx
setns dh
inc ecx
xor eax, edi
dec ecx
not edx
xor eax, 0x6c390131
inc esp
add esi, ecx
inc bp
xchg edx, ecx
dec ebp
sbb ecx, edx
not eax
push ecx
jae 0x943fe77
mov eax, 0xb12b9495
mov ecx, eax
xchg cx, ax
sub edi, 4
mov edx, ecx
shr eax, 0xc2
jae 0x9472169
dec esi
lea esp, [edx - 0x319a80fc]
dec ebp
xor ebx, edi
dec eax
xor edx, 0xafa67d36
dec ecx
ror ebx, 6
neg cl
add ecx, ecx
inc esp
movzx edx, cx
dec ecx
inc ebx
dec ecx
bswap ebx
dec eax
imul ecx, edx
movzx ebx, dl
dec ecx
inc ebx
dec ebp
xor edi, ebx
imul bx
inc ebp
movzx esi, dx
inc sp
sub edx, eax
dec ebp
lea ebp, [ebp + edx + 0x61c30011]
dec eax
sal edx, 0xef
dec edi
lea esp, [esp + ebx*2 - 0x1b7f83a6]
inc ecx
xor eax, edi
btr ecx, 0x91
neg eax
dec eax
mov dword [esp + edi - 0x55248412], esi
inc edx
sal byte [esp + ebx - 0xdbfc1cf], 0xe1
not eax
inc ecx
shl esi, 0x81
call fcn.0947ffcb
inc ebp
mov esi, dword [ebp]
mov ecx, 0xe614aa07
inc esp
mov edx, ecx
call fcn.0998930c
inc ecx
mov ebx, 0x3c2d8718
inc ecx
movzx edx, bl
inc esp
movsx edx, dl
inc edi
mov ebx, dword [ebx - 0x3c2d8718]
inc ebp
movsx esi, dx
movsx ecx, dx
dec edx
lea eax, [edx*2 + 0x229a2d29]
dec ebp
lea esp, [esp + edx*2 - 0x2c]
dec eax
bswap edx
dec edx
lea ebp, [esi*4 - 0x68719dee]
dec eax
cwde
inc ebp
xor ebx, edi
inc ecx
ror ebx, 1
push eax
inc ecx
dec ebx
inc ecx
neg ebx
inc edi
lea ebx, [ebx + edx*4 + 0x6928684b]
dec esi
lea ecx, [eax + esi*8 + 0x7e9ee4a1]
dec eax
cdq
inc ecx
xor ebx, 0x79b7c5ac
sal dword [esp + edx*2], 0x4a
add cl, dh
dec eax
mul eax
dec esp
mov dword [esp + edx], edi
jae 0x9985046