joyce8/EMBER2024-capa huggingface dataset:
Function at 0x18012d4d0
Capabilities:
Encode data using xor
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 0x18], r8
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x20
mov r14, rcx
mov qword [rsp + 0x68], r15
lea rcx, [r8 - 1]
mov r13, r9
mov rbp, rcx
mov qword [rsp + 0x60], rcx
sar rbp, 1
mov rax, r8
mov rsi, rdx
mov r12, rdx
mov r15, rdx
cmp rdx, rbp
jge 0x18012d584
nop
lea rbx, [r15 + r15]
lea rdx, [rbx + 2]
lea rdx, [rdx + rdx*4]
shl rdx, 4
add rdx, r14
lea r8, [rdx - 0x50]
call fcn.18012c920
movzx r15d, al
xor r15, 1
inc r15
add r15, rbx
lea rbx, [rsi + rsi*4]
shl rbx, 4
add rbx, r14
mov rcx, rbx
lea rdi, [r15 + r15*4]
shl rdi, 4
add rdi, r14
mov rdx, rdi
call fcn.18008e980
mov rax, qword [rdi + 0x20]
lea rdx, [rdi + 0x28]
lea rcx, [rbx + 0x28]
mov qword [rbx + 0x20], rax
call fcn.18008e980
movzx eax, byte [rdi + 0x48]
mov rsi, r15
mov byte [rbx + 0x48], al
cmp r15, rbp
jl 0x18012d510
mov rax, qword [rsp + 0x70]
cmp r15, rbp
mov r15, qword [rsp + 0x68]
jne 0x18012d5d5
test al, 1
jne 0x18012d5d5
lea rdi, [rax + rax*4]
shl rdi, 4
lea rbx, [rsi + rsi*4]
add rdi, r14
shl rbx, 4
add rbx, r14
mov rcx, rbx
lea rdx, [rdi - 0x50]
call fcn.18008e980
mov rax, qword [rdi - 0x30]
lea rdx, [rdi - 0x28]
lea rcx, [rbx + 0x28]
mov qword [rbx + 0x20], rax
call fcn.18008e980
movzx eax, byte [rdi - 8]
mov rsi, qword [rsp + 0x60]
mov byte [rbx + 0x48], al
cmp r12, rsi
jge 0x18012d63b
nop word [rax + rax]
lea rbx, [rsi - 1]
mov r8, r13
sar rbx, 1
lea rbp, [rbx + rbx*4]
shl rbp, 4
add rbp, r14
mov rdx, rbp
call fcn.18012c920
test al, al
je 0x18012d63b
lea rdi, [rsi + rsi*4]
mov rdx, rbp
shl rdi, 4
add rdi, r14
mov rcx, rdi
call fcn.18008e980
mov rax, qword [rbp + 0x20]
lea rdx, [rbp + 0x28]
lea rcx, [rdi + 0x28]
mov qword [rdi + 0x20], rax
call fcn.18008e980
movzx eax, byte [rbp + 0x48]
mov rsi, rbx
mov byte [rdi + 0x48], al
cmp r12, rbx
jl 0x18012d5e0
lea rbx, [rsi + rsi*4]
mov rdx, r13
shl rbx, 4
add rbx, r14
mov rcx, rbx
call fcn.18008e980
mov rax, qword [r13 + 0x20]
lea rdx, [r13 + 0x28]
lea rcx, [rbx + 0x28]
mov qword [rbx + 0x20], rax
call fcn.18008e980
movzx eax, byte [r13 + 0x48]
mov byte [rbx + 0x48], al
add rsp, 0x20
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x180130800
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18022910c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x18022ae1c], edx
jle 0x1801308e1
lea rcx, [0x18022ae1c]
call fcn.18017e33c
cmp dword [0x18022ae1c], 0xffffffff
jne 0x1801308e1
mov rcx, qword [0x18022aa18]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1801308ce
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x180130872
mov rdx, r11
test rax, rax
je 0x1801308b0
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [r8 + rdx]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x180130890
cmp r9d, 0x7a1c884e
je 0x1801308bb
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x180130861
jmp 0x1801308ce
lea r8, str.m_nWaterLevel
mov rdx, qword [r10 + 0x18]
call fcn.18017ded0
mov r11d, eax
mov dword [0x18022adf4], r11d
lea rcx, [0x18022ae1c]
call fcn.18017e2d0
movsxd rax, dword [0x18022adf4]
cmp byte [rax + rbx], 1
seta al
add rsp, 0x20
pop rbx
ret

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

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18022910c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x18022ae38], edx
jle 0x1801309e4
lea rcx, [0x18022ae38]
call fcn.18017e33c
cmp dword [0x18022ae38], 0xffffffff
jne 0x1801309e4
mov rcx, qword [0x18022aa18]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1801309ce
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x180130972
mov rdx, r11
test rax, rax
je 0x1801309b0
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [r8 + rdx]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x180130990
cmp r9d, 0x7c5cc931
je 0x1801309bb
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x180130961
jmp 0x1801309ce
lea r8, str.m_nWaterLevel
mov rdx, qword [r10 + 0x18]
call fcn.18017ded0
mov r11d, eax
lea eax, [r11 - 4]
mov dword [0x18022adfc], eax
lea rcx, [0x18022ae38]
call fcn.18017e2d0
movsxd rax, dword [0x18022adfc]
add rax, rbx
add rsp, 0x20
pop rbx
ret
Function at 0x180133dd0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x20
mov qword [rsp + 0x50], rbp
mov r15, r9
lea rbp, [r8 - 1]
mov qword [rsp + 0x58], r13
sar rbp, 1
mov r14, r8
mov rsi, rdx
mov rdi, rcx
mov r12, rdx
mov r10, rdx
cmp rdx, rbp
jge 0x180133e62
nop dword [rax]
lea rbx, [r10 + r10]
lea rax, [rbx + 2]
lea rax, [rax + rax*2]
lea rdx, [rdi + rax*4]
lea r8, [rdx - 0xc]
lea rcx, [rsp + 0x70]
call fcn.1801338d0
movzx eax, al
lea rcx, [rsi + rsi*2]
xor rax, 1
lea r10, [rbx + 1]
add r10, rax
mov rsi, r10
lea rdx, [r10 + r10*2]
mov eax, dword [rdi + rdx*4]
mov dword [rdi + rcx*4], eax
mov eax, dword [rdi + rdx*4 + 4]
mov dword [rdi + rcx*4 + 4], eax
mov eax, dword [rdi + rdx*4 + 8]
mov dword [rdi + rcx*4 + 8], eax
cmp r10, rbp
jl 0x180133e10
cmp r10, rbp
mov rbp, qword [rsp + 0x50]
jne 0x180133e95
test r14b, 1
jne 0x180133e95
lea rcx, [rsi + rsi*2]
lea rdx, [r14 + r14*2]
mov eax, dword [rdi + rdx*4 - 0xc]
lea rsi, [r14 - 1]
mov dword [rdi + rcx*4], eax
mov eax, dword [rdi + rdx*4 - 8]
mov dword [rdi + rcx*4 + 4], eax
mov eax, dword [rdi + rdx*4 - 4]
mov dword [rdi + rcx*4 + 8], eax
mov rax, qword [rsp + 0x70]
mov r13, qword [rsp + 0x58]
mov qword [rsp + 0x70], rax
cmp r12, rsi
jge 0x180133ef5
nop dword [rax]
lea rbx, [rsi - 1]
mov r8, r15
sar rbx, 1
lea rcx, [rsp + 0x70]
lea rax, [rbx + rbx*2]
lea r14, [rdi + rax*4]
mov rdx, r14
call fcn.1801338d0
test al, al
je 0x180133ef5
mov eax, dword [r14]
lea rcx, [rsi + rsi*2]
mov dword [rdi + rcx*4], eax
mov rsi, rbx
mov eax, dword [r14 + 4]
mov dword [rdi + rcx*4 + 4], eax
mov eax, dword [r14 + 8]
mov dword [rdi + rcx*4 + 8], eax
cmp r12, rbx
jl 0x180133eb0
mov eax, dword [r15]
lea rcx, [rsi + rsi*2]
mov rbx, qword [rsp + 0x60]
mov dword [rdi + rcx*4], eax
mov eax, dword [r15 + 4]
mov dword [rdi + rcx*4 + 4], eax
mov eax, dword [r15 + 8]
mov dword [rdi + rcx*4 + 8], eax
add rsp, 0x20
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret
Function at 0x1801387e0
Capabilities:
Encode data using xor
Generate random numbers using a mersenne twister

