joyce8/EMBER2024-capa huggingface dataset:
Function at 0x180018610
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x20
call fcn.18000eb10
mov rcx, qword [0x1800e7348]
mov r15, rax
test rcx, rcx
jne 0x18001870d
mov rcx, qword gs:[0x60]
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rdx + 0x10]
mov rbp, qword [rcx]
mov rdi, rbp
nop word [rax + rax]
mov r11, qword [rdi + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov esi, dword [rax + r11 + 0x88]
add rsi, r11
cmp rsi, r11
je 0x1800186ee
mov r10d, dword [rsi + 0x18]
test r10d, r10d
je 0x1800186ee
mov r14d, dword [rsi + 0x20]
nop word [rax + rax]
dec r10d
mov r9d, 0x90a6d919
lea rax, [r14 + r10*4]
mov edx, dword [rax + r11]
add rdx, r11
movzx r8d, byte [rdx]
inc rdx
test r8b, r8b
je 0x1800186e9
movsx eax, r8b
lea rdx, [rdx + 1]
sub r8b, 0x41
mov ecx, eax
or ecx, 0x20
cmp r8b, 0x19
movzx r8d, byte [rdx - 1]
cmova ecx, eax
xor ecx, r9d
imul r9d, ecx, 0x1000193
test r8b, r8b
jne 0x1800186b0
cmp r9d, 0x6dd8fb1c
je 0x180018842
test r10d, r10d
jne 0x180018690
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rbp
je 0x180018704
cmp qword [rax + 0x30], 0
jne 0x180018660
xor ecx, ecx
mov qword [0x1800e7348], rcx
mov qword gs:[0x130], rcx
mov rcx, r15
mov rax, qword [0x1800c0200]
mov qword gs:[0x128], rax
call fcn.1800be1e0
mov rcx, qword [0x1800e7350]
mov r15, rax
test rcx, rcx
jne 0x180018809
mov rcx, qword gs:[0x60]
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rdx + 0x10]
mov rbp, qword [rcx]
mov rsi, rbp
nop dword [rax + rax]
mov r11, qword [rsi + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov edi, dword [rax + r11 + 0x88]
add rdi, r11
cmp rdi, r11
je 0x1800187ea
mov r10d, dword [rdi + 0x18]
test r10d, r10d
je 0x1800187ea
mov r14d, dword [rdi + 0x20]
nop word [rax + rax]
dec r10d
mov r9d, 0x591e2c6c
lea rax, [r14 + r10*4]
mov eax, dword [rax + r11]
add rax, r11
movzx r8d, byte [rax]
inc rax
test r8b, r8b
je 0x1800187e5
movsx ecx, r8b
lea rax, [rax + 1]
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
movzx r8d, byte [rax - 1]
cmova edx, ecx
xor edx, r9d
imul r9d, edx, 0x1000193
test r8b, r8b
jne 0x1800187b0
cmp r9d, 0x30bc6e22
je 0x18001885e
test r10d, r10d
jne 0x180018790
mov rax, qword [rsi]
mov rsi, rax
cmp rax, rbp
je 0x180018800
cmp qword [rax + 0x30], 0
jne 0x180018760
xor ecx, ecx
mov qword [0x1800e7350], rcx
mov qword gs:[0x130], rcx
mov rcx, r15
mov rax, qword [0x1800c0200]
mov qword gs:[0x128], rax
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x20
pop r15
pop r14
pop rdi
jmp fcn.1800be1e0
mov ecx, dword [rsi + 0x24]
add rcx, r11
movzx edx, word [rcx + r10*2]
mov ecx, dword [rsi + 0x1c]
add rcx, r11
mov ecx, dword [rcx + rdx*4]
add rcx, r11
jmp 0x180018706
mov ecx, dword [rdi + 0x24]
add rcx, r11
movzx edx, word [rcx + r10*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r11
mov ecx, dword [rcx + rdx*4]
add rcx, r11
jmp 0x180018802
Function at 0x18001eff0
Capabilities:
Access peb ldr_data
Encode data using xor
Get process filename
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push r15
sub rsp, 0x30
mov rax, qword [0x1800e7348]
mov r15, rcx
test rax, rax
jne 0x18001f102
mov rax, qword gs:[0x60]
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbp
mov qword [rsp + 0x50], rsi
mov rdx, qword [rax + 0x18]
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], r14
mov rax, qword [rdx + 0x10]
mov rbp, qword [rax]
mov rdi, rbp
nop dword [rax]
mov r11, qword [rdi + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov esi, dword [rax + r11 + 0x88]
add rsi, r11
cmp rsi, r11
je 0x18001f0ca
mov r10d, dword [rsi + 0x18]
test r10d, r10d
je 0x18001f0ca
mov r14d, dword [rsi + 0x20]
nop word [rax + rax]
dec r10d
mov r9d, 0x90a6d919
lea rax, [r14 + r10*4]
mov eax, dword [rax + r11]
add rax, r11
movzx r8d, byte [rax]
inc rax
test r8b, r8b
je 0x18001f0c5
movsx ecx, r8b
lea rax, [rax + 1]
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
movzx r8d, byte [rax - 1]
cmova edx, ecx
xor edx, r9d
imul r9d, edx, 0x1000193
test r8b, r8b
jne 0x18001f090
cmp r9d, 0x6dd8fb1c
je 0x18001f129
test r10d, r10d
jne 0x18001f070
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rbp
je 0x18001f0e0
cmp qword [rax + 0x30], 0
jne 0x18001f040
xor eax, eax
mov r14, qword [rsp + 0x20]
mov rdi, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
mov qword [0x1800e7348], rax
mov qword gs:[0x130], rax
mov rcx, r15
mov rax, qword [0x1800c0200]
mov qword gs:[0x128], rax
add rsp, 0x30
pop r15
jmp fcn.1800be1e0
mov ecx, dword [rsi + 0x24]
add rcx, r11
movzx edx, word [rcx + r10*2]
mov ecx, dword [rsi + 0x1c]
add rcx, r11
mov eax, dword [rcx + rdx*4]
add rax, r11
jmp 0x18001f0e2
Function at 0x18001f530
Capabilities:
Access peb ldr_data
Encode data using xor
Get process filename
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push r15
sub rsp, 0x30
mov rax, qword [0x1800e52d0]
mov r15, rcx
test rax, rax
jne 0x18001f642
mov rax, qword gs:[0x60]
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbp
mov qword [rsp + 0x50], rsi
mov rdx, qword [rax + 0x18]
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], r14
mov rax, qword [rdx + 0x10]
mov rbp, qword [rax]
mov rdi, rbp
nop dword [rax]
mov r11, qword [rdi + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov esi, dword [rax + r11 + 0x88]
add rsi, r11
cmp rsi, r11
je 0x18001f60a
mov r10d, dword [rsi + 0x18]
test r10d, r10d
je 0x18001f60a
mov r14d, dword [rsi + 0x20]
nop word [rax + rax]
dec r10d
mov r9d, 0xc6425b7a
lea rax, [r14 + r10*4]
mov eax, dword [rax + r11]
add rax, r11
movzx r8d, byte [rax]
inc rax
test r8b, r8b
je 0x18001f605
movsx ecx, r8b
lea rax, [rax + 1]
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
movzx r8d, byte [rax - 1]
cmova edx, ecx
xor edx, r9d
imul r9d, edx, 0x1000193
test r8b, r8b
jne 0x18001f5d0
cmp r9d, 0xa37f1be1
je 0x18001f669
test r10d, r10d
jne 0x18001f5b0
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rbp
je 0x18001f620
cmp qword [rax + 0x30], 0
jne 0x18001f580
xor eax, eax
mov r14, qword [rsp + 0x20]
mov rdi, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
mov qword [0x1800e52d0], rax
mov qword gs:[0x130], rax
mov rcx, r15
mov rax, qword [0x1800c0200]
mov qword gs:[0x128], rax
add rsp, 0x30
pop r15
jmp fcn.1800be1e0
mov ecx, dword [rsi + 0x24]
add rcx, r11
movzx edx, word [rcx + r10*2]
mov ecx, dword [rsi + 0x1c]
add rcx, r11
mov eax, dword [rcx + rdx*4]
add rax, r11
jmp 0x18001f622
Function at 0x18001f690
Capabilities:
Access peb ldr_data
Encode data using xor
Get process filename
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push r15
sub rsp, 0x30
mov rax, qword [0x1800e7350]
mov r15, rcx
test rax, rax
jne 0x18001f7a2
mov rax, qword gs:[0x60]
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbp
mov qword [rsp + 0x50], rsi
mov rdx, qword [rax + 0x18]
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], r14
mov rax, qword [rdx + 0x10]
mov rbp, qword [rax]
mov rdi, rbp
nop dword [rax]
mov r11, qword [rdi + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov esi, dword [rax + r11 + 0x88]
add rsi, r11
cmp rsi, r11
je 0x18001f76a
mov r10d, dword [rsi + 0x18]
test r10d, r10d
je 0x18001f76a
mov r14d, dword [rsi + 0x20]
nop word [rax + rax]
dec r10d
mov r9d, 0x591e2c6c
lea rax, [r14 + r10*4]
mov eax, dword [rax + r11]
add rax, r11
movzx r8d, byte [rax]
inc rax
test r8b, r8b
je 0x18001f765
movsx ecx, r8b
lea rax, [rax + 1]
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
movzx r8d, byte [rax - 1]
cmova edx, ecx
xor edx, r9d
imul r9d, edx, 0x1000193
test r8b, r8b
jne 0x18001f730
cmp r9d, 0x30bc6e22
je 0x18001f7c9
test r10d, r10d
jne 0x18001f710
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rbp
je 0x18001f780
cmp qword [rax + 0x30], 0
jne 0x18001f6e0
xor eax, eax
mov r14, qword [rsp + 0x20]
mov rdi, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
mov qword [0x1800e7350], rax
mov qword gs:[0x130], rax
mov rcx, r15
mov rax, qword [0x1800c0200]
mov qword gs:[0x128], rax
add rsp, 0x30
pop r15
jmp fcn.1800be1e0
mov ecx, dword [rsi + 0x24]
add rcx, r11
movzx edx, word [rcx + r10*2]
mov ecx, dword [rsi + 0x1c]
add rcx, r11
mov eax, dword [rcx + rdx*4]
add rax, r11
jmp 0x18001f782
Function at 0x18001fd90
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push r15
sub rsp, 0x60
movabs rcx, 0x30a64123b956480c
movabs rdx, 0x8561f7a6ac23b9c3
movabs rax, 0xe20fb2dfd84ad796
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x20], rax
movabs rax, 0x30a64123b9332665
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x78], rdx
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x78], rcx
mov rax, qword [rsp + 0x78]
movdqa xmm0, xmmword [rsp + 0x20]
mov qword [rsp + 0x38], rax
movabs rax, 0xe9009ed4c957d88e
xorps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x78], rcx
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x78], rdx
lea rdx, [rsp + 0x20]
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x78], rcx
lea rcx, [rsp + 0x30]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x78]
movdqa xmm0, xmmword [rsp + 0x30]
mov qword [rsp + 0x48], rax
xorps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x30], xmm0
call fcn.18000eb10
mov rcx, qword [0x1800e7378]
mov r15, rax
test rcx, rcx
jne 0x18001ff82
mov rcx, qword gs:[0x60]
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x80], rbp
mov qword [rsp + 0x88], rsi
mov rdx, qword [rcx + 0x18]
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x50], r14
mov rcx, qword [rdx + 0x10]
mov rbp, qword [rcx]
mov rsi, rbp
nop word [rax + rax]
mov r11, qword [rsi + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov edi, dword [rax + r11 + 0x88]
add rdi, r11
cmp rdi, r11
je 0x18001ff44
mov r10d, dword [rdi + 0x18]
test r10d, r10d
je 0x18001ff44
mov r14d, dword [rdi + 0x20]
nop word [rax + rax]
dec r10d
mov r9d, 0xb9118bb7
lea rax, [r14 + r10*4]
mov r8d, dword [rax + r11]
add r8, r11
movzx eax, byte [r8]
inc r8
test al, al
je 0x18001ff3f
nop
movsx ecx, al
lea r8, [r8 + 1]
sub al, 0x41
mov edx, ecx
or edx, 0x20
cmp al, 0x19
movzx eax, byte [r8 - 1]
cmova edx, ecx
xor edx, r9d
imul r9d, edx, 0x1000193
test al, al
jne 0x18001ff10
cmp r9d, 0xec37ce24
je 0x18001ffa9
test r10d, r10d
jne 0x18001fef0
mov rax, qword [rsi]
mov rsi, rax
cmp rax, rbp
je 0x18001ff5a
cmp qword [rax + 0x30], 0
jne 0x18001fec0
xor ecx, ecx
mov r14, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x88]
mov rbp, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x70]
mov qword [0x1800e7378], rcx
mov qword gs:[0x130], rcx
mov rcx, r15
mov rax, qword [0x1800c0200]
mov qword gs:[0x128], rax
add rsp, 0x60
pop r15
jmp fcn.1800be1e0
mov ecx, dword [rdi + 0x24]
add rcx, r11
movzx edx, word [rcx + r10*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r11
mov ecx, dword [rcx + rdx*4]
add rcx, r11
jmp 0x18001ff5c
Function at 0x180022400
Capabilities:
Hash data using fnv

Disassembly:
push rbp
push rsi
push r14
sub rsp, 0x40
mov rbp, r8
mov r14, rdx
mov rsi, rcx
cmp rdx, r8
je 0x180022609
mov rdx, qword [rcx + 0x18]
movabs r8, 0x100000001b3
mov rax, qword [r14 + 8]
mov qword [rsp + 0x70], rax
movabs rax, 0xcbf29ce484222325
mov qword [rsp + 0x60], rbx
mov rbx, r14
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], r12
mov r12, qword [rcx + 8]
movzx ecx, byte [r14 + 0x10]
xor rcx, rax
mov qword [rsp + 0x28], r13
movzx eax, byte [r14 + 0x11]
mov r13, qword [rsi + 0x30]
imul rcx, r8
mov qword [rsp + 0x20], r15
xor rcx, rax
mov qword [rsp + 0x78], rdx
movzx eax, byte [r14 + 0x12]
imul rcx, r8
xor rcx, rax
movzx eax, byte [r14 + 0x13]
imul rcx, r8
xor rcx, rax
movzx eax, byte [r14 + 0x14]
imul rcx, r8
xor rcx, rax
movzx eax, byte [r14 + 0x15]
imul rcx, r8
xor rcx, rax
movzx eax, byte [r14 + 0x16]
imul rcx, r8
xor rcx, rax
movzx eax, byte [r14 + 0x17]
imul rcx, r8
xor rcx, rax
imul rcx, r8
and r13, rcx
shl r13, 4
add r13, rdx
mov rax, qword [r13]
mov r15, qword [r13 + 8]
mov qword [rsp + 0x68], rax
nop dword [rax]
mov rcx, rbx
mov rdi, rbx
mov rbx, qword [rbx]
mov edx, 0x38
call main
dec qword [rsi + 0x10]
cmp rdi, r15
je 0x180022515
cmp rbx, rbp
jne 0x1800224e0
cmp qword [rsp + 0x68], r14
jne 0x1800225e4
mov qword [r13], rbx
jmp 0x1800225e4
cmp qword [rsp + 0x68], r14
jne 0x180022525
mov qword [r13], r12
mov rax, r12
jmp 0x18002252a
mov rax, qword [rsp + 0x70]
mov qword [r13 + 8], rax
cmp rbx, rbp
je 0x1800225e4
mov r13, qword [rsp + 0x78]
nop dword [rax]
movzx r15d, byte [rbx + 0x10]
movabs rdx, 0x100000001b3
movabs rax, 0xcbf29ce484222325
xor r15, rax
movzx eax, byte [rbx + 0x11]
imul r15, rdx
xor r15, rax
movzx eax, byte [rbx + 0x12]
imul r15, rdx
xor r15, rax
movzx eax, byte [rbx + 0x13]
imul r15, rdx
xor r15, rax
movzx eax, byte [rbx + 0x14]
imul r15, rdx
xor r15, rax
movzx eax, byte [rbx + 0x15]
imul r15, rdx
xor r15, rax
movzx eax, byte [rbx + 0x16]
imul r15, rdx
xor r15, rax
movzx eax, byte [rbx + 0x17]
imul r15, rdx
xor r15, rax
imul r15, rdx
and r15, qword [rsi + 0x30]
shl r15, 4
add r15, r13
mov r14, qword [r15 + 8]
nop dword [rax]
mov rcx, rbx
mov rdi, rbx
mov rbx, qword [rbx]
mov edx, 0x38
call main
dec qword [rsi + 0x10]
cmp rdi, r14
je 0x180022615
cmp rbx, rbp
jne 0x1800225c0
mov qword [r15], rbx
mov rax, qword [rsp + 0x70]
mov r15, qword [rsp + 0x20]
mov r13, qword [rsp + 0x28]
mov r12, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x38]
mov qword [rax], rbx
mov qword [rbx + 8], rax
mov rbx, qword [rsp + 0x60]
mov rax, rbp
add rsp, 0x40
pop r14
pop rsi
pop rbp
ret
mov qword [r15], r12
mov qword [r15 + 8], r12
cmp rbx, rbp
jne 0x180022540
jmp 0x1800225e4
Function at 0x180026450
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
mov rax, qword gs:[0x60]
mov rbx, rcx
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov rdx, qword [rax + 0x60]
mov r10d, 0xfae68ff
movzx r8d, word [rax + 0x58]
shr r8, 1
lea r11, [rdx + r8*2]
cmp rdx, r11
je 0x1800264c3
nop dword [rax + rax]
movsx ecx, byte [rdx]
mov r8d, ecx
sub cl, 0x41
mov r9d, r8d
or r9d, 0x20
cmp cl, 0x19
cmova r9d, r8d
add rdx, 2
xor r9d, r10d
imul r10d, r9d, 0x1000193
cmp rdx, r11
jne 0x180026490
cmp r10d, 0x99ddbbbf
je 0x1800264c8
mov rax, qword [rax]
jmp 0x180026470
mov rdx, qword [rax + 0x30]
mov rcx, qword [0x1800e5248]
add rdx, 0x330d6f0
cmp rdx, rcx
jbe 0x1800264eb
add rcx, qword [0x1800e5250]
cmp rdx, rcx
jb 0x180026501
lea rax, [rdx - 0x10000]
movabs rcx, 0x7ffffffdfffe
cmp rax, rcx
ja 0x180026508
mov rcx, rbx
pop rbx
jmp rdx
xor eax, eax
pop rbx
ret
Function at 0x180027850
Capabilities:
Access peb ldr_data
Encode data using xor
Get process filename
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push r15
sub rsp, 0x30
mov rax, qword [0x1800e7378]
mov r15, rcx
test rax, rax
jne 0x180027962
mov rax, qword gs:[0x60]
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbp
mov qword [rsp + 0x50], rsi
mov rdx, qword [rax + 0x18]
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], r14
mov rax, qword [rdx + 0x10]
mov rbp, qword [rax]
mov rdi, rbp
nop dword [rax]
mov r11, qword [rdi + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov esi, dword [rax + r11 + 0x88]
add rsi, r11
cmp rsi, r11
je 0x18002792a
mov r10d, dword [rsi + 0x18]
test r10d, r10d
je 0x18002792a
mov r14d, dword [rsi + 0x20]
nop word [rax + rax]
dec r10d
mov r9d, 0xb9118bb7
lea rax, [r14 + r10*4]
mov eax, dword [rax + r11]
add rax, r11
movzx r8d, byte [rax]
inc rax
test r8b, r8b
je 0x180027925
movsx ecx, r8b
lea rax, [rax + 1]
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
movzx r8d, byte [rax - 1]
cmova edx, ecx
xor edx, r9d
imul r9d, edx, 0x1000193
test r8b, r8b
jne 0x1800278f0
cmp r9d, 0xec37ce24
je 0x180027989
test r10d, r10d
jne 0x1800278d0
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rbp
je 0x180027940
cmp qword [rax + 0x30], 0
jne 0x1800278a0
xor eax, eax
mov r14, qword [rsp + 0x20]
mov rdi, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
mov qword [0x1800e7378], rax
mov qword gs:[0x130], rax
mov rcx, r15
mov rax, qword [0x1800c0200]
mov qword gs:[0x128], rax
add rsp, 0x30
pop r15
jmp fcn.1800be1e0
mov ecx, dword [rsi + 0x24]
add rcx, r11
movzx edx, word [rcx + r10*2]
mov ecx, dword [rsi + 0x1c]
add rcx, r11
mov eax, dword [rcx + rdx*4]
add rax, r11
jmp 0x180027942
Function at 0x1800404e0
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x20
movabs rax, 0xfffffffffffffff
mov rsi, rcx
bsr rcx, rax
mov edi, 1
mov eax, edi
shl rax, cl
cmp rdx, rax
ja 0x1800406bf
lea rax, [rdx - 1]
mov qword [rsp + 0x30], rbx
mov rbx, qword [rsi + 8]
or rax, rdi
bsr rcx, rax
mov r8, rbx
mov qword [rsp + 0x40], r14
inc ecx
shl rdi, cl
lea rcx, [rsi + 0x18]
lea rdx, [rdi + rdi]
call fcn.1800403a0
lea rax, [rdi - 1]
mov qword [rsi + 0x38], rdi
mov qword [rsi + 0x30], rax
mov rax, qword [rsi + 8]
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x180040684
mov qword [rsp + 0x38], rbp
movabs rdi, 0x100000001b3
movabs rbp, 0xcbf29ce484222325
nop dword [rax]
nop dword [rax + rax]
movzx edx, byte [rax + 0x11]
movzx r9d, byte [rax + 0x10]
mov r11, qword [rsi + 0x30]
xor r9, rbp
mov rcx, qword [rcx]
imul r9, rdi
xor r9, rdx
movzx edx, byte [rax + 0x12]
imul r9, rdi
xor r9, rdx
movzx edx, byte [rax + 0x13]
imul r9, rdi
xor r9, rdx
movzx edx, byte [rax + 0x14]
imul r9, rdi
xor r9, rdx
movzx edx, byte [rax + 0x15]
imul r9, rdi
xor r9, rdx
movzx edx, byte [rax + 0x16]
imul r9, rdi
xor r9, rdx
movzx edx, byte [rax + 0x17]
imul r9, rdi
xor r9, rdx
imul r9, rdi
and r11, r9
shl r11, 4
add r11, qword [rsi + 0x18]
mov r9, qword [r11]
cmp r9, rbx
jne 0x1800405fc
mov qword [r11], rax
mov qword [r11 + 8], rax
jmp 0x180040673
mov rdx, qword [r11 + 8]
mov r8, qword [rax + 0x10]
cmp r8, qword [rdx + 0x10]
jne 0x180040639
mov r10, qword [rdx]
cmp r10, rax
je 0x180040633
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
mov qword [r11 + 8], rax
jmp 0x180040673
cmp r9, rdx
je 0x18004064f
nop
mov rdx, qword [rdx + 8]
cmp r8, qword [rdx + 0x10]
je 0x180040699
cmp r9, rdx
jne 0x180040640
mov r10, qword [rax + 8]
mov qword [r10], rcx
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], rax
mov qword [rdx + 8], r9
mov qword [rcx + 8], r10
mov qword [rax + 8], r8
mov qword [r11], rax
mov rax, rcx
cmp rcx, rbx
jne 0x180040580
mov rbp, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
mov r14, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
mov r10, qword [rdx]
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
jmp 0x180040673
lea rcx, str.invalid_hash_bucket_count
call fcn.18000db00
int3
Function at 0x1800406d0
Capabilities:
Access peb ldr_data
Encode data using xor
Get process filename
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push r15
sub rsp, 0x30
mov rax, qword [0x1800e5308]
mov r15, rcx
test rax, rax
jne 0x1800407e2
mov rax, qword gs:[0x60]
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbp
mov qword [rsp + 0x50], rsi
mov rdx, qword [rax + 0x18]
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], r14
mov rax, qword [rdx + 0x10]
mov rbp, qword [rax]
mov rdi, rbp
nop dword [rax]
mov r11, qword [rdi + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov esi, dword [rax + r11 + 0x88]
add rsi, r11
cmp rsi, r11
je 0x1800407aa
mov r10d, dword [rsi + 0x18]
test r10d, r10d
je 0x1800407aa
mov r14d, dword [rsi + 0x20]
nop word [rax + rax]
dec r10d
mov r9d, 0x499b0aa5
lea rax, [r14 + r10*4]
mov eax, dword [rax + r11]
add rax, r11
movzx r8d, byte [rax]
inc rax
test r8b, r8b
je 0x1800407a5
movsx ecx, r8b
lea rax, [rax + 1]
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
movzx r8d, byte [rax - 1]
cmova edx, ecx
xor edx, r9d
imul r9d, edx, 0x1000193
test r8b, r8b
jne 0x180040770
cmp r9d, 0x5cef7d61
je 0x180040809
test r10d, r10d
jne 0x180040750
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rbp
je 0x1800407c0
cmp qword [rax + 0x30], 0
jne 0x180040720
xor eax, eax
mov r14, qword [rsp + 0x20]
mov rdi, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
mov qword [0x1800e5308], rax
mov qword gs:[0x130], rax
mov rcx, r15
mov rax, qword [0x1800c0200]
mov qword gs:[0x128], rax
add rsp, 0x30
pop r15
jmp fcn.1800be1e0
mov ecx, dword [rsi + 0x24]
add rcx, r11
movzx edx, word [rcx + r10*2]
mov ecx, dword [rsi + 0x1c]
add rcx, r11
mov eax, dword [rcx + rdx*4]
add rax, r11
jmp 0x1800407c2
Function at 0x180040830
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
sub rsp, 0x28
mov rax, qword [0x1800e5320]
test rax, rax
jne 0x180040942
mov rax, qword gs:[0x60]
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rbp
mov qword [rsp + 0x40], rsi
mov rcx, qword [rax + 0x18]
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x20], r14
mov rax, qword [rcx + 0x10]
mov rbp, qword [rax]
mov rdi, rbp
nop dword [rax]
nop dword [rax + rax]
mov r11, qword [rdi + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov esi, dword [rax + r11 + 0x88]
add rsi, r11
cmp rsi, r11
je 0x18004090a
mov r10d, dword [rsi + 0x18]
test r10d, r10d
je 0x18004090a
mov r14d, dword [rsi + 0x20]
nop word [rax + rax]
dec r10d
mov r9d, 0x2c2d1ae3
lea rax, [r14 + r10*4]
mov eax, dword [rax + r11]
add rax, r11
movzx r8d, byte [rax]
inc rax
test r8b, r8b
je 0x180040905
movsx ecx, r8b
lea rax, [rax + 1]
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
movzx r8d, byte [rax - 1]
cmova edx, ecx
xor edx, r9d
imul r9d, edx, 0x1000193
test r8b, r8b
jne 0x1800408d0
cmp r9d, 0x6107f2e1
je 0x180040964
test r10d, r10d
jne 0x1800408b0
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rbp
je 0x180040920
cmp qword [rax + 0x30], 0
jne 0x180040880
xor eax, eax
mov r14, qword [rsp + 0x20]
mov rdi, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
mov qword [0x1800e5320], rax
mov qword gs:[0x130], rax
mov rax, qword [0x1800c0200]
mov qword gs:[0x128], rax
add rsp, 0x28
jmp fcn.1800be1e0
mov ecx, dword [rsi + 0x24]
add rcx, r11
movzx edx, word [rcx + r10*2]
mov ecx, dword [rsi + 0x1c]
add rcx, r11
mov eax, dword [rcx + rdx*4]
add rax, r11
jmp 0x180040922