joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1402a0ea0
Capabilities:
Modify service

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r14
mov rbp, rsp
sub rsp, 0x70
mov rax, qword [0x1405420e0]
xor rax, rsp
mov qword [rbp - 8], rax
movdqa xmm0, xmmword [0x140420310]
lea rcx, [rbp - 0x28]
mov sil, dl
xor r14d, r14d
lea rdx, str.Sense
mov word [rbp - 0x28], r14w
movdqu xmmword [rbp - 0x18], xmm0
call fcn.140055574
lea r8d, [r14 + 3]
mov qword [rbp - 0x38], r14
lea rdx, [rbp - 0x28]
lea rcx, [rbp - 0x38]
call fcn.14028dc1c
mov edi, eax
test eax, eax
jns 0x1402a0f5b
cmp qword [rbp - 0x10], 8
lea rax, [rbp - 0x28]
mov rcx, qword [rbp + 0x18]
lea r8, str.amcorewcd_sourcecommon_src_serviceutils.cpp
cmovae rax, qword [rbp - 0x28]
mov r9d, edi
mov qword [rsp + 0x28], rax
mov edx, 0x201
lea rax, str.Could_not_get_handle_for_service__ws
mov qword [rsp + 0x20], rax
call fcn.14018588c
mov rcx, qword [rbp - 0x38]
test rcx, rcx
je 0x1402a1038
call qword [sym.imp.api_ms_win_service_management_l1_1_0.dll_CloseServiceHandle]
nop dword [rax + rax]
jmp 0x1402a1038
mov rbx, qword [rbp - 0x38]
lea rax, [rbp - 0x30]
mov r9d, 4
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x40]
mov rcx, rbx
lea edx, [r9 - 1]
call qword [sym.imp.api_ms_win_service_management_l2_1_0.dll_QueryServiceConfig2W]
nop dword [rax + rax]
test eax, eax
jne 0x1402a0fc4
cmp qword [rbp - 0x10], 8
lea rax, [rbp - 0x28]
mov rcx, qword [rbp + 0x18]
lea r9, str.Failed_to_query_the_service__ws_delayed_auto_start_info.
cmovae rax, qword [rbp - 0x28]
lea r8, str.amcorewcd_sourcecommon_src_serviceutils.cpp
mov edx, 0x206
mov qword [rsp + 0x20], rax
call fcn.1402297e4
mov edi, eax
test rbx, rbx
je 0x1402a1038
mov rcx, rbx
jmp 0x1402a0f4a
movzx edi, sil
cmp dword [rbp - 0x40], edi
je 0x1402a1021
lea r8, [rbp - 0x40]
mov dword [rbp - 0x40], edi
mov edx, 3
mov rcx, rbx
call qword [sym.imp.api_ms_win_service_management_l2_1_0.dll_ChangeServiceConfig2W]
nop dword [rax + rax]
test eax, eax
jne 0x1402a1021
cmp qword [rbp - 0x10], 8
lea rax, [rbp - 0x28]
mov rcx, qword [rbp + 0x18]
lea r9, str.Failed_to_change_the_service__ws_start_type_to_delayed_auto_start__d.
cmovae rax, qword [rbp - 0x28]
lea r8, str.amcorewcd_sourcecommon_src_serviceutils.cpp
mov dword [rsp + 0x28], edi
mov edx, 0x20d
mov qword [rsp + 0x20], rax
call fcn.1402297e4
jmp 0x1402a0fb8
test rbx, rbx
je 0x1402a1035
mov rcx, rbx
call qword [sym.imp.api_ms_win_service_management_l1_1_0.dll_CloseServiceHandle]
nop dword [rax + rax]
mov edi, r14d
lea rcx, [rbp - 0x28]
call fcn.140055f70
mov eax, edi
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.140356560
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
Function at 0x1402a1070
Capabilities:
Query service status