Disassembly:
test rdx, rdx
je 0x180138a5d
mov qword [rsp + 8], rcx
push rbx
push rsi
push r15
mov eax, 0x13b0
call fcn.180180220
sub rsp, rax
mov r15, r9
mov qword [rsp + 0x13d8], rdi
mov rsi, r8
mov rbx, rdx
call fcn.180138630
mov rcx, rbx
call fcn.1800b10a0
cmp byte [rax], 0
jne 0x1801388ce
mov rcx, rbx
call fcn.1800b13b0
mov ecx, dword [rax]
shr ecx, 0xd
test cl, 1
jne 0x1801388ce
mov edi, dword [0x180233eb4]
lea rcx, [rbx + 0x10]
mov rax, qword [rcx]
shr edi, 1
and dil, 1
call qword [rax + 0x10]
test rax, rax
je 0x1801388b7
cmp dword [rax + 0x28], 0xf7
jne 0x1801388b7
mov rcx, rbx
call fcn.1800bed80
mov rcx, qword [0x18022aa40]
mov eax, dword [rax]
mov rdx, qword [rcx]
mov dword [rsp + 0x13d0], eax
mov r8, qword [rdx + 0x20]
lea rdx, [rsp + 0x13d0]
call r8
test rax, rax
jne 0x18013889c
mov rcx, rbx
call fcn.1800b2340
test byte [rax], 1
je 0x1801388b7
mov rcx, rbx
call fcn.1800b2340
mov ecx, dword [rax]
shr ecx, 1
test cl, 1
je 0x1801388b7
test byte [rsi + 0x28], 4
jne 0x1801388b7
mov al, 1
jmp 0x1801388b9
xor al, al
test dil, dil
je 0x1801388c6
test al, al
je 0x1801388c6
mov al, 1
jmp 0x1801388c8
xor al, al
mov byte [0x18022659d], al
mov ecx, dword [0x180233d34]
sub ecx, 1
je 0x1801389da
sub ecx, 1
je 0x1801388fa
cmp ecx, 1
jne 0x1801389e6
mov dword [0x18022ad18], 0x16
jmp 0x1801389e6
cmp dword [0x18022ad18], 0
jne 0x1801389e6
mov edi, dword [0x180233cbc]
mov qword [rsp + 0x13e0], r14
mov r14d, dword [0x180233cb8]
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov dword [rsp + 0x13a4], 0xffffffff
mov edx, 1
mov dword [rsp + 0x24], eax
nop word [rax + rax]
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0x24], eax
inc rdx
cmp rdx, 0x270
jb 0x180138940
btc r14d, 0x1f
mov dword [rsp + 0x20], 0x270
btc edi, 0x1f
lea rcx, [rsp + 0x20]
sub edi, r14d
cmp edi, 0xffffffff
jne 0x180138986
call fcn.18017c200
mov ecx, eax
jmp 0x1801389c8
inc edi
call fcn.18017c200
mov ecx, eax
mov esi, edi
imul rcx, rsi
cmp ecx, edi
jae 0x1801389c4
mov eax, edi
xor edx, edx
neg eax
div edi
mov edi, edx
cmp ecx, edx
jae 0x1801389c4
nop word [rax + rax]
lea rcx, [rsp + 0x20]
call fcn.18017c200
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jb 0x1801389b0
shr rcx, 0x20
lea eax, [r14 + rcx]
mov r14, qword [rsp + 0x13e0]
btc eax, 0x1f
jmp 0x1801389e0
mov eax, dword [0x180233f34]
mov dword [0x18022ad18], eax
mov rdx, rbx
call fcn.180138410
mov rdi, qword [rsp + 0x13d8]
test al, al
jne 0x180138a48
mov rcx, rbx
call fcn.1800b7850
movss xmm0, dword [rax]
movss dword [0x180226590], xmm0
movss xmm1, dword [rax + 4]
movss dword [0x180226594], xmm1
movss xmm0, dword [rax + 8]
xor eax, eax
mov dword [0x18022ad18], eax
mov dword [0x18022ad20], eax
mov byte [0x18022659d], al
movss dword [0x180226598], xmm0
add rsp, 0x13b0
pop r15
pop rsi
pop rbx
ret
inc dword [0x18022ad20]
mov byte [r15], 0
add rsp, 0x13b0
pop r15
pop rsi
pop rbx
ret
Function at 0x18013ab30
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov ebx, edx
mov rdi, rcx
mov r8d, dword [0x18022910c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + r8*8]
mov r8d, dword [rcx + rax]
cmp dword [0x18022ae94], r8d
jle 0x18013ac21
lea rcx, [0x18022ae94]
call fcn.18017e33c
cmp dword [0x18022ae94], 0xffffffff
jne 0x18013ac21
mov rcx, qword [0x18022aa18]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x18013ac0e
nop word [rax + rax]
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x18013abb1
mov rdx, r11
test rax, rax
je 0x18013abf0
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [r8 + rdx]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x18013abd0
cmp r9d, 0x3369e751
je 0x18013abfb
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x18013aba0
jmp 0x18013ac0e
lea r8, str.m_iTeam
mov rdx, qword [r10 + 0x18]
call fcn.18017ded0
mov r11d, eax
mov dword [0x18022ae74], r11d
lea rcx, [0x18022ae94]
call fcn.18017e2d0
lea eax, [rbx*4]
cdqe
movsxd rdx, dword [0x18022ae74]
add rax, rdi
mov eax, dword [rdx + rax]
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret

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

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
movsxd rbx, edx
mov rdi, rcx
mov r8d, dword [0x18022910c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + r8*8]
mov r8d, dword [rcx + rax]
cmp dword [0x18022ae6c], r8d
jle 0x18013ad41
lea rcx, [0x18022ae6c]
call fcn.18017e33c
cmp dword [0x18022ae6c], 0xffffffff
jne 0x18013ad41
mov rcx, qword [0x18022aa18]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x18013ad2e
nop dword [rax + rax]
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x18013acd1
mov rdx, r11
test rax, rax
je 0x18013ad10
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [r8 + rdx]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x18013acf0
cmp r9d, 0x3369e751
je 0x18013ad1b
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x18013acc0
jmp 0x18013ad2e
lea r8, str.m_bValid
mov rdx, qword [r10 + 0x18]
call fcn.18017ded0
mov r11d, eax
mov dword [0x18022ae78], r11d
lea rcx, [0x18022ae6c]
call fcn.18017e2d0
movsxd rax, dword [0x18022ae78]
add rax, rdi
movzx eax, byte [rbx + rax]
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x18013ad60
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x10], rdx
push rdi
sub rsp, 0x30
mov rsi, r8
mov rbx, rdx
mov rdx, qword [rdx + 0x10]
test rdx, rdx
je 0x18013ae27
lea rdi, [rcx + 0x90]
mov r10, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x18013ad9b
mov r10, qword [rbx]
xor ecx, ecx
movabs r9, 0xcbf29ce484222325
test rdx, rdx
je 0x18013add4
movabs r8, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [r10 + rcx]
xor r9, rax
imul r9, r8
inc rcx
cmp rcx, rdx
jb 0x18013adc0
mov r8, rbx
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.180092790
cmp qword [rax + 8], 0
je 0x18013ae27
mov r8, rbx
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.180124f30
mov rax, qword [rax]
movsd xmm0, qword [rax + 0x30]
movsd qword [rsi], xmm0
mov eax, dword [rax + 0x38]
mov dword [rsi + 8], eax
mov rcx, rbx
call fcn.18008ede0
mov al, 1
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret
mov rcx, rbx
call fcn.18008ede0
xor al, al
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret
Function at 0x18013b080
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x10]
sub rsp, 0x110
mov r14, r8
mov r15, rcx
mov r12, qword [rbp + 0x70]
test edx, edx
je 0x18013b302
add rcx, 0x50
lea r8, [rbp + 0x58]
lea rdx, [rsp + 0x30]
call fcn.1801251c0
mov rsi, qword [rax]
mov rax, qword [rsi + 0x18]
mov rcx, qword [rsi + 0x20]
cmp rax, rcx
je 0x18013b302
nop word [rax + rax]
mov r10, rax
cmp qword [rax + 0x18], 0xf
jbe 0x18013b0ed
mov r10, qword [rax]
mov rdx, 0xffffffffffffffff
mov r11d, 0x811c9dc5
nop word [rax + rax]
inc rdx
cmp byte [r10 + rdx], 0
jne 0x18013b100
xor r9d, r9d
test rdx, rdx
je 0x18013b14a
nop dword [rax]
nop word [rax + rax]
movsx r8d, byte [r10 + r9]
xor r8d, r11d
imul r11d, r8d, 0x1000193
inc r9
cmp r9, rdx
jb 0x18013b120
test r11d, r11d
jne 0x18013b14a
add rax, 0x20
cmp rax, rcx
jne 0x18013b0e0
jmp 0x18013b302
mov rdi, rcx
lea rbx, [rax + 0x20]
cmp rbx, rcx
je 0x18013b175
nop word [rax + rax]
lea rcx, [rbx - 0x20]
mov rdx, rbx
call fcn.18008e980
add rbx, 0x20
cmp rbx, rdi
jne 0x18013b160
mov rcx, qword [rsi + 0x20]
sub rcx, 0x20
call fcn.18008ede0
add qword [rsi + 0x20], 0xffffffffffffffe0
mov byte [r15 + 0x129], 1
cmp qword [r12 + 0x10], 0
je 0x18013b302
mov dword [rsp + 0x30], 0xffffffff
mov rdx, r14
lea rcx, [rbp - 0x58]
call fcn.18008ea50
lea r8, [rsp + 0x30]
mov rdx, rax
mov rcx, r15
call fcn.18013ad60
test al, al
je 0x18013b302
lea rax, [rbp - 0x30]
mov qword [rsp + 0x70], rax
mov rdx, r14
lea rcx, [rbp - 0x30]
call fcn.18008ea50
mov rbx, rax
lea rax, [rbp - 0x58]
mov qword [rbp - 0x38], rax
lea rax, str._b:02X:02X:02X:02X
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 0x19
movzx ecx, byte [rsp + 0x30]
mov dword [rbp - 0x68], ecx
movabs rax, 0x2000000000000000
mov qword [rsp + 0x78], rax
movzx eax, byte [rsp + 0x31]
mov dword [rbp - 0x64], eax
movabs rax, 0x2000000000000004
mov qword [rbp - 0x80], rax
movzx eax, byte [rsp + 0x32]
mov dword [rbp - 0x60], eax
movabs rax, 0x2000000000000008
mov qword [rbp - 0x78], rax
movzx eax, byte [rsp + 0x33]
mov dword [rbp - 0x5c], eax
movabs rax, 0x200000000000000c
mov qword [rbp - 0x70], rax
mov qword [rsp + 0x30], 4
lea rax, [rsp + 0x78]
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x30], xmm0
movaps xmm1, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x40], xmm1
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x58]
call fcn.1800a5f60
nop
lea rax, [rsp + 0x50]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x60], 7
mov qword [rsp + 0x68], 0xf
mov rax, qword [str.Removed]
mov dword [rsp + 0x50], eax
movzx eax, word [0x1801fbb84]
mov word [rsp + 0x54], ax
movzx eax, byte [0x1801fbb86]
mov byte [rsp + 0x56], al
mov byte [rsp + 0x57], 0
mov rdx, r12
lea rcx, [rbp - 0x10]
call fcn.18008ea50
nop
mov qword [rsp + 0x20], rbx
lea r9, [rbp - 0x58]
lea r8, [rsp + 0x50]
mov rdx, rax
call fcn.180130220
nop
mov rcx, r14
call fcn.18008ede0
nop
mov rcx, r12
call fcn.18008ede0
add rsp, 0x110
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
Function at 0x18013b330
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
push rbp
push rsi
push rdi
sub rsp, 0x30
mov rsi, r8
mov r9, rcx
test edx, edx
jne 0x18013b366
mov rcx, r8
call fcn.18008ede0
xor al, al
mov rbx, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
pop rsi
pop rbp
ret
cmp qword [r8 + 0x18], 0xf
jbe 0x18013b370
mov r8, qword [r8]
mov edi, 0x811c9dc5
mov rcx, 0xffffffffffffffff
nop dword [rax]
inc rcx
cmp byte [r8 + rcx], 0
jne 0x18013b380
xor edx, edx
test rcx, rcx
je 0x18013b3b5
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [r8 + rdx]
xor eax, edi
imul edi, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x18013b3a0
lea rbp, [r9 + 0x50]
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov rcx, rbp
call fcn.1801251c0
mov rcx, qword [rax]
mov r10, qword [rcx + 0x20]
mov rbx, qword [rcx + 0x18]
cmp rbx, r10
je 0x18013b436
nop dword [rax + rax]
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x18013b3ed
mov r8, qword [rbx]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop word [rax + rax]
inc rax
cmp byte [r8 + rax], 0
jne 0x18013b400
xor edx, edx
test rax, rax
je 0x18013b428
movsx ecx, byte [r8 + rdx]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x18013b411
cmp edi, r9d
je 0x18013b436
add rbx, 0x20
cmp rbx, r10
jne 0x18013b3e0
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x20]
mov rcx, rbp
call fcn.1801251c0
mov rcx, qword [rax]
cmp rbx, qword [rcx + 0x20]
setne bl
mov rcx, rsi
call fcn.18008ede0
movzx eax, bl
mov rbx, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
pop rsi
pop rbp
ret
Function at 0x18013d680
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18022910c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x18022aea0], edx
jle 0x18013d761
lea rcx, [0x18022aea0]
call fcn.18017e33c
cmp dword [0x18022aea0], 0xffffffff
jne 0x18013d761
mov rcx, qword [0x18022aa18]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x18013d74e
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x18013d6f2
mov rdx, r11
test rax, rax
je 0x18013d730
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [r8 + rdx]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x18013d710
cmp r9d, 0x9dc483b8
je 0x18013d73b
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x18013d6e1
jmp 0x18013d74e
lea r8, str.m_hOwnerEntity
mov rdx, qword [r10 + 0x18]
call fcn.18017ded0
mov r11d, eax
mov dword [0x18022aea4], r11d
lea rcx, [0x18022aea0]
call fcn.18017e2d0
movsxd rax, dword [0x18022aea4]
add rax, rbx
add rsp, 0x20
pop rbx
ret

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

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18022910c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x18022aeac], edx
jle 0x18013d864
lea rcx, [0x18022aeac]
call fcn.18017e33c
cmp dword [0x18022aeac], 0xffffffff
jne 0x18013d864
mov rcx, qword [0x18022aa18]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x18013d84e
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x18013d7f2
mov rdx, r11
test rax, rax
je 0x18013d830
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [r8 + rdx]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x18013d810
cmp r9d, 0x7c5cc931
je 0x18013d83b
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x18013d7e1
jmp 0x18013d84e
lea r8, str.m_hItem
mov rdx, qword [r10 + 0x18]
call fcn.18017ded0
mov r11d, eax
lea eax, [r11 - 0x58]
mov dword [0x18022aea8], eax
lea rcx, [0x18022aeac]
call fcn.18017e2d0
movsxd rax, dword [0x18022aea8]
add rax, rbx
add rsp, 0x20
pop rbx
ret
Function at 0x18013d920
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x18], rsi
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x70
movabs rax, 0xcbf29ce484222325
movzx r9d, r8b
xor r9, rax
mov rsi, rdx
movabs rdx, 0x100000001b3
mov rax, r8
imul r9, rdx
shr rax, 8
mov rdi, r8
movzx ecx, al
mov rax, r8
xor r9, rcx
shr rax, 0x10
imul r9, rdx
movzx ecx, al
mov rax, r8
xor r9, rcx
shr rax, 0x18
imul r9, rdx
movzx ecx, al
mov rax, r8
xor r9, rcx
shr rax, 0x20
imul r9, rdx
movzx ecx, al
mov rax, r8
xor r9, rcx
shr rax, 0x28
imul r9, rdx
movzx ecx, al
mov rax, r8
xor r9, rcx
shr rax, 0x30
imul r9, rdx
movzx ecx, al
mov rax, r8
xor r9, rcx
shr rax, 0x38
mov rcx, qword [0x180239420]
imul r9, rdx
xor r9, rax
imul r9, rdx
mov rdx, qword [0x180239408]
and rcx, r9
add rcx, rcx
mov rax, qword [rdx + rcx*8 + 8]
cmp rax, qword [0x1802393f8]
je 0x18013da05
mov rcx, qword [rdx + rcx*8]
cmp r8, qword [rax + 0x10]
je 0x18013da07
cmp rax, rcx
je 0x18013da05
mov rax, qword [rax + 8]
cmp rdi, qword [rax + 0x10]
jne 0x18013d9f4
jmp 0x18013da07
xor eax, eax
test rax, rax
je 0x18013db03
mov qword [rsp + 0x88], rbx
lea r8, [rsp + 0x80]
movaps xmmword [rsp + 0x60], xmm6
lea rdx, [rsp + 0x30]
movaps xmmword [rsp + 0x50], xmm7
lea rcx, [0x1802393f0]
movaps xmmword [rsp + 0x40], xmm8
mov qword [rsp + 0x80], rdi
call fcn.18013f390
mov rcx, qword [rax]
mov rax, qword [rdi]
movss xmm6, dword [rcx + 0x18]
movss xmm7, dword [rcx + 0x1c]
movss xmm8, dword [rcx + 0x20]
mov rcx, rdi
call qword [rax + 0x48]
mov rcx, rdi
mov rbx, rax
call fcn.1800b2240
movss xmm1, dword [rbx + 4]
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
mov qword [rsp + 0x24], 0
mov dword [rsp + 0x20], 0
movss xmm0, dword [rax]
addss xmm0, dword [rbx]
addss xmm1, dword [rax + 4]
subss xmm6, xmm0
movss xmm0, dword [rbx + 8]
addss xmm0, dword [rax + 8]
subss xmm7, xmm1
movss dword [rsp + 0x30], xmm6
subss xmm8, xmm0
movss dword [rsp + 0x34], xmm7
movss dword [rsp + 0x38], xmm8
call fcn.1800c5bc0
movss xmm0, dword [rsp + 0x20]
mov rax, rsi
movaps xmm8, xmmword [rsp + 0x40]
movaps xmm7, xmmword [rsp + 0x50]
movaps xmm6, xmmword [rsp + 0x60]
mov rbx, qword [rsp + 0x88]
movss dword [rsi], xmm0
mov byte [rsi + 4], 1
mov rsi, qword [rsp + 0x90]
add rsp, 0x70
pop rdi
ret
mov byte [rsi + 4], 0
mov rax, rsi
mov rsi, qword [rsp + 0x90]
add rsp, 0x70
pop rdi
ret