Function at 0x7ffd30
Capabilities:
Encode data using xor

Disassembly:
mov dword [edx - 8], edi
mov edi, dword [ecx - 4]
mov dword [ecx - 4], eax
mov eax, dword [edx]
push esi
jmp 0x80c5b9
mov dword [ecx - 8], eax
push ecx
mov ecx, edx
lea ecx, [ecx - 4]
mov eax, dword [ecx]
pop ecx
jmp 0x7cf1d6
cmp eax, 1
jle 0x80c4ba
lea ecx, [eax - 1]
mov dword [ebp - 4], ecx
jmp 0x80c050
mov eax, dword [edx - 8]
mov edi, dword [ecx - 8]
add dword [ebp - 4], 4
jmp 0x7cf1f2
call fcn.007cfa5e
lea esp, [esp + 4]
jmp 0x7cfaa0
mov eax, dword [esp + 4]
push edi
mov edi, ecx
test eax, eax
je 0x80c4f6
jmp 0x80c595
jmp 0x7cfa89
mov ecx, 0xff
movzx ebx, byte [esi + 0x11]
mov ebx, dword [ebx*4 + 0x7d9890]
add esi, 0x10
push eax
mov eax, esi
mov edx, dword [eax]
pop eax
mov edi, edx
push si
mov word [esp], ax
mov word [esp], sp
pushfd
mov byte [esp + 1], dh
lea esp, [esp + 2]
shr edi, 0x18
push bp
mov word [esp], di
push esp
push esp
push si
push word [esp + 0xb]
pop dword [esp + 4]
lea esp, [esp + 2]
lea esp, [esp + 0xc]
mov edi, dword [edi*4 + 0x7d9890]
and edi, ecx
mov edi, dword [edi*4 + 0x7d9c90]
and ebx, ecx
xor edi, dword [ebx*4 + 0x7da490]
movzx ebx, byte [esi + 2]
mov ebx, dword [ebx*4 + 0x7d9890]
and ebx, ecx
xor edi, dword [ebx*4 + 0x7da090]
movzx ebx, byte [esi + 5]
and edx, ecx
push ecx
mov ecx, edx
lea ecx, [ecx*4]
lea ecx, [ecx + 0x7d9890]
mov edx, dword [ecx]
pop ecx
and edx, ecx
xor edi, dword [edx*4 + 0x7da890]
mov edx, dword [esi + 4]
mov dword [esi], edi
push ecx
pushal
mov dx, 0x40e2
xchg ch, cl
mov cl, byte [esp]
setp al
mov ch, byte [esp]
xchg si, di
setb dh
mov dword [esp + 0x18], ebx
push cx
mov byte [esp], dl
mov byte [esp], al
lea esp, [esp + 2]
popal
lea ecx, [ecx*4]
lea ecx, [ecx + 0x7d9890]
mov ebx, dword [ecx]
pop ecx
mov edi, edx
shr edi, 0x18
mov edi, dword [edi*4 + 0x7d9890]
and edi, ecx
push eax
mov eax, edi
lea eax, [eax*4]
lea eax, [eax + 0x7d9c90]
mov edi, dword [eax]
pop eax
and ebx, ecx
xor edi, dword [ebx*4 + 0x7da490]
movzx ebx, byte [esi + 6]
mov ebx, dword [ebx*4 + 0x7d9890]
and ebx, ecx
xor edi, dword [ebx*4 + 0x7da090]
movzx ebx, byte [esi + 9]
and edx, ecx
mov edx, dword [edx*4 + 0x7d9890]
clc
clc
sub esp, 0x17
lea esp, [esp + 3]
and edx, ecx
push eax
push dword [esp + 2]
pushal
lea esp, [esp + 0x1d]
mov dword [esp + 1], ebp
mov word [esp + 6], bx
lea esp, [esp + 3]
lea esp, [esp + 0x1c]
xor edi, dword [edx*4 + 0x7da890]
push edi
pushal
lea eax, [eax + 0x36fc]
mov bx, word [esp]
not cx
xchg di, ax
bswap edx
mov dword [esp], esi
pushal
push word [esp + 2]
push dword [esp + 0x17]
mov word [esp + 0x21], ax
lea esp, [esp + 2]
lea esp, [esp + 0x24]
popal
lea edi, [edi + 8]
mov edx, dword [edi]
pop edi
mov dword [esi + 4], edi
push ecx
pushal
mov ax, word [esp]
xchg si, ax
xchg esi, edx
xchg dh, cl
mov dword [esp + 0x18], ebx
pushfd
push dword [esp + 3]
pop dword [esp]
lea esp, [esp + 4]
popal
lea ecx, [ecx*4]
lea ecx, [ecx + 0x7d9890]
mov ebx, dword [ecx]
pop ecx
pushal
lea ebx, [ecx - 0xaa]
lea ebx, [eax + ecx]
mov edi, ebp
mov dword [esp], edx
pushal
lea esp, [esp + 9]
mov dword [esp + 0x10], esi
pop word [esp + 7]
mov dword [esp + 1], ebx
lea esp, [esp + 1]
lea esp, [esp + 0x14]
popal
pushfd
mov dword [esp], esi
pushal
push word [esp + 0x1b]
mov word [esp + 0x12], dx
push ebp
push word [esp + 3]
lea esp, [esp + 7]
lea esp, [esp + 1]
shr edi, 0x18
push dx
lea esp, [esp + 2]
lea esp, [esp + 0x24]
mov edi, dword [edi*4 + 0x7d9890]
and edi, ecx
push esi
pushal
mov ax, 0x664f
mov dword [esp + 4], edi
push esp
mov dword [esp], ebp
mov byte [esp + 2], cl
push dword [esp]
lea esp, [esp + 8]
popal
lea esi, [esi*4]
lea esi, [esi + 0x7d9c90]
mov edi, dword [esi]
pop esi
and ebx, ecx
xor edi, dword [ebx*4 + 0x7da490]
movzx ebx, byte [esi + 0xa]
mov ebx, dword [ebx*4 + 0x7d9890]
and ebx, ecx
xor edi, dword [ebx*4 + 0x7da090]
movzx ebx, byte [esi + 0xd]
and edx, ecx
mov edx, dword [edx*4 + 0x7d9890]
and edx, ecx
xor edi, dword [edx*4 + 0x7da890]
mov edx, dword [esi + 0xc]
push ecx
mov ecx, esi
lea ecx, [ecx + 8]
mov dword [ecx], edi
pop ecx
mov ebx, dword [ebx*4 + 0x7d9890]
mov edi, edx
shr edi, 0x18
mov edi, dword [edi*4 + 0x7d9890]
and edi, ecx
mov edi, dword [edi*4 + 0x7d9c90]
cmc
cmc
stc
clc
sub esp, 2
mov byte [esp], bh
mov byte [esp], dh
stc
lea esp, [esp + 2]
and ebx, ecx
push di
pushal
mov word [esp + 0x13], dx
pop dword [esp + 0x10]
mov dword [esp + 0x13], edi
mov word [esp + 4], bx
pop dword [esp + 5]
lea esp, [esp + 2]
lea esp, [esp + 0x18]
xor edi, dword [ebx*4 + 0x7da490]
movzx ebx, byte [esi + 0xe]
mov ebx, dword [ebx*4 + 0x7d9890]
sub esp, 0xd
push esi
push word [esp + 8]
lea esp, [esp + 9]
lea esp, [esp + 2]
and edx, ecx
push si
lea esp, [esp]
pushal
pop dword [esp + 0x17]
push ax
mov dword [esp + 0xf], ebx
push dword [esp + 0x1a]
mov dword [esp + 0xc], edx
lea esp, [esp + 0x2c]
mov edx, dword [edx*4 + 0x7d9890]
and ebx, ecx
xor edi, dword [ebx*4 + 0x7da090]
and edx, ecx
pushfd
mov byte [esp + 2], ch
pop word [esp]
lea esp, [esp + 1]
mov byte [esp], ch
lea esp, [esp]
lea esp, [esp]
lea esp, [esp + 1]
xor edi, dword [edx*4 + 0x7da890]
dec dword [ebp - 4]
mov dword [esi + 0xc], edi
jne 0x80c056
je 0x4780c4ba
push dword [esp + 0x12]
push word [esp + 0x16]
lea esp, [esp + 0x2c]
test eax, eax
jge 0x80c449
or eax, 0xffffffff
ret
ret
jle 0x80c41c
mov eax, 0xdb000000
jmp 0x80c41c
lea edi, [edx + esi]
mov edi, 0x5a4150c3
mov edi, dword [esp]
bswap di
mov edi, dword [esp]
push cx
mov word [esp], si
push word [esp + 1]
pop word [esp]
pushal
push ebx
lea esp, [esp + 6]
pop dword [esp + 2]
lea esp, [esp + 0x20]
pop esi
pop ebx
leave
ret
dec dword [esp + 8]
mov al, byte [edx]
mov byte [ecx], al
mov eax, dword [esp + 8]
inc ecx
inc edx
test eax, eax
jne 0x80c595
je 0x80c4f6
xor eax, 0xbc4d2ab4
fadd qword [0x2e1ebf42]
mov esi, edx
mov esi, edx
lea esi, [esi - 4]
mov dword [esi], edi
pop esi
mov edi, dword [ecx]
mov dword [ecx], eax
push ebx
mov ebx, edx
lea ebx, [ebx + 4]
mov eax, dword [ebx]
pop ebx
mov dword [edx], edi
mov edi, dword [ecx + 4]
push edx
mov edx, ecx
lea edx, [edx + 4]
mov dword [edx], eax
pop edx
mov dword [edx + 4], edi
sub ebx, 4
add ecx, 0x10
sub edx, 0x10
cmp dword [ebp - 4], ebx
jl 0x7cf273
mov eax, dword [ebp - 8]
jmp 0x7cf20f