Disassembly:
mov rax, rsp
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0x90
mov qword [rbp - 1], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r14
mov rax, qword [0x1405420e0]
xor rax, rsp
mov qword [rbp + 0x47], rax
xor esi, esi
mov qword [rbp - 9], rsi
movdqa xmm0, xmmword [0x140420310]
movdqu xmmword [rbp + 0x17], xmm0
mov word [rbp + 7], si
lea r14, str.Sense
mov rdx, r14
lea rcx, [rbp + 7]
call fcn.140055574
lea r8d, [rsi + 4]
lea rdx, [rbp + 7]
lea rcx, [rbp - 9]
call fcn.14028dc1c
mov edi, eax
lea rcx, [rbp + 7]
call fcn.140055f70
test edi, edi
jns 0x1402a1135
mov rcx, qword [rbp + 0x5f]
mov qword [rsp + 0x28], r14
lea rax, str.Could_not_get_handle_for_service__ws
mov qword [rsp + 0x20], rax
mov r9d, edi
lea r8, str.amcorewcd_sourceonboardingonboardingmanager_senseservicesettings.cpp
lea edx, [rsi + 0x43]
call fcn.14018588c
nop
mov rcx, qword [rbp - 9]
test rcx, rcx
je 0x1402a11cd
call qword [sym.imp.api_ms_win_service_management_l1_1_0.dll_CloseServiceHandle]
nop dword [rax + rax]
jmp 0x1402a11cd
lea rdx, [rbp + 0x27]
mov rbx, qword [rbp - 9]
mov rcx, rbx
call qword [sym.imp.api_ms_win_service_winsvc_l1_1_0.dll_QueryServiceStatus]
nop dword [rax + rax]
test eax, eax
jne 0x1402a117b
lea r9, str.Cannot_query_service_status_for_service__ws
lea edx, [rax + 0x49]
lea r8, str.amcorewcd_sourceonboardingonboardingmanager_senseservicesettings.cpp
mov qword [rsp + 0x20], r14
mov rcx, qword [rbp + 0x5f]
call fcn.1402297e4
mov edi, eax
test rbx, rbx
je 0x1402a11cd
mov rcx, rbx
jmp 0x1402a1124
or dword [rbp + 0x2f], 1
mov rcx, qword [0x140548d58]
test rcx, rcx
jne 0x1402a1197
call fcn.140329e68
mov rcx, qword [0x140548d58]
lea rdx, [rbp + 0x27]
call qword [sym.imp.api_ms_win_service_core_l1_1_0.dll_SetServiceStatus]
nop dword [rax + rax]
test eax, eax
jne 0x1402a11b7
lea r9, str.Cannot_set_service_status_for_service__ws
lea edx, [rax + 0x51]
jmp 0x1402a115a
test rbx, rbx
je 0x1402a11cb
mov rcx, rbx
call qword [sym.imp.api_ms_win_service_management_l1_1_0.dll_CloseServiceHandle]
nop dword [rax + rax]
mov edi, esi
test edi, edi
jns 0x1402a11d5
mov eax, edi
jmp 0x1402a1208
movdqa xmm0, xmmword [0x140420310]
movdqu xmmword [rbp + 0x17], xmm0
mov word [rbp + 7], si
mov rdx, r14
lea rcx, [rbp + 7]
call fcn.140055574
lea rcx, [rbp + 7]
call fcn.14028dfd4
mov ebx, eax
lea rcx, [rbp + 7]
call fcn.140055f70
mov eax, ebx
mov rcx, qword [rbp + 0x47]
xor rcx, rsp
call fcn.140356560
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
Function at 0x1402a1240
Capabilities:
Modify service

