Function at 0x100721c0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100aebe3
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x6d8
mov eax, dword [0x100d0cc0]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, ecx
mov dword [ebp - 0x6bc], eax
mov ecx, dword [ebx + 8]
mov esi, eax
movups xmm0, xmmword [ebx + 0x14]
mov edx, dword [ebx + 0xc]
lea eax, [ebp - 0x5c]
mov dword [ebp - 0x6b0], ecx
mov ecx, dword [ebx + 0x10]
mov dword [ebp - 0x6c0], ecx
movups xmmword [ebp - 0x6e8], xmm0
mov dword [ebp - 0x6c8], edx
push dword [ecx]
movups xmmword [ebp - 0x98], xmm0
push edx
movups xmm0, xmmword [ebx + 0x24]
sub esp, 0x600
mov ecx, 0x180
mov edi, esp
rep movsd dword es:[edi], dword [esi]
push eax
movups xmmword [ebp - 0x6d8], xmm0
movups xmmword [ebp - 0x88], xmm0
call fcn.10071650
add esp, 0x60c
cmp dword [ebp - 0x4c], 0x3e8
mov dword [ebp - 4], 0
jbe 0x10072287
mov byte [ebp - 0x6a9], 0
jmp 0x10072596
mov esi, dword [ebp - 0x6bc]
cmp dword [esi + 0x1d0], 0
je 0x100723a2
push 1
xorps xmm0, xmm0
mov dword [ebp - 0x64], 0
push 0x100ba868
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x60], 0
movups xmmword [ebp - 0x74], xmm0
call fcn.10012050
mov edx, dword [esi + 0x1d0]
xorps xmm0, xmm0
mov ecx, edx
mov byte [ebp - 4], 1
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
lea edi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x100722e2
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x2c]
call fcn.10012050
lea eax, [ebp - 0x74]
mov byte [ebp - 4], 2
push eax
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.10076310
mov ecx, dword [ebp - 0x18]
add esp, 0xc
mov byte [ebp - 4], 1
cmp ecx, 7
jbe 0x10072351
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10072347
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10072aed
push ecx
push edx
call fcn.1009a42f
add esp, 8
mov ecx, dword [ebp - 0x60]
xor eax, eax
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 7
mov word [ebp - 0x2c], ax
mov byte [ebp - 4], al
cmp ecx, 7
jbe 0x100723a2
mov edx, dword [ebp - 0x74]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10072398
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10072aed
push ecx
push edx
call fcn.1009a42f
add esp, 8
push 1
sub esp, 0x18
lea edi, [ebp - 0x6a8]
mov ecx, 0x180
lea eax, [ebp - 0x5c]
rep movsd dword es:[edi], dword [esi]
mov ecx, esp
push eax
call fcn.10012740
push dword [ebp - 0x6c0]
mov ecx, 0x180
lea esi, [ebp - 0x6a8]
push dword [ebp - 0x6c8]
sub esp, 0x600
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10071880
mov eax, dword [ebp - 0x6c0]
add esp, 0x624
movups xmm0, xmmword [ebp - 0x6e8]
push dword [eax]
push dword [ebp - 0x6b0]
sub esp, 0x20
mov eax, esp
movups xmmword [eax], xmm0
movups xmm0, xmmword [ebp - 0x6d8]
movups xmmword [eax + 0x10], xmm0
call fcn.10005040
xorps xmm0, xmm0
mov dword [ebp - 0x34], 0
xor eax, eax
mov dword [ebp - 0x30], 7
movups xmmword [ebp - 0x44], xmm0
add esp, 0x28
mov word [ebp - 0x44], ax
mov eax, dword [ebp - 0x4c]
lea edi, [ebp - 0x5c]
cmp dword [ebp - 0x48], 7
mov edx, 0x811c9dc5
mov byte [ebp - 4], 3
cmova edi, dword [ebp - 0x5c]
xor ecx, ecx
lea esi, [eax + eax]
test esi, esi
je 0x10072467
movzx eax, byte [ecx + edi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, esi
jb 0x10072456
push edx
lea eax, [ebp - 0x5c]
mov ecx, 0x10c4a3a4
push eax
lea eax, [ebp - 0x6b8]
push eax
call fcn.10012400
mov eax, dword [eax + 4]
test eax, eax
je 0x100724ff
cmp eax, dword [0x10c4a3a8]
je 0x100724ff
cmp dword [ebp - 0x48], 7
lea edi, [ebp - 0x5c]
mov edx, 0x811c9dc5
cmova edi, dword [ebp - 0x5c]
xor ecx, ecx
test esi, esi
je 0x100724b3
movzx eax, byte [ecx + edi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, esi
jb 0x100724a2
push edx
lea eax, [ebp - 0x5c]
mov ecx, 0x10c4a3a4
push eax
lea eax, [ebp - 0x6b8]
push eax
call fcn.10012400
mov eax, dword [ebp - 0x6b4]
test eax, eax
je 0x10072af2
add eax, 0x20
lea ecx, [ebp - 0x44]
cmp ecx, eax
je 0x10072620
cmp dword [eax + 0x14], 7
mov ecx, dword [eax + 0x10]
jbe 0x100724f0
mov eax, dword [eax]
push ecx
push eax
lea ecx, [ebp - 0x44]
call fcn.1002bf30
jmp 0x10072620
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x98]
push eax
mov eax, dword [0x100d4b14]
push dword [eax + 0x140]
call fcn.10072050
add esp, 0xc
test al, al
je 0x10072587
mov edx, dword [0x100d4b14]
add edx, 0x158
mov ecx, edx
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10072532
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x44]
call fcn.1002bf30
mov esi, dword [ebp - 0x34]
test esi, esi
je 0x10072587
cmp dword [ebp - 0x48], 7
lea edx, [ebp - 0x5c]
lea edi, [ebp - 0x44]
cmova edx, dword [ebp - 0x5c]
cmp dword [ebp - 0x30], 7
cmova edi, dword [ebp - 0x44]
cmp esi, dword [ebp - 0x4c]
jne 0x100725d3
test esi, esi
je 0x10072587
sub edi, edx
movzx ecx, word [edx + edi]
movzx eax, word [edx]
cmp cx, ax
jne 0x100725d3
add edx, 2
sub esi, 1
jne 0x10072573
mov byte [ebp - 0x6a9], 0
lea ecx, [ebp - 0x44]
call fcn.10003860
mov ecx, dword [ebp - 0x48]
cmp ecx, 7
jbe 0x10072ac7
mov edx, dword [ebp - 0x5c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10072abd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10072afc
jmp 0x10072abd
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0xa8]
call fcn.10012740
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 4
push eax
lea ecx, [ebp - 0x90]
call fcn.10012740
lea eax, [ebp - 0xa8]
mov byte [ebp - 4], 5
push eax
lea eax, [ebp - 0x6b8]
mov ecx, 0x10c4a3a4
push eax
call fcn.100706b0
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 3
call fcn.10070ad0
mov edx, dword [ebp - 0x6bc]
mov eax, dword [edx + 0x1d0]
test eax, eax
je 0x100726e1
push eax
lea ecx, [ebp - 0x74]
call fcn.100033f0
push 1
xorps xmm0, xmm0
mov byte [ebp - 4], 6
push 0x100ba868
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x18], 0
call fcn.10012050
lea eax, [ebp - 0x74]
mov byte [ebp - 4], 7
push eax
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x44]
push eax
call fcn.10076310
mov ecx, dword [ebp - 0x18]
add esp, 0xc
mov byte [ebp - 4], 6
cmp ecx, 7
jbe 0x100726bb
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x100726b1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10072b01
push ecx
push edx
call fcn.1009a42f
add esp, 8
xor eax, eax
mov dword [ebp - 0x1c], 0
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x18], 7
mov word [ebp - 0x2c], ax
mov byte [ebp - 4], 3
call fcn.10003860
mov edx, dword [ebp - 0x6bc]
mov eax, dword [0x100d4b14]
mov eax, dword [eax + 0x144]
sub eax, 0
je 0x10072733
sub eax, 1
je 0x10072721
sub eax, 1
jne 0x10072733
sub esp, 0x600
lea eax, [ebp - 0x44]
mov edi, esp
mov esi, edx
mov ecx, 0x180
rep movsd dword es:[edi], dword [esi]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.10071d40
add esp, 0x608
jmp 0x1007273f
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.10071360
add esp, 8
jmp 0x1007273f
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x2c]
call fcn.10012740
mov ecx, dword [ebp - 0x30]
cmp ecx, 7
jbe 0x10072779
mov edx, dword [ebp - 0x44]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1007276f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10072b06
push ecx
push edx
call fcn.1009a42f
add esp, 8
movups xmm0, xmmword [ebp - 0x2c]
xor eax, eax
lea ecx, [ebp - 0x2c]
mov word [ebp - 0x2c], ax
movups xmmword [ebp - 0x44], xmm0
movq xmm0, qword [ebp - 0x1c]
movq qword [ebp - 0x34], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 7
call fcn.10003860
mov eax, dword [0x100d4b14]
cmp dword [eax + 0x148], 0
je 0x10072952
mov ecx, dword [ebp - 0x4c]
mov eax, 0x7ffffffe
sub eax, ecx
mov dword [ebp - 0x6b0], ecx
cmp eax, 1
jb 0x10072b0b
cmp dword [ebp - 0x48], 7
lea eax, [ebp - 0x5c]
lea esi, [ecx + 1]
mov dword [ebp - 0x1c], 0
cmova eax, dword [ebp - 0x5c]
lea edi, [ebp - 0x2c]
mov edx, 7
mov dword [ebp - 0x6b4], eax
mov dword [ebp - 0x18], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x2c], xmm0
cmp esi, edx
jbe 0x10072853
mov eax, esi
or eax, edx
cmp eax, 0x7ffffffe
jbe 0x10072819
mov eax, 0x7ffffffe
jmp 0x10072823
mov ecx, 0xa
cmp eax, ecx
cmovb eax, ecx
mov dword [ebp - 0x6c4], eax
lea eax, [ebp - 0x6c4]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.10003280
mov edx, dword [ebp - 0x6c4]
mov edi, eax
mov ecx, dword [ebp - 0x6b0]
add esp, 8
mov eax, dword [ebp - 0x6b4]
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x1c], esi
lea esi, [ecx + ecx]
push esi
push eax
push edi
mov dword [ebp - 0x18], edx
call sub.msvcrt.dll_memcpy
mov eax, 0x20
xor ecx, ecx
mov word [edi + esi], ax
add esp, 0xc
mov eax, dword [ebp - 0x6b0]
mov word [edi + eax*2 + 2], cx
cmp dword [ebp - 0x30], 7
lea eax, [ebp - 0x44]
push dword [ebp - 0x34]
cmova eax, dword [ebp - 0x44]
lea ecx, [ebp - 0x2c]
push eax
mov byte [ebp - 4], 8
call fcn.100134f0
xor ecx, ecx
movups xmm0, xmmword [eax]
movq xmm1, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
mov ecx, dword [ebp - 0x30]
movq qword [ebp - 0x6b8], xmm1
movups xmmword [ebp - 0x6d8], xmm0
cmp ecx, 7
jbe 0x1007290b
mov edx, dword [ebp - 0x44]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x100728f2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10072b10
push ecx
push edx
call fcn.1009a42f
movups xmm0, xmmword [ebp - 0x6d8]
add esp, 8
movq xmm1, qword [ebp - 0x6b8]
mov ecx, dword [ebp - 0x18]
movq qword [ebp - 0x34], xmm1
mov byte [ebp - 4], 3
movups xmmword [ebp - 0x44], xmm0
cmp ecx, 7
jbe 0x10072952
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10072948
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10072b10
push ecx
push edx
call fcn.1009a42f
add esp, 8
mov esi, dword [ebp - 0x6bc]
lea edi, [ebp - 0x6a8]
mov ecx, 0x180
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0x4e0]
test ecx, ecx
je 0x10072a2e
mov eax, dword [0x10c4a388]
mov dword [ebp - 0x6b0], eax
mov esi, dword [eax]
cmp esi, eax
je 0x10072a2e
nop dword [eax + eax]
test dword [esi + 8], ecx
lea edx, [esi + 8]
je 0x10072a1e
cmp byte [edx + 0x10], 0
jne 0x10072a1e
mov ecx, dword [edx + 8]
mov eax, dword [edx + 0x14]
mov byte [edx + 0x10], 1
mov dword [ecx], eax
mov ecx, dword [0x10c4a378]
cmp ecx, dword [0x10c4a37c]
je 0x100729cd
mov eax, dword [edx]
mov dword [ecx], eax
add dword [0x10c4a378], 4
jmp 0x100729dc
push edx
push ecx
mov ecx, 0x10c4a374
call fcn.1004ccf0
lea edx, [esi + 8]
mov eax, dword [edx + 8]
mov edi, dword [edx + 0xc]
push 9
push 0
push dword [eax]
mov dword [ebp - 0x6b4], eax
call fcn.10004fd0
add esp, 0xc
call fcn.10081c50
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
push eax
call fcn.10082130
push edi
push dword [ebp - 0x6b4]
call fcn.100814f0
call fcn.10081cb0
mov ecx, dword [ebp - 0x4e0]
mov eax, dword [esi]
mov esi, eax
cmp eax, dword [ebp - 0x6b0]
jne 0x10072990
test ecx, 0x100000
je 0x10072a3d
mov byte [0x10c4a36d], 1
test ecx, 0x200000
je 0x10072a4c
mov byte [0x10c4a36e], 1
xor eax, eax
mov ecx, 0x10c46920
xchg dword [ecx], eax
test eax, eax
je 0x10072a62
call eax
mov byte [0x100d4b18], 1
mov esi, dword [ebp - 0x6bc]
lea edi, [ebp - 0x6a8]
push 0
sub esp, 0x18
lea eax, [ebp - 0x44]
mov ecx, 0x180
rep movsd dword es:[edi], dword [esi]
mov ecx, esp
push eax
call fcn.10012740
push dword [ebp - 0x6c0]
mov ecx, 0x180
lea esi, [ebp - 0x6a8]
push dword [ebp - 0x6c8]
sub esp, 0x600
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10071880
add esp, 0x624
mov byte [ebp - 0x6a9], 1
jmp 0x1007258e
push ecx
push edx
call fcn.1009a42f
add esp, 8
mov al, byte [ebp - 0x6a9]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.1009a43d
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 0x2c
call fcn.1009b920
push str.invalid_unordered_map_K__T__key
call fcn.1008317b
call fcn.1009b920
call fcn.1009b920
call fcn.1009b920
call fcn.100050c0
call fcn.1009b920
int3