Function at 0x2013ff
Capabilities:
Encode data using xor
Encrypt data using chaskey
Hash data using murmur3

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
push 0x133f
sub esp, 0x70
push fcn.002013ff
xor esi, esi
mov ecx, 0x23
push esi
dec ecx
jne 0x201419
call fcn.002025ce
call fcn.0020228b
push 0
push 0
mov eax, 2
sub eax, dword [0x206a68]
mov ebx, dword [0x206a50]
mov edx, dword [ebx + eax*4]
call fcn.0020516c
push 0
xor eax, eax
call fcn.002034f7
call fcn.002034a8
call fcn.002055e8
lea ebx, [esp + 4]
call fcn.00204b41
mov eax, 1
sub eax, dword [0x206a68]
mov ebx, dword [0x206a50]
mov edx, dword [ebx + eax*4]
call fcn.0020516c
push 0
xor eax, eax
call fcn.002034f7
call fcn.002034a8
call fcn.002055e8
lea ebx, [esp + 4]
call fcn.00204b41
mov eax, 0x80000002
push eax
call fcn.00201087
mov ebx, eax
pop eax
call fcn.00204702
pop eax
call fcn.00204702
mov eax, ebx
call fcn.00205218
lea ebx, [ebp - 0x9c]
call fcn.00205183
push 0
push 0
mov eax, 3
sub eax, dword [0x206a68]
mov ebx, dword [0x206a50]
mov edx, dword [ebx + eax*4]
call fcn.0020516c
push 0
xor eax, eax
call fcn.002034f7
call fcn.002034a8
call fcn.002055e8
lea ebx, [esp + 4]
call fcn.00204b41
mov eax, 1
sub eax, dword [0x206a68]
mov ebx, dword [0x206a50]
mov edx, dword [ebx + eax*4]
call fcn.0020516c
push 0
xor eax, eax
call fcn.002034f7
call fcn.002034a8
call fcn.002055e8
lea ebx, [esp + 4]
call fcn.00204b41
mov eax, 0x80000002
push eax
call fcn.00201087
mov ebx, eax
pop eax
call fcn.00204702
pop eax
call fcn.00204702
mov eax, ebx
call fcn.00205218
lea ebx, [ebp - 0xa0]
call fcn.00205183
push 0
push 0
mov eax, 4
sub eax, dword [0x206a68]
mov ebx, dword [0x206a50]
mov edx, dword [ebx + eax*4]
call fcn.0020516c
push 0
xor eax, eax
call fcn.002034f7
call fcn.002034a8
call fcn.002055e8
lea ebx, [esp + 4]
call fcn.00204b41
mov eax, 1
sub eax, dword [0x206a68]
mov ebx, dword [0x206a50]
mov edx, dword [ebx + eax*4]
call fcn.0020516c
push 0
xor eax, eax
call fcn.002034f7
call fcn.002034a8
call fcn.002055e8
lea ebx, [esp + 4]
call fcn.00204b41
mov eax, 0x80000002
push eax
call fcn.00201087
mov ebx, eax
pop eax
call fcn.00204702
pop eax
call fcn.00204702
mov eax, ebx
call fcn.00205218
lea ebx, [ebp - 0xa4]
call fcn.00205183
push 0
push 0
mov eax, 5
sub eax, dword [0x206a68]
mov ebx, dword [0x206a50]
mov edx, dword [ebx + eax*4]
call fcn.0020516c
push 0
xor eax, eax
call fcn.002034f7
call fcn.002034a8
call fcn.002055e8
lea ebx, [esp + 4]
call fcn.00204b41
mov eax, 1
sub eax, dword [0x206a68]
mov ebx, dword [0x206a50]
mov edx, dword [ebx + eax*4]
call fcn.0020516c
push 0
xor eax, eax
call fcn.002034f7
call fcn.002034a8
call fcn.002055e8
lea ebx, [esp + 4]
call fcn.00204b41
mov eax, 0x80000002
push eax
call fcn.002011c3
mov ebx, eax
pop eax
call fcn.00204702
pop eax
call fcn.00204702
mov eax, ebx
mov dword [ebp - 0xa8], eax
push 0
push 0
mov eax, 6
sub eax, dword [0x206a68]
mov ebx, dword [0x206a50]
mov edx, dword [ebx + eax*4]
call fcn.0020516c
push 0
xor eax, eax
call fcn.002034f7
call fcn.002034a8
call fcn.002055e8
lea ebx, [esp + 4]
call fcn.00204b41
mov eax, 1
sub eax, dword [0x206a68]
mov ebx, dword [0x206a50]
mov edx, dword [ebx + eax*4]
call fcn.0020516c
push 0
xor eax, eax
call fcn.002034f7
call fcn.002034a8
call fcn.002055e8
lea ebx, [esp + 4]
call fcn.00204b41
mov eax, 0x80000002
push eax
call fcn.002011c3
mov ebx, eax
pop eax
call fcn.00204702
pop eax
call fcn.00204702
mov eax, ebx
mov dword [ebp - 0xac], eax
push 0
push 0
mov eax, 7
sub eax, dword [0x206a68]
mov ebx, dword [0x206a50]
mov edx, dword [ebx + eax*4]
call fcn.0020516c
push 0
xor eax, eax
call fcn.002034f7
call fcn.002034a8
call fcn.002055e8
lea ebx, [esp + 4]
call fcn.00204b41
mov eax, 1
sub eax, dword [0x206a68]
mov ebx, dword [0x206a50]
mov edx, dword [ebx + eax*4]
call fcn.0020516c
mov ecx, 1
mov eax, 0x1b
call fcn.00204123
push 0
xor eax, eax
call fcn.002034f7
call fcn.002034a8
call fcn.002055e8
lea ebx, [esp + 4]
call fcn.00204b41
mov eax, 0x80000002
push eax
call fcn.00201087
mov ebx, eax
pop eax
call fcn.00204702
pop eax
call fcn.00204702
mov eax, ebx
call fcn.00205218
lea ebx, [ebp - 0xb0]
call fcn.00205183
push 0
push 0
mov eax, 0xa
sub eax, dword [0x206a68]
mov ebx, dword [0x206a50]
mov edx, dword [ebx + eax*4]
call fcn.0020516c
push 0
xor eax, eax
call fcn.002034f7
call fcn.002034a8
call fcn.002055e8
lea ebx, [esp + 4]
call fcn.00204b41
mov eax, 9
sub eax, dword [0x206a68]
mov ebx, dword [0x206a50]
mov edx, dword [ebx + eax*4]
call fcn.0020516c
push 0
xor eax, eax
call fcn.002034f7
call fcn.002034a8
call fcn.002055e8
lea ebx, [esp + 4]
call fcn.00204b41
mov eax, 0x80000002
push eax
call fcn.00201087
mov ebx, eax
pop eax
call fcn.00204702
pop eax
call fcn.00204702
mov eax, ebx
call fcn.00205218
mov eax, 1
call fcn.002049b3
call fcn.00204ab3
mov dword [ebp - 0xb8], eax
fild dword [0x2070b0]
mov eax, dword [ebp - 0xb8]
call fcn.00204a8c
fcompp
fnstsw ax
sahf
je 0x20188f
fild dword [0x2070e4]
mov eax, dword [ebp - 0xb8]
call fcn.00204a8c
fcompp
fnstsw ax
sahf
jbe 0x201899
mov dword [ebp - 0xb8], 1
mov eax, 8
mov edx, dword [ebp - 0xb0]
call fcn.0020516c
mov dword [ebp - 0x30], eax
call fcn.00205138
cmp eax, dword [ebp - 0x30]
jge 0x201962
push 0
push 0
mov eax, 0xc
sub eax, dword [0x206a68]
mov ebx, dword [0x206a50]
mov edx, dword [ebx + eax*4]
call fcn.0020516c
push 0
xor eax, eax
call fcn.002034f7
call fcn.002034a8
call fcn.002055e8
lea ebx, [esp + 4]
call fcn.00204b41
mov eax, 0xb
sub eax, dword [0x206a68]
mov ebx, dword [0x206a50]
mov edx, dword [ebx + eax*4]
call fcn.0020516c
mov ecx, 1
mov eax, 0x20
call fcn.00204123
push 0
xor eax, eax
call fcn.002034f7
call fcn.002034a8
call fcn.002055e8
lea ebx, [esp + 4]
call fcn.00204b41
mov eax, 0x80000002
push eax
call fcn.00201087
mov ebx, eax
pop eax
call fcn.00204702
pop eax
call fcn.00204702
mov eax, ebx
call fcn.00205218
lea ebx, [ebp - 0xb0]
call fcn.00205183
push 0
push 0
mov eax, 0xd
sub eax, dword [0x206a68]
mov ebx, dword [0x206a50]
mov edx, dword [ebx + eax*4]
call fcn.0020516c
push 0
xor eax, eax
call fcn.002034f7
call fcn.002034a8
call fcn.002055e8
lea ebx, [esp + 4]
call fcn.00204b41
mov eax, 0xb
sub eax, dword [0x206a68]
mov ebx, dword [0x206a50]
mov edx, dword [ebx + eax*4]
call fcn.0020516c
mov ecx, 1
mov eax, 0x20
call fcn.00204123
push 0
xor eax, eax
call fcn.002034f7
call fcn.002034a8
call fcn.002055e8
lea ebx, [esp + 4]
call fcn.00204b41
mov eax, 0x80000002
push eax
call fcn.00201087
mov ebx, eax
pop eax
call fcn.00204702
pop eax
call fcn.00204702
mov eax, ebx
call fcn.00205218
lea ebx, [ebp - 0x104]
call fcn.00205183
push 0
push 0
mov eax, 0xe
sub eax, dword [0x206a68]
mov ebx, dword [0x206a50]
mov edx, dword [ebx + eax*4]
call fcn.0020516c
push 0
xor eax, eax
call fcn.002034f7
call fcn.002034a8
call fcn.002055e8
lea ebx, [esp + 4]
call fcn.00204b41
mov eax, 0xb
sub eax, dword [0x206a68]
mov ebx, dword [0x206a50]
mov edx, dword [ebx + eax*4]
call fcn.0020516c
mov ecx, 1
mov eax, 0x20
call fcn.00204123
push 0
xor eax, eax
call fcn.002034f7
call fcn.002034a8
call fcn.002055e8
lea ebx, [esp + 4]
call fcn.00204b41
mov eax, 0x80000002
push eax
call fcn.002011c3
mov ebx, eax
pop eax
call fcn.00204702
pop eax
fcomp dword [eax - 0x18]
push 0x5800002c
call fcn.00204702
mov eax, ebx
call fcn.00204a8c
call fcn.002048e0
lea ebx, [ebp - 0x108]
call fcn.00205183
push 0
push 0
mov eax, 0xf
sub eax, dword [0x206a68]
test eax, edi
jo 0x201b43
xchg eax, esi
mov eax, 0x1a39a7f2
mov esi, 0x606734b
add esi, 0xd897d28
test edx, esp
jo 0x201a93
or eax, 0x11f8eb5e
call fcn.0020514d
sub eax, 0x1b7541d8
and eax, 0x1fd6df
add eax, eax
mov esi, eax
mov ecx, 0xac4ca9d
shl esi, 0xc
xchg esi, edx
inc eax
rol eax, 0x1d
call fcn.00202f60
dec edx
call fcn.00204aaa
rol eax, 1
shr eax, 9
inc edi
xchg esi, eax
loop 0x201b00
neg edx
mov edx, 0x71d6e22
xor edx, esi
xor edx, 0x281a4387
not edi
mov eax, esp
or esi, 0x1fcb1d7c
mov esi, esi
xor edx, esp
xor eax, esi
rol eax, 0xd
mov eax, eax
mov ebx, eax
test ecx, edx
jo 0x201b89
mov ebx, edx
call fcn.00203b55
xor esi, ebx
shl esi, 5
add esi, eax
xor esi, eax
mov ecx, 0xfe59f04
inc eax
dec esi
rol eax, 0xb
inc eax
xor edx, dword [0x20622c]
shr esi, 0x16
xchg edx, edx
shr esi, 0xd
mov edx, dword [0x206050]
xchg eax, eax
neg esi
xchg esi, edx
loop 0x201b5e
test eax, esi
jb 0x201b32
xchg esi, esi
rol esi, 0xc
shl esi, 0x14
or esi, edi
mov eax, 0x44738ec
sub eax, esp
xor eax, ecx
mov ecx, 0x10e4271a
call fcn.00203b55
not edx
or edi, dword [0x206356]
call fcn.00202f6e
rol esi, 0xd
shl eax, 5
sub edi, dword [0x20673d]
xchg edi, eax
shl edx, 0x1c
call fcn.002012cb
loop 0x201b9c
add esi, 0x30a1b01e
dec esi
xchg eax, esi
sub ecx, esp
xor esi, 0x1afde70
sub dword [0x206668], ecx
xor ebx, eax
dec eax
xor edx, ebp
sub edx, esp
dec ebx
ror eax, 0x1d
shr edi, 6
xor esi, eax
dec ebx
sub edx, esp
mov edi, 0x118
mov dword [0x207640], 0x2a0fd990
dec esi
or dword [0x207544], 0x1dce866a
inc esi
sub edx, dword [0x207f0e]
or dword [0x20746f], 0xe5ba24b
inc eax
sub esi, dword [0x207b9c]
ror ecx, 0x1b
xor ebx, esp
xor esi, eax
rol esi, 0xf
sub eax, edx
xor esi, eax
not eax
add edi, edx
sub ebx, dword [0x207a4b]
sub edi, edx
not eax
xor esi, eax
add eax, edx
ror esi, 0xf
xor esi, eax
xor ebx, esp
rol ecx, 0x1b
dec eax
mov dword [0x2077d2], 0x2b1a3da
dec esi
inc esi
mov dword [0x207330], 0x75b866c
call 0x201c68
rol esi, 0x1e
add esi, eax
rol eax, 5
inc esi
rol esi, 4
sub dword [0x2074a9], 0xbd53d2b
add ecx, dword [0x2079e4]
add eax, ebp
sub edx, eax
sub edi, dword [0x207c8b]
neg esi
and dword [0x2075ea], 0x11bcc047
sub ecx, dword [0x207b7b]
xor ebx, esi
xor ecx, esp
xchg esi, eax
sub esi, esp
add esi, esp
xchg esi, eax
xor ecx, esp
xor ebx, esi
sub dword [0x2076b8], 0x401ca0
neg esi
add edx, eax
sub eax, ebp
mov dword [0x2072d0], 0x19cd3c0
ror esi, 4
dec esi
ror eax, 5
sub esi, eax
ror esi, 0x1e
pop eax
sub dword [0x2072b3], ebx
not esi
xchg esi, edx
or dword [0x2075c8], edi
rol esi, 2
xor edx, edi
ror eax, 0x1e
sub dword [0x207640], 0x278e25d2
or dword [0x20715a], esi
add ecx, dword [0x207d2d]
inc eax
rol eax, 0x15
neg esi
dec esi
xor esi, eax
xor esi, dword [0x207a55]
sub edx, esp
rol edx, 0x18
ror edx, 0x18
add edx, esp
xor esi, eax
inc esi
neg esi
ror eax, 0x15
dec eax
mov dword [0x2071c6], edi
mov dword [0x207404], 0x168b8850
rol eax, 0x1e
xor edx, edi
ror esi, 2
mov dword [0x2074a0], ebx
xchg esi, edx
not esi
add eax, 0x3b3
xchg eax, edx
xor ebx, dword [0x207eae]
mov dword [0x207194], ecx
xor ecx, dword [0x207fdd]
add edx, dword [0x207ee4]
xchg eax, eax
neg esi
xor dword [0x207628], 0xaf23bf1
dec esi
xor ecx, edi
ror eax, 9
xor ecx, dword [0x207d64]
rol eax, 9
xor ecx, edi
inc esi
mov dword [0x207544], 0x21948b6e
neg esi
xchg eax, eax
mov dword [0x2077f8], edi
xchg eax, edx
not dword [eax]
sub eax, ebp
xor edx, dword [0x207fa4]
xor edi, esp
neg eax
ror ecx, 0x1a
add esi, 0x3f1e6d44
sub ecx, dword [0x207fd4]
xor esi, 0xf13f2ea
inc esi
xchg eax, edx
neg edi
rol eax, 9
not esi
xor esi, eax
neg eax
rol esi, 0x12
sub esi, dword [0x207a10]
inc eax
neg eax
xor edi, dword [0x2078de]
dec esi
inc esi
neg eax
dec eax
ror esi, 0x12
neg eax
xor esi, eax
not esi
ror eax, 9
neg edi
xchg eax, edx
dec esi
xor esi, 0xf13f2ea
sub esi, 0x3f1e6d44
rol ecx, 0x1a
neg eax
xor edi, esp
add eax, ebp
add dword [eax], 0x6df675a4
xor ecx, eax
sub esi, dword [0x207884]
ror esi, 0x1a
dec esi
sub edi, dword [0x207f10]
ror edx, 0xe
sub ecx, esi
ror edx, 8
xor dword [0x2076ac], ebx
sub esi, edx
add esi, edx
or dword [0x207482], ecx
rol edx, 8
add ecx, esi
rol edx, 0xe
inc esi
rol esi, 0x1a
xor ecx, eax
not dword [eax]
xor edi, esp
not esi
xor ecx, ebx
xchg eax, eax
or dword [0x20754e], ecx
rol esi, 0x18
xchg esi, eax
xor esi, dword [0x207905]
mov dword [0x207610], ecx
xor esi, 0x1589efe0
sub ecx, dword [0x207b16]
sub ecx, 0x18e79010
xor esi, 0x2620df34
xor eax, ebp
sub eax, 0x24d316e
xor esi, 0x11ce22a9
inc ebx
rol esi, 7
ror esi, 7
dec ebx
xor esi, 0x11ce22a9
add eax, 0x24d316e
xor eax, ebp
xor esi, 0x2620df34
add ecx, 0x18e79010
xor esi, 0x1589efe0
mov dword [0x2071c5], esi
xchg esi, eax
ror esi, 0x18
mov dword [0x2075d8], ecx
xchg eax, eax
xor ecx, ebx
not esi
xor edi, esp
xor dword [eax], 0x6df675a4
inc esi
ror ebx, 0x1f
xor eax, 0x179e779f
sub ecx, dword [0x207aa3]
mov dword [0x207810], 0x8078848
xchg esi, edx
rol eax, 0x1d
sub esi, 0xca0ed5c
xor edx, ebx
xor edx, esi
xor edx, esi
xor edx, ebx
add esi, 0xca0ed5c
ror eax, 0x1d
xchg esi, edx
xor dword [0x2073c8], 0x9568348
xor eax, 0x179e779f
rol ebx, 0x1f
dec esi
add dword [eax], 0x6df675a4
xchg esi, esi
neg esi
xor esi, edx
xor ebx, dword [0x207ea8]
add ecx, dword [0x207b43]
not esi
dec eax
xor ebx, edx
dec esi
xor eax, esi
dec esi
xor ecx, dword [0x20794c]
add edi, ecx
mov dword [0x20746c], edx
neg eax
sub esi, 0x107d5e8
xor esi, dword [0x207f98]
sub eax, esp
or dword [0x20784b], edx
xor esi, edi
mov dword [0x207724], ecx
xor esi, edi
mov dword [0x2074f0], edi
add eax, esp
add esi, 0x107d5e8
neg eax
mov dword [0x20724c], esi
sub edi, ecx
inc esi
xor eax, esi
inc esi
xor ebx, edx
inc eax
not esi
xor esi, edx
neg esi
xchg esi, esi
add eax, 4
xor eax, esi
sub ecx, dword [0x207c9c]
add esi, dword [0x207a04]
xor eax, ebp
xor esi, 0x45e340
xor ebx, esp
sub esi, dword [0x2079fe]
rol esi, 0xf
not esi
add esi, 0x2436a0c
xor esi, eax
add eax, esi
sub ecx, dword [0x207a1c]
mov dword [0x207268], 0x15e9ec3c
xor esi, 0x9cc4980
sub ecx, dword [0x207f8f]
xor esi, 0x9cc4980
xor dword [0x207449], 0x43df88
sub eax, esi
xor esi, eax
sub esi, 0x2436a0c
not esi
ror esi, 0xf
xor ebx, esp
xor esi, 0x45e340
xor eax, ebp
xor eax, esi
sub edi, 4
jne 0x201d4f
invalid
rdpmc
fadd qword [ecx + 0x45e340f6]
add byte [ebx], dh
lds esi, [ebx]
mov byte [ebx - 0x7af0fb11], 0x34
std
invalid
mov al, byte [0x9c6d707c]
jne 0x201fb8
in al, 0x89
aas
or edi, esp
and al, 0xc6
fisubr word [esi + 0x78f75958]
salc
add byte [ebp + 0x73], 0xaa
cwde
inc ebx
int 0x71
aaa
adc dword [ebp + 0x7c41f0e8], edi
mov ah, 0x25
pushal
popfd
lcall 0xf759, 0x9ae5710
insb byte es:[edi], dx
salc
cwde
adc edi, esp
sbb bl, ah
aad 0x3f
sbb al, 0xf3
jl 0x202005
aad 0x8b
dec ebp
popfd
sahf
pop ecx
and al, 0x74
mov gs, word [eax + 0x5940e724]
insb byte es:[edi], dx
cmp bh, byte [edi]
cmc
rcr byte [ebp - 0x5b], 0xd7
insb byte es:[edi], dx
sub ebp, dword [esi + edx]
fcomp dword [edx - 0x28aa988f]
out 0xce, eax
fmul dword [eax - 0x370aa6f4]
jae 0x2020a3
add esp, edi
pop eax
cdq
fidiv word [eax + ecx*2 + 0x70e776f3]
pop ecx
insb byte es:[edi], dx
sub al, 0xd7
scasb al, byte es:[edi]
dec ecx
enter 0xffffffffffff8905, 0xc
mov ch, 6
mov dword [0x95153c6a], eax
out dx, eax
out 0x5e, eax
stc
ffreep st(1)
cld
rcl byte [edi], 0x9c
sar esp, 0xc0
pop ss
pushfd
jne 0x202128
ror byte [edi], cl
aas
xchg ebp, eax
stc
add al, 0x19
insd dword es:[edi], dx
inc ebx
sbb dword [ebp + 0x43], ebp
imul esi, dword [edx + 0x20], 0xffffff95
xchg ebp, eax
in al, dx
jae 0x2020b0
insd dword es:[edi], dx
lds esi, [eax + 0x3c04fd9e]
jbe 0x2020c1
pushfd
jb 0x2020e6
std
lodsb al, byte [esi]
and al, 0xa6
sub eax, 0x5a634ac
xchg byte [ebp + 0x15], ah
lea esp, [ebx + 0x69ff4d8b]
std
movsb byte es:[edi], byte [esi]
rol esp, 1
idiv byte [ebp + 0x67]
pushfd
push edx
in al, 0x8a
mul ch
mov ebx, 0x18c84afc
adc al, 0xf5
jae 0x2020d9
mov ah, 0x7e
popal
mov dword [0x90d8de22], eax
cld
add eax, 0xf50afe98
jae 0x202106
jne 0x20217e
imul edi, dword [edx + 0x35677e09], 0x396a959c
xor eax, 0x396a959c
fldcw word [edi + edi*8 + 0x3df5fcdc]
pushfd
jne 0x2020b6
fdiv st(4), st(0)
cmc
cmp eax, 0xffa0759c
pushfd
std
invalid
call [ebp + edi*8 - 0x70503673]
cmc
jae 0x20210f
sbb eax, 0x1dba6d7c
lea eax, [0xa1a8c9e]
mov dword [0xc5a6f38b], eax
mov word [edx], ds
or ah, byte [ebx - 0x3a590c75]
lcall 0xffff, 0xffc35b7f
call fcn.00205183
jmp 0x20226a
test dword [edx], ebx
add byte [eax], al
add byte [edx + 0x206e28], bh
call fcn.00205200
lea ebx, [ebp - 0x98]
call fcn.00205183
jmp 0x20226a
mov eax, dword [ebp - 0x98]
lea esp, [ebp - 0xc]
pop edi
pop esi
pop ebx
pop ebp
ret 4