Disassembly:
mov rax, rsp
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0xe0
mov qword [rbp - 0x21], 0xfffffffffffffffe
mov qword [rax + 8], rsi
mov qword [rax + 0x10], rdi
mov rax, qword [0x1405420e0]
xor rax, rsp
mov qword [rbp + 0x47], rax
movdqa xmm0, xmmword [0x140420310]
movdqu xmmword [rbp + 0x17], xmm0
xor esi, esi
mov word [rbp + 7], si
lea rdx, [0x1403cb630]
lea rcx, [rbp + 7]
call fcn.140055574
nop
movdqa xmm0, xmmword [0x140420310]
movdqu xmmword [rbp - 9], xmm0
mov word [rbp - 0x19], si
lea rdx, str.Sense
lea rcx, [rbp - 0x19]
call fcn.140055574
mov qword [rbp - 0x29], rsi
lea r8d, [rsi + 2]
lea rdx, [rbp - 0x19]
lea rcx, [rbp - 0x29]
call fcn.14028dc1c
mov edi, eax
test eax, eax
jns 0x1402a1322
lea rax, [rbp - 0x19]
cmp qword [rbp - 1], 8
cmovae rax, qword [rbp - 0x19]
mov rcx, qword [rbp + 0x5f]
mov qword [rsp + 0x28], rax
lea rax, str.Could_not_get_handle_for_service__ws
mov qword [rsp + 0x20], rax
mov r9d, edi
lea r8, str.amcorewcd_sourcecommon_src_serviceutils.cpp
mov edx, 0x1e6
call fcn.14018588c
mov rcx, qword [rbp - 0x29]
test rcx, rcx
je 0x1402a13fd
call qword [sym.imp.api_ms_win_service_management_l1_1_0.dll_CloseServiceHandle]
nop dword [rax + rax]
jmp 0x1402a13fd
xor r8d, r8d
lea rdx, [rbp + 7]
lea rcx, [rbp + 0x27]
call fcn.14008b320
lea rax, [rbp + 0x27]
cmp qword [rbp + 0x3f], 8
cmovae rax, qword [rbp + 0x27]
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rsi
or edx, 0xffffffff
mov r9d, edx
mov r8d, edx
mov rcx, qword [rbp - 0x29]
call qword [sym.imp.api_ms_win_service_management_l2_1_0.dll_ChangeServiceConfigW]
nop dword [rax + rax]
test eax, eax
jne 0x1402a13dc
lea rdx, [rbp - 0x19]
cmp qword [rbp - 1], 8
cmovae rdx, qword [rbp - 0x19]
lea rax, [rbp + 7]
cmp qword [rbp + 0x1f], 8
cmovae rax, qword [rbp + 7]
mov rcx, qword [rbp + 0x5f]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
lea r9, str.Cannot_add_the_dependency_on__ws_to_service__ws
lea r8, str.amcorewcd_sourcecommon_src_serviceutils.cpp
mov edx, 0x1f7
call fcn.1402297e4
mov edi, eax
lea rcx, [rbp + 0x27]
call fcn.140055f70
cmp qword [rbp - 0x29], rsi
je 0x1402a13fd
mov rcx, qword [rbp - 0x29]
jmp 0x1402a1311
lea rcx, [rbp + 0x27]
call fcn.140055f70
cmp qword [rbp - 0x29], rsi
je 0x1402a13fb
mov rcx, qword [rbp - 0x29]
call qword [sym.imp.api_ms_win_service_management_l1_1_0.dll_CloseServiceHandle]
nop dword [rax + rax]
mov edi, esi
lea rcx, [rbp - 0x19]
call fcn.140055f70
nop
lea rcx, [rbp + 7]
call fcn.140055f70
mov eax, edi
mov rcx, qword [rbp + 0x47]
xor rcx, rsp
call fcn.140356560
lea r11, [rsp + 0xe0]
mov rsi, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
mov rsp, r11
pop rbp
ret
Function at 0x1402a95ec
Capabilities:
Check if file exists
Get common file path

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
push rbp
lea rbp, [rsp - 0x1a0]
sub rsp, 0x2a0
mov rax, qword [0x1405420e0]
xor rax, rsp
mov qword [rbp + 0x190], rax
xor edx, edx
lea rcx, [rbp - 0x80]
mov r8d, 0x208
lea rdi, [0x14055fc38]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
mov edx, 0x104
lea rcx, [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
nop dword [rax + rax]
xor ebx, ebx
test eax, eax
jne 0x1402a96c6
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
cmovle ecx, eax
mov dword [rsp + 0x30], ecx
call fcn.1400550c0
mov rcx, qword [rax + 8]
cmp dword [rcx], 2
jbe 0x1402a96bd
lea rax, [rsp + 0x30]
mov qword [rsp + 0x78], WSAStartup
mov qword [rsp + 0x60], rax
lea edx, [rbx + 4]
lea rax, str.DataCollection_adapter_failed_to_read_Windows_Directory
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x40]
xor r9d, r9d
mov qword [rsp + 0x28], rax
xor r8d, r8d
mov dword [rsp + 0x20], edx
lea rdx, [0x140488a5b]
call fcn.140001208
lea rdx, [0x1403cb630]
jmp 0x1402a96ca
lea rdx, [rbp - 0x80]
mov rcx, rdi
mov qword [0x14055fc48], rbx
mov qword [0x14055fc50], 7
mov word [0x14055fc38], bx
call fcn.140055574
mov rax, rdi
mov rcx, qword [rbp + 0x190]
xor rcx, rsp
call fcn.140356560
lea r11, [rsp + 0x2a0]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
mov rsp, r11
pop rbp
ret

Function at 0x1402a9718
Capabilities:
Check if file exists
Get common file path

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
push rbp
lea rbp, [rsp - 0x1a0]
sub rsp, 0x2a0
mov rax, qword [0x1405420e0]
xor rax, rsp
mov qword [rbp + 0x190], rax
xor edx, edx
lea rcx, [rbp - 0x80]
mov r8d, 0x208
lea rdi, [0x14055fc58]
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
lea rdx, [rsp + 0x38]
mov dword [rsp + 0x38], 0x104
lea rcx, [rbp - 0x80]
call qword [sym.imp.USERENV.dll_GetProfilesDirectoryW]
nop dword [rax + rax]
xor ebx, ebx
test eax, eax
jne 0x1402a97fa
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
cmovle ecx, eax
mov dword [rsp + 0x30], ecx
call fcn.1400550c0
mov rcx, qword [rax + 8]
cmp dword [rcx], 2
jbe 0x1402a97f1
lea rax, [rsp + 0x30]
mov qword [rsp + 0x78], WSAStartup
mov qword [rsp + 0x60], rax
lea edx, [rbx + 4]
lea rax, str.DataCollection_adapter_failed_to_read_Profiles_Directory
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x40]
xor r9d, r9d
mov qword [rsp + 0x28], rax
xor r8d, r8d
mov dword [rsp + 0x20], edx
lea rdx, [0x140488a5b]
call fcn.140001208
lea rdx, [0x1403cb630]
jmp 0x1402a97fe
lea rdx, [rbp - 0x80]
mov rcx, rdi
mov qword [0x14055fc68], rbx
mov qword [0x14055fc70], 7
mov word [0x14055fc58], bx
call fcn.140055574
mov rax, rdi
mov rcx, qword [rbp + 0x190]
xor rcx, rsp
call fcn.140356560
lea r11, [rsp + 0x2a0]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
mov rsp, r11
pop rbp
ret
Function at 0x1402b5c9c
Capabilities:
Create directory

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
xor ebx, ebx
mov dil, dl
cmp qword [rcx + 0x18], 8
jb 0x1402b5cb5
mov rcx, qword [rcx]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
nop dword [rax + rax]
cmp eax, 1
je 0x1402b5cef
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
cmp dil, 1
jne 0x1402b5ce1
cmp eax, 0xb7
je 0x1402b5cef
movzx ebx, ax
or ebx, 0x80070000
test eax, eax
cmovle ebx, eax
mov eax, ebx
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x1402b9324
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push r14
sub rsp, 0x20
mov rdi, r8
mov r14, rdx
mov r8, rcx
lea rsi, [rdi + 0x10]
cmp qword [rsi + 0x18], 8
mov r9, rsi
mov rdx, qword [rsi + 0x10]
jb 0x1402b9357
mov r9, qword [rsi]
add rdx, rdx
xor r11d, r11d
movabs rax, 0xcbf29ce484222325
mov r10, r9
lea rcx, [rdx + r9]
cmp r9, rcx
cmova rdx, r11
test rdx, rdx
je 0x1402b939d
movzx ecx, byte [r10]
movabs r11, 0x100000001b3
xor rax, rcx
inc r10
mov rcx, r10
sub rcx, r9
imul rax, r11
cmp rcx, rdx
jne 0x1402b937a
mov rdx, qword [r8 + 0x30]
mov rcx, qword [r8 + 0x18]
and rdx, rax
add rdx, rdx
cmp qword [rcx + rdx*8 + 8], rdi
jne 0x1402b93d5
cmp qword [rcx + rdx*8], rdi
jne 0x1402b93ca
mov rax, qword [r8 + 8]
mov qword [rcx + rdx*8], rax
mov rcx, qword [r8 + 0x18]
mov rax, qword [r8 + 8]
jmp 0x1402b93ce
mov rax, qword [rdi + 8]
mov qword [rcx + rdx*8 + 8], rax
jmp 0x1402b93e2
cmp qword [rcx + rdx*8], rdi
jne 0x1402b93e2
mov rax, qword [rdi]
mov qword [rcx + rdx*8], rax
mov rax, qword [rdi + 8]
lea rcx, [rsi + 0x20]
mov rbx, qword [rdi]
mov qword [rax], rbx
mov rdx, qword [rdi]
mov rax, qword [rdi + 8]
mov qword [rdx + 8], rax
dec qword [r8 + 0x10]
call fcn.14006fefc
mov rcx, rsi
call fcn.140055f70
mov edx, 0x48
mov rcx, rdi
call fcn.140356b5c
mov rsi, qword [rsp + 0x38]
mov rax, r14
mov rdi, qword [rsp + 0x40]
mov qword [r14], rbx
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop r14
ret
Function at 0x1402c1fb0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 8], rcx
push rbx
push rsi
push rdi
push r14
push r15
sub rsp, 0x40
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov rbx, r9
mov r10, r8
mov r14, rdx
mov rsi, rcx
movabs rax, 0xcbf29ce484222325
lea r9, [r8 + 8]
cmp r9, r8
sbb rdx, rdx
not rdx
and edx, 8
cmp r8, r9
ja 0x1402c201c
movzx ecx, byte [r8]
xor rax, rcx
movabs r9, 0x100000001b3
imul rax, r9
inc r8
mov rcx, r8
sub rcx, r10
cmp rcx, rdx
jne 0x1402c1ff9
mov r8, qword [rsi + 0x30]
and r8, rax
add r8, r8
mov rcx, qword [rsi + 0x18]
mov rdi, qword [rsi + 8]
cmp qword [rcx + r8*8], rdi
je 0x1402c203c
mov rdi, qword [rcx + r8*8 + 8]
mov rdi, qword [rdi]
mov r9, rdi
cmp r9, qword [rcx + r8*8]
je 0x1402c2079
mov rdi, qword [rdi + 8]
mov r9, rdi
mov rax, qword [rdi + 0x10]
cmp qword [r10], rax
jne 0x1402c203f
mov r8, rbx
lea rdx, [rsp + 0x80]
lea rcx, [rsi + 8]
call fcn.1402c2448
mov qword [r14], rdi
mov byte [r14 + 8], 0
mov rax, r14
jmp 0x1402c219e
mov qword [rsp + 0x80], rbx
mov rax, qword [rbx]
cmp r9, rax
je 0x1402c20b6
mov rcx, qword [rbx + 8]
mov qword [rcx], rax
mov rcx, qword [rax + 8]
mov qword [rcx], r9
mov rcx, qword [r9 + 8]
mov qword [rcx], rbx
mov rdx, qword [r9 + 8]
mov rcx, qword [rax + 8]
mov qword [r9 + 8], rcx
mov rcx, qword [rbx + 8]
mov qword [rax + 8], rcx
mov qword [rbx + 8], rdx
mov rdx, qword [rsi + 0x18]
mov rax, qword [rdx + r8*8]
cmp rax, qword [rsi + 8]
jne 0x1402c20d3
mov qword [rdx + r8*8], rbx
mov rax, qword [rsi + 0x18]
mov qword [rax + r8*8 + 8], rbx
jmp 0x1402c2102
cmp rax, r9
jne 0x1402c20de
mov qword [rdx + r8*8], rbx
jmp 0x1402c2102
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax]
mov qword [rdx + r8*8 + 8], rcx
cmp rcx, rbx
je 0x1402c2102
mov rdx, qword [rsi + 0x18]
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax + 8]
mov qword [rdx + r8*8 + 8], rcx
mov rax, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x38]
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
movss xmm1, dword [0x1404202fc]
test rax, rax
jns 0x1402c2123
addss xmm0, xmm1
xorps xmm2, xmm2
cvtsi2ss xmm2, rdx
test rdx, rdx
jns 0x1402c2134
addss xmm2, xmm1
divss xmm0, xmm2
comiss xmm0, dword [rsi]
jbe 0x1402c2193
cmp rdx, 0x200
jae 0x1402c214c
shl rdx, 3
jmp 0x1402c215e
movabs rax, 0xfffffffffffffff
cmp rdx, rax
jae 0x1402c215e
add rdx, rdx
mov rcx, rsi
call fcn.14005e790
mov rax, qword [rsi + 8]
cmp qword [rax], rax
je 0x1402c2193
mov r15, qword [rax + 8]
mov rdi, qword [rsi + 8]
mov rdi, qword [rdi]
lea r8, [rdi + 0x10]
mov r9, rdi
lea rdx, [rsp + 0x28]
mov rcx, rsi
call fcn.1402c1fb0
cmp rdi, r15
jne 0x1402c2173
mov qword [r14], rbx
mov byte [r14 + 8], 1
mov rax, r14
add rsp, 0x40
pop r15
pop r14
pop rdi
pop rsi
pop rbx
ret
Function at 0x1402c254c
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
lea r11, [r8 + 0x10]
mov rsi, rdx
lea r9, [r11 + 8]
mov r10, rcx
cmp r9, r11
movabs rax, 0xcbf29ce484222325
mov rdi, r11
sbb rbx, rbx
not rbx
and ebx, 8
cmp r11, r9
ja 0x1402c25a9
movzx ecx, byte [rdi]
movabs rdx, 0x100000001b3
xor rax, rcx
inc rdi
mov rcx, rdi
sub rcx, r11
imul rax, rdx
cmp rcx, rbx
jne 0x1402c2587
mov rdx, qword [r10 + 0x30]
mov rcx, qword [r10 + 0x18]
and rdx, rax
add rdx, rdx
cmp qword [rcx + rdx*8 + 8], r8
jne 0x1402c25e1
cmp qword [rcx + rdx*8], r8
jne 0x1402c25d6
mov rax, qword [r10 + 8]
mov qword [rcx + rdx*8], rax
mov rcx, qword [r10 + 0x18]
mov rax, qword [r10 + 8]
jmp 0x1402c25da
mov rax, qword [r8 + 8]
mov qword [rcx + rdx*8 + 8], rax
jmp 0x1402c25ee
cmp qword [rcx + rdx*8], r8
jne 0x1402c25ee
mov rax, qword [r8]
mov qword [rcx + rdx*8], rax
lea rcx, [r10 + 8]
mov rdx, rsi
call fcn.1402c2448
mov rbx, qword [rsp + 0x30]
mov rax, rsi
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
Function at 0x1402c29e0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
sub rsp, 0x40
mov rbp, r8
mov dword [rsp + 0x68], edx
mov r10d, edx
lea rbx, [rcx + 0x20]
movabs rax, 0xcbf29ce484222325
lea r9, [rsp + 0x68]
movzx ecx, byte [r9]
movabs rdx, 0x100000001b3
xor rax, rcx
inc r9
imul rax, rdx
lea rcx, [rsp + 0x6c]
cmp r9, rcx
jne 0x1402c2a09
mov r8, qword [rbx + 0x30]
mov r9, qword [rbx + 0x18]
and r8, rax
mov rdx, qword [rbx + 8]
add r8, r8
mov rax, qword [r9 + r8*8]
cmp qword [r9 + r8*8], rdx
jne 0x1402c2a4c
mov rcx, rdx
jmp 0x1402c2a54
mov rcx, qword [r9 + r8*8 + 8]
mov rcx, qword [rcx]
cmp rax, rcx
je 0x1402c2a69
cmp dword [rax + 0x10], r10d
je 0x1402c2a64
mov rax, qword [rax]
jmp 0x1402c2a41
mov rcx, rax
jmp 0x1402c2a6f
mov rax, rdx
mov rcx, rdx
cmp rcx, rdx
jne 0x1402c2af3
mov rdi, qword [rdx]
lea rax, [rsp + 0x68]
mov qword [rsp + 0x60], rax
mov rdx, rdi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov rsi, qword [rdi + 8]
mov r8, rsi
call fcn.1402c2fb8
mov rdx, rax
movabs rcx, 0x666666666666665
mov rax, qword [rbx + 0x10]
sub rcx, rax
cmp rcx, 1
jae 0x1402c2ac8
lea rcx, str.list_T__too_long
call qword [sym.imp.msvcp_win.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_]
nop dword [rax + rax]
int3
inc rax
mov rcx, rbx
mov qword [rbx + 0x10], rax
mov qword [rdi + 8], rdx
mov qword [rsi], rdx
lea rdx, [rsp + 0x30]
mov r9, qword [rbx + 8]
mov r9, qword [r9]
lea r8, [r9 + 0x10]
call fcn.1402c2da0
mov rax, qword [rsp + 0x30]
inc dword [rax + 0x18]
add qword [rax + 0x20], rbp
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
Function at 0x1402c2da0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 8], rcx
push rbx
push rsi
push rdi
push r14
push r15
sub rsp, 0x40
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov rbx, r9
mov r10, r8
mov r14, rdx
mov rsi, rcx
movabs rax, 0xcbf29ce484222325
mov rdx, r8
lea r9, [r8 + 4]
cmp r9, r8
sbb r8, r8
not r8
and r8d, 4
cmp rdx, r9
ja 0x1402c2e0f
movzx ecx, byte [rdx]
xor rax, rcx
movabs r9, 0x100000001b3
imul rax, r9
inc rdx
mov rcx, rdx
sub rcx, r10
cmp rcx, r8
jne 0x1402c2ded
mov r8, qword [rsi + 0x30]
and r8, rax
add r8, r8
mov rcx, qword [rsi + 0x18]
mov rdi, qword [rsi + 8]
cmp qword [rcx + r8*8], rdi
je 0x1402c2e2f
mov rdi, qword [rcx + r8*8 + 8]
mov rdi, qword [rdi]
mov r9, rdi
cmp r9, qword [rcx + r8*8]
je 0x1402c2e7d
mov rdi, qword [rdi + 8]
mov r9, rdi
mov eax, dword [rdi + 0x10]
cmp dword [r10], eax
jne 0x1402c2e32
mov rcx, qword [rbx + 8]
mov rax, qword [rbx]
mov qword [rcx], rax
mov rcx, qword [rbx]
mov rax, qword [rbx + 8]
mov qword [rcx + 8], rax
dec qword [rsi + 0x10]
mov edx, 0x28
mov rcx, rbx
call fcn.140356b5c
mov qword [r14], rdi
mov byte [r14 + 8], 0
mov rax, r14
jmp 0x1402c2fa2
mov qword [rsp + 0x80], rbx
mov rax, qword [rbx]
cmp r9, rax
je 0x1402c2eba
mov rcx, qword [rbx + 8]
mov qword [rcx], rax
mov rcx, qword [rax + 8]
mov qword [rcx], r9
mov rcx, qword [r9 + 8]
mov qword [rcx], rbx
mov rdx, qword [r9 + 8]
mov rcx, qword [rax + 8]
mov qword [r9 + 8], rcx
mov rcx, qword [rbx + 8]
mov qword [rax + 8], rcx
mov qword [rbx + 8], rdx
mov rdx, qword [rsi + 0x18]
mov rax, qword [rdx + r8*8]
cmp rax, qword [rsi + 8]
jne 0x1402c2ed7
mov qword [rdx + r8*8], rbx
mov rax, qword [rsi + 0x18]
mov qword [rax + r8*8 + 8], rbx
jmp 0x1402c2f06
cmp rax, r9
jne 0x1402c2ee2
mov qword [rdx + r8*8], rbx
jmp 0x1402c2f06
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax]
mov qword [rdx + r8*8 + 8], rcx
cmp rcx, rbx
je 0x1402c2f06
mov rdx, qword [rsi + 0x18]
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax + 8]
mov qword [rdx + r8*8 + 8], rcx
mov rax, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x38]
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
movss xmm1, dword [0x1404202fc]
test rax, rax
jns 0x1402c2f27
addss xmm0, xmm1
xorps xmm2, xmm2
cvtsi2ss xmm2, rdx
test rdx, rdx
jns 0x1402c2f38
addss xmm2, xmm1
divss xmm0, xmm2
comiss xmm0, dword [rsi]
jbe 0x1402c2f97
cmp rdx, 0x200
jae 0x1402c2f50
shl rdx, 3
jmp 0x1402c2f62
movabs rax, 0xfffffffffffffff
cmp rdx, rax
jae 0x1402c2f62
add rdx, rdx
mov rcx, rsi
call fcn.14005e790
mov rax, qword [rsi + 8]
cmp qword [rax], rax
je 0x1402c2f97
mov r15, qword [rax + 8]
mov rdi, qword [rsi + 8]
mov rdi, qword [rdi]
lea r8, [rdi + 0x10]
mov r9, rdi
lea rdx, [rsp + 0x28]
mov rcx, rsi
call fcn.1402c2da0
cmp rdi, r15
jne 0x1402c2f77
mov qword [r14], rbx
mov byte [r14 + 8], 1
mov rax, r14
add rsp, 0x40
pop r15
pop r14
pop rdi
pop rsi
pop rbx
ret
Function at 0x1402c2ffc
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
lea r11, [r8 + 0x10]
mov rsi, rdx
lea r9, [r11 + 4]
mov r10, rcx
cmp r9, r11
movabs rax, 0xcbf29ce484222325
mov rdi, r11
sbb rbx, rbx
not rbx
and ebx, 4
cmp r11, r9
ja 0x1402c3059
movzx ecx, byte [rdi]
movabs rdx, 0x100000001b3
xor rax, rcx
inc rdi
mov rcx, rdi
sub rcx, r11
imul rax, rdx
cmp rcx, rbx
jne 0x1402c3037
mov rdx, qword [r10 + 0x30]
mov rcx, qword [r10 + 0x18]
and rdx, rax
add rdx, rdx
cmp qword [rcx + rdx*8 + 8], r8
jne 0x1402c3091
cmp qword [rcx + rdx*8], r8
jne 0x1402c3086
mov rax, qword [r10 + 8]
mov qword [rcx + rdx*8], rax
mov rcx, qword [r10 + 0x18]
mov rax, qword [r10 + 8]
jmp 0x1402c308a
mov rax, qword [r8 + 8]
mov qword [rcx + rdx*8 + 8], rax
jmp 0x1402c309e
cmp qword [rcx + rdx*8], r8
jne 0x1402c309e
mov rax, qword [r8]
mov qword [rcx + rdx*8], rax
mov rax, qword [r8 + 8]
mov edx, 0x28
mov rbx, qword [r8]
mov qword [rax], rbx
mov rcx, qword [r8]
mov rax, qword [r8 + 8]
mov qword [rcx + 8], rax
mov rcx, r8
dec qword [r10 + 0x10]
call fcn.140356b5c
mov qword [rsi], rbx
mov rax, rsi
mov rsi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret