joyce8/EMBER2024-capa huggingface dataset:
Function at 0x6fd6f0
Capabilities:
Enumerate gui resources

Disassembly:
push rdi
push rsi
push rbx
sub rsp, 0x20
mov rbx, rcx
mov esi, edx
mov rax, qword [0x00931e50]
cmp qword [rax + 0x2e0], 0
je 0x6fd8b4
test sil, sil
jne 0x6fd7dc
cmp dword [rbx + 0x138], 0
jne 0x6fd7cd
mov rcx, rbx
call fcn.00701f00
lea rcx, [0x006fd5b0]
mov rdx, rax
call sub.user32.dll_EnumWindows
cmp qword [rbx + 0xa8], 0
je 0x6fd78f
mov rax, qword [0x00931e50]
cmp byte [rax + 0x193], 0
je 0x6fd78f
mov rax, qword [rbx + 0x1a0]
test rax, rax
je 0x6fd769
mov rax, qword [rax - 8]
lea rdi, [rax - 1]
test edi, edi
jl 0x6fd78e
mov rax, qword [rbx + 0x1a0]
movsxd rcx, edi
mov rcx, qword [rax + rcx*8]
xor edx, edx
call sub.user32.dll_ShowWindow
sub edi, 1
cmp edi, 0xffffffff
jne 0x6fd771
nop
mov rax, qword [rbx + 0x130]
mov edi, dword [rax + 0x10]
sub edi, 1
test edi, edi
jl 0x6fd7cc
mov rcx, qword [rbx + 0x130]
mov edx, edi
call fcn.00502500
mov rcx, rax
test sil, sil
setne al
movzx rax, al
neg eax
mov edx, eax
call sub.user32.dll_ShowOwnedPopups
sub edi, 1
cmp edi, 0xffffffff
jne 0x6fd7a0
nop
lea rax, [rbx + 0x138]
add dword [rax], 1
jmp 0x6fd8b4
cmp dword [rbx + 0x138], 0
jle 0x6fd8b4
lea rax, [rbx + 0x138]
sub dword [rax], 1
cmp dword [rbx + 0x138], 0
jne 0x6fd8b4
cmp qword [rbx + 0xa8], 0
je 0x6fd853
mov rax, qword [0x00931e50]
cmp byte [rax + 0x193], 0
je 0x6fd853
mov rax, qword [rbx + 0x1a0]
test rax, rax
je 0x6fd82a
mov rax, qword [rax - 8]
lea rdi, [rax - 1]
test edi, edi
jl 0x6fd852
mov rax, qword [rbx + 0x1a0]
movsxd rcx, edi
mov rcx, qword [rax + rcx*8]
mov edx, 5
call sub.user32.dll_ShowWindow
sub edi, 1
cmp edi, 0xffffffff
jne 0x6fd832
nop
mov rax, qword [rbx + 0x130]
mov edi, dword [rax + 0x10]
sub edi, 1
test edi, edi
jl 0x6fd890
mov rcx, qword [rbx + 0x130]
mov edx, edi
call fcn.00502500
mov rcx, rax
test sil, sil
setne al
movzx rax, al
neg eax
mov edx, eax
call sub.user32.dll_ShowOwnedPopups
sub edi, 1
cmp edi, 0xffffffff
jne 0x6fd864
nop
mov rax, qword [rbx + 0x130]
mov rcx, rax
mov rsi, qword [rax]
call qword [rsi + 0x10]
lea rcx, [rbx + 0x1a0]
mov rdx, qword [0x006e3198]
call fcn.004152c0
add rsp, 0x20
pop rbx
pop rsi
pop rdi
ret

Function at 0x6febd0
Capabilities:
Get graphical window text

Disassembly:
push rbp
push rsi
push rbx
sub rsp, 0x220
mov rbp, rsp
mov rbx, rcx
mov rsi, rdx
cmp byte [rbx + 0x158], 0
je 0x6fec3c
cmp byte [rbx + 0x193], 0
jne 0x6fec3c
mov rcx, qword [rbx + 0x2e0]
lea rdx, [rbp + 0x20]
mov r8d, pe_nt_image_headers64
call sub.user32.dll_GetWindowTextW
mov rcx, rsi
lea rdx, [rbp + 0x20]
mov r8d, eax
call fcn.00410b50
xor eax, eax
mov rcx, qword [rsi]
test rcx, rcx
je 0x6fec27
mov eax, dword [rcx - 4]
test eax, eax
jne 0x6fec4b
mov rcx, rsi
mov rdx, qword [rbx + 0x118]
call fcn.00410ec0
jmp 0x6fec4b
mov rcx, rsi
mov rdx, qword [rbx + 0x118]
call fcn.00410ec0
mov rax, rsi
lea rsp, [rbp + 0x220]
pop rbx
pop rsi
pop rbp
ret
Function at 0x7022f0
Capabilities:
Hide graphical window from taskbar

Disassembly:
push rdi
push rsi
push rbx
sub rsp, 0x20
mov rbx, rcx
mov esi, edx
cmp sil, byte [rbx + 0x193]
je 0x7024b1
mov byte [rbx + 0x193], sil
mov rax, qword [rbx + 0xa8]
test rax, rax
je 0x70241b
mov rcx, rax
call fcn.005feb60
test al, al
je 0x70241b
mov rax, qword [rbx + 0xa8]
movzx rax, word [rax + 0x34]
test ax, 0x10
jne 0x70241b
mov rax, qword [rbx + 0xa8]
movzx rax, word [rax + 0x34]
test ax, 2
jne 0x70241b
test sil, sil
je 0x70239a
mov rcx, qword [rbx + 0x2e0]
xor edx, edx
xor r8, r8
call fcn.006eac20
mov rcx, qword [rbx + 0xa8]
call fcn.005fe4f0
mov rcx, rax
mov dl, 1
mov rax, qword [rbx + 0xa8]
movzx r8, byte [rax + 0xa9]
call fcn.006eac20
jmp 0x702404
call sub.user32.dll_GetForegroundWindow
mov rdi, rax
mov rcx, qword [rbx + 0xa8]
call fcn.005fe4f0
cmp rdi, rax
sete dil
mov rcx, qword [rbx + 0xa8]
call fcn.005fe4f0
mov rcx, rax
xor edx, edx
mov rax, qword [rbx + 0xa8]
movzx r8, byte [rax + 0xa9]
call fcn.006eac20
mov rcx, qword [rbx + 0x2e0]
mov dl, 1
mov r8b, 1
call fcn.006eac20
test dil, dil
je 0x702404
mov rcx, qword [rbx + 0xa8]
call fcn.005fe4f0
mov rcx, rax
call sub.user32.dll_SetForegroundWindow
mov rcx, qword [rbx + 0xa8]
mov edx, 0xb033
xor r8, r8
xor r9, r9
call fcn.005f1ee0
test sil, sil
je 0x702460
mov rcx, qword [rbx + 0x2e0]
mov rax, rcx
mov rsi, rcx
mov rcx, rax
mov edx, 0xffffffec
call sub.user32.dll_GetWindowLongPtrW
or rax, 0x80
mov rcx, rsi
mov edx, 0xffffffec
mov r8, rax
call sub.user32.dll_SetWindowLongPtrW
mov rcx, qword [rbx + 0x2e0]
xor edx, edx
call sub.user32.dll_SetWindowTextW
jmp 0x7024b1
mov rcx, qword [rbx + 0x2e0]
mov rax, rcx
mov rsi, rcx
mov rcx, rax
mov edx, 0xffffffec
call sub.user32.dll_GetWindowLongPtrW
and rax, 0xffffffffffffff7f
mov rcx, rsi
mov edx, 0xffffffec
mov r8, rax
call sub.user32.dll_SetWindowLongPtrW
mov rsi, qword [rbx + 0x2e0]
mov rax, qword [rbx + 0x118]
mov rcx, rax
call fcn.00411c60
mov rcx, rsi
mov rdx, rax
call sub.user32.dll_SetWindowTextW
add rsp, 0x20
pop rbx
pop rsi
pop rdi
ret
Function at 0x70d350
Capabilities:
Hide graphical window

Disassembly:
push r13
push rdi
push rsi
push rbx
sub rsp, 0x38
mov rbx, rcx
cmp qword [rbx + 0xd0], 0
jne 0x70d40b
mov rcx, qword [rbx + 0x10]
call fcn.005fe4f0
mov rcx, qword [0x00619b58]
mov dl, 1
mov r8, rax
call fcn.005f5090
mov qword [rbx + 0xd0], rax
mov rsi, qword [rbx + 0xd0]
mov rcx, rsi
xor edx, edx
call fcn.0062d150
lea rax, [rsi + 0x4d8]
mov qword [rax + 8], rbx
lea rcx, [0x0070c9d0]
mov qword [rax], rcx
mov rcx, qword [rbx + 0xd0]
call fcn.005fe4f0
mov rdi, rax
mov rcx, rsi
mov edx, 3
mov rax, qword [rsi]
call qword [rax + 0x1c0]
mov rcx, rdi
xor edx, edx
xor r8, r8
xor r9, r9
mov dword [rsp + 0x20], 0
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x30], 8
call sub.user32.dll_SetWindowPos
mov rcx, qword [rbx + 0xd0]
call fcn.005fe4f0
mov rcx, rax
xor edx, edx
call sub.user32.dll_ShowWindow
cmp qword [rbx + 0xf0], 0
jne 0x70d4ba
mov rcx, qword [rbx + 0x10]
call fcn.005fe4f0
mov rcx, qword [0x00619b58]
mov dl, 1
mov r8, rax
call fcn.005f5090
mov qword [rbx + 0xf0], rax
mov rsi, qword [rbx + 0xf0]
mov rcx, rsi
mov dl, 1
call fcn.0062d150
lea rax, [rsi + 0x4d8]
mov qword [rax + 8], rbx
lea rcx, [0x0070ca30]
mov qword [rax], rcx
mov rcx, qword [rbx + 0xf0]
call fcn.005fe4f0
mov rdi, rax
mov rcx, rsi
mov edx, 2
mov rax, qword [rsi]
call qword [rax + 0x1c0]
mov rcx, rdi
xor edx, edx
xor r8, r8
xor r9, r9
mov dword [rsp + 0x20], eax
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x30], 8
call sub.user32.dll_SetWindowPos
mov rcx, qword [rbx + 0xf0]
call fcn.005fe4f0
mov rcx, rax
xor edx, edx
call sub.user32.dll_ShowWindow
cmp qword [rbx + 0xe0], 0
jne 0x70d562
mov rcx, qword [rbx + 0x10]
call fcn.005fe4f0
mov rcx, qword [0x0061ac00]
mov dl, 1
mov r8, rax
call fcn.005f5090
mov qword [rbx + 0xe0], rax
mov rsi, qword [rbx + 0xe0]
mov byte [rsi + 0x4a8], 1
mov rcx, qword [rbx + 0xe0]
call fcn.005fe4f0
mov rdi, rax
mov rcx, rsi
mov edx, 2
mov rax, qword [rsi]
call qword [rax + 0x1c0]
mov r13d, eax
mov rcx, rsi
mov edx, 3
mov rax, qword [rsi]
call qword [rax + 0x1c0]
mov rcx, rdi
xor edx, edx
xor r8, r8
xor r9, r9
mov dword [rsp + 0x20], r13d
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x30], 8
call sub.user32.dll_SetWindowPos
mov rcx, qword [rbx + 0xe0]
call fcn.005fe4f0
mov rcx, rax
xor edx, edx
call sub.user32.dll_ShowWindow
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop r13
ret
Function at 0x7a1080
Capabilities:
Read http header

Disassembly:
push rbp
push rsi
push rbx
sub rsp, 0x90
mov rbp, rsp
mov qword [rbp + 0x30], rcx
mov qword [rbp + 0x38], rdx
mov dword [rbp + 0x44], r8d
mov qword [rbp + 0x48], r9
mov qword [rbp + 0x50], 0
mov qword [rbp + 0x58], 0
nop
mov ebx, dword [rbp + 0x44]
mov rax, qword [rbp + 0x48]
test rax, rax
je 0x7a10ce
or ebx, 0xffff
mov rcx, qword [rbp + 0x48]
call fcn.00411c60
mov rsi, rax
jmp 0x7a10d0
xor esi, esi
mov dword [rbp + 0x8c], 0
mov rcx, qword [rbp + 0x38]
mov edx, ebx
mov r8, rsi
xor r9, r9
lea rax, [rbp + 0x8c]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0
call sub.winhttp.dll_WinHttpQueryHeaders
call sub.kernel32.dll_GetLastError
cmp eax, 0x2f76
jne 0x7a111a
mov rcx, qword [rbp + 0x30]
call fcn.00410850
jmp 0x7a1238
call sub.kernel32.dll_GetLastError
cmp eax, 0x7a
je 0x7a117c
call sub.kernel32.dll_GetLastError
mov dword [rbp + 0x60], eax
mov byte [rbp + 0x68], 0
call sub.kernel32.dll_GetLastError
lea rcx, [rbp + 0x58]
mov edx, eax
mov r8, qword [0x00931f90]
call fcn.00441550
mov rax, qword [rbp + 0x58]
mov qword [rbp + 0x70], rax
mov byte [rbp + 0x78], 0x11
mov rcx, qword [0x007a76a0]
mov dl, 1
mov r8, qword [0x009234b0]
lea r9, [rbp + 0x60]
mov dword [rsp + 0x20], 1
call fcn.00443d30
mov rcx, rax
call fcn.0040fb20
mov rcx, qword [rbp + 0x30]
mov edx, dword [rbp + 0x8c]
shr edx, 1
sub edx, 1
call fcn.00411ee0
xor eax, eax
mov rcx, qword [rbp + 0x30]
mov rcx, qword [rcx]
test rcx, rcx
je 0x7a11a2
mov eax, dword [rcx - 4]
test eax, eax
jle 0x7a1238
mov rax, qword [rbp + 0x30]
mov rcx, qword [rax]
call fcn.00411c60
mov rcx, qword [rbp + 0x38]
mov edx, ebx
mov r8, rsi
mov r9, rax
lea rax, [rbp + 0x8c]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0
call sub.winhttp.dll_WinHttpQueryHeaders
test eax, eax
jne 0x7a1238
call sub.kernel32.dll_GetLastError
mov dword [rbp + 0x60], eax
mov byte [rbp + 0x68], 0
call sub.kernel32.dll_GetLastError
lea rcx, [rbp + 0x50]
mov edx, eax
mov r8, qword [0x00931f90]
call fcn.00441550
mov rax, qword [rbp + 0x50]
mov qword [rbp + 0x70], rax
mov byte [rbp + 0x78], 0x11
mov rcx, qword [0x007a76a0]
mov dl, 1
mov r8, qword [0x009234b0]
lea r9, [rbp + 0x60]
mov dword [rsp + 0x20], 1
call fcn.00443d30
mov rcx, rax
call fcn.0040fb20
nop
lea rcx, [rbp + 0x50]
mov edx, 2
call fcn.00410930
mov rax, qword [rbp + 0x30]
lea rsp, [rbp + 0x90]
pop rbx
pop rsi
pop rbp
ret
Function at 0x7a14b0
Capabilities:
Initialize winhttp library

Disassembly:
push rbp
push rbx
sub rsp, 0x48
mov rbp, rsp
mov qword [rbp + 0x38], rbp
mov qword [rbp + 0x60], rcx
mov byte [rbp + 0x68], dl
cmp byte [rbp + 0x68], 0
je 0x7a14dc
mov rcx, qword [rbp + 0x60]
movzx rdx, byte [rbp + 0x68]
call fcn.0040e050
mov qword [rbp + 0x60], rax
nop
mov rcx, qword [rbp + 0x60]
call fcn.007b02f0
mov rcx, qword [0x0079ee60]
mov dl, 1
call fcn.007a5c80
mov rcx, qword [rbp + 0x60]
mov qword [rcx + 0x140], rax
mov rcx, qword [0x0077ee08]
mov dl, 1
call fcn.00795310
mov rcx, qword [rbp + 0x60]
mov qword [rcx + 0x138], rax
mov rcx, qword [0x0079d8b8]
call fcn.007a54d0
lea rcx, [0x007a15f0]
mov edx, 1
xor r8, r8
xor r9, r9
mov dword [rsp + 0x20], 0
call sub.winhttp.dll_WinHttpOpen
mov rcx, qword [rbp + 0x60]
mov qword [rcx + 0x130], rax
test rax, rax
jne 0x7a1570
mov rcx, qword [0x007a77e0]
mov dl, 1
mov r8, qword [0x00923910]
call fcn.00443b70
mov rcx, rax
call fcn.0040fb20
mov rax, qword [rbp + 0x60]
mov rcx, qword [rax + 0x130]
lea rdx, [0x007a12a0]
mov r8d, 0x10010
xor r9, r9
call sub.winhttp.dll_WinHttpSetStatusCallback
cmp byte [rbp + 0x68], 0
je 0x7a15d3
mov rcx, qword [rbp + 0x60]
call fcn.0040e090
mov qword [rbp + 0x60], rax
jmp 0x7a15d3
mov rax, qword [rbp + 0x60]
lea rsp, [rbp + 0x48]
pop rbx
pop rbp
ret
Function at 0x7a3350
Capabilities:
Prepare http request

Disassembly:
push rbp
push rsi
push rbx
sub rsp, 0xa0
mov rbp, rsp
mov qword [rbp + 0x40], rcx
mov qword [rbp + 0x48], rdx
mov qword [rbp + 0x50], 0
mov qword [rbp + 0x58], 0
mov qword [rbp + 0x88], 0
mov qword [rbp + 0x80], 0
nop
mov rax, qword [rbp + 0x40]
mov byte [rax + 0x141], 0
mov byte [rax + 0x140], 0
mov rax, qword [rbp + 0x48]
cmp dword [rax + 0x20], 0
jle 0x7a33b3
mov rax, qword [rbp + 0x48]
movzx rbx, word [rax + 0x20]
jmp 0x7a33b5
xor ebx, ebx
mov rax, qword [rbp + 0x48]
mov rcx, qword [rax + 0x18]
call fcn.00411c60
mov rcx, qword [rbp + 0x40]
mov rcx, qword [rcx + 0xa0]
mov rcx, qword [rcx + 0x130]
mov rdx, rax
mov r8d, ebx
xor r9, r9
call sub.winhttp.dll_WinHttpConnect
mov rcx, qword [rbp + 0x40]
mov qword [rcx + 0x118], rax
test rax, rax
jne 0x7a3434
mov rax, qword [rbp + 0x48]
mov rax, qword [rax + 0x18]
mov qword [rbp + 0x90], rax
mov byte [rbp + 0x98], 0x11
mov rcx, qword [0x007a7930]
mov dl, 1
mov r8, qword [0x00922b90]
lea r9, [rbp + 0x90]
mov dword [rsp + 0x20], 0
call fcn.00443d30
mov rcx, rax
call fcn.0040fb20
xor ebx, ebx
mov rax, qword [rbp + 0x48]
mov rcx, qword [rax]
lea rdx, [0x007a3620]
call fcn.004121f0
test eax, eax
jne 0x7a3453
or ebx, 0x800000
mov rcx, qword [rbp + 0x40]
lea rdx, [rbp + 0x88]
call fcn.0078bb90
mov rcx, qword [rbp + 0x88]
call fcn.00411c60
mov rsi, rax
lea rcx, [rbp + 0x80]
mov rdx, qword [rbp + 0x48]
call fcn.007a1020
mov rcx, qword [rbp + 0x80]
call fcn.00411c60
mov rcx, qword [rbp + 0x40]
mov rcx, qword [rcx + 0x118]
mov rdx, rsi
mov r8, rax
xor r9, r9
mov qword [rsp + 0x20], 0
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x30], ebx
call sub.winhttp.dll_WinHttpOpenRequest
mov rcx, qword [rbp + 0x40]
mov qword [rcx + 0x120], rax
test rax, rax
jne 0x7a3525
call sub.kernel32.dll_GetLastError
mov dword [rbp + 0x60], eax
mov byte [rbp + 0x68], 0
call sub.kernel32.dll_GetLastError
lea rcx, [rbp + 0x58]
mov edx, eax
mov r8, qword [0x00931f90]
call fcn.00441550
mov rax, qword [rbp + 0x58]
mov qword [rbp + 0x70], rax
mov byte [rbp + 0x78], 0x11
mov rcx, qword [0x007a7930]
mov dl, 1
mov r8, qword [0x00923800]
lea r9, [rbp + 0x60]
mov dword [rsp + 0x20], 1
call fcn.00443d30
mov rcx, rax
call fcn.0040fb20
mov rax, qword [rbp + 0x40]
mov ebx, dword [rax + 0x18]
mov rcx, qword [rbp + 0x40]
call fcn.0078bd80
mov rcx, qword [rbp + 0x40]
mov rcx, qword [rcx + 0x120]
mov edx, ebx
mov r8d, ebx
mov r9d, eax
mov rax, qword [rbp + 0x40]
mov eax, dword [rax + 0x20]
mov dword [rsp + 0x20], eax
call sub.winhttp.dll_WinHttpSetTimeouts
test eax, eax
jne 0x7a35b4
call sub.kernel32.dll_GetLastError
mov dword [rbp + 0x60], eax
mov byte [rbp + 0x68], 0
call sub.kernel32.dll_GetLastError
lea rcx, [rbp + 0x50]
mov edx, eax
mov r8, qword [0x00931f90]
call fcn.00441550
mov rax, qword [rbp + 0x50]
mov qword [rbp + 0x70], rax
mov byte [rbp + 0x78], 0x11
mov rcx, qword [0x007a7930]
mov dl, 1
mov r8, qword [0x00923c08]
lea r9, [rbp + 0x60]
mov dword [rsp + 0x20], 1
call fcn.00443d30
mov rcx, rax
call fcn.0040fb20
nop
lea rcx, [rbp + 0x50]
mov edx, 2
call fcn.00410930
lea rcx, [rbp + 0x80]
mov edx, 2
call fcn.00410930
lea rsp, [rbp + 0xa0]
pop rbx
pop rsi
pop rbp
ret
Function at 0x7a54d0
Capabilities:
Initialize winhttp library

Disassembly:
push rbp
push rbx
sub rsp, 0x48
mov rbp, rsp
mov qword [rbp + 0x38], rbp
mov qword [rbp + 0x60], rcx
mov rcx, qword [0x00931f88]
mov rax, qword [0x00931f88]
mov rbx, qword [rax]
call qword [rbx]
nop
cmp qword [0x00931f98], 0
jne 0x7a554c
lea rcx, [0x007a5594]
mov edx, 1
xor r8, r8
xor r9, r9
mov dword [rsp + 0x20], 0
call sub.winhttp.dll_WinHttpOpen
mov qword [0x00931f98], rax
cmp qword [0x00931f98], 0
jne 0x7a554c
mov rcx, qword [0x007a77e0]
mov dl, 1
mov r8, qword [0x00923910]
call fcn.00443b70
mov rcx, rax
call fcn.0040fb20
nop
mov rcx, qword [0x00931f88]
mov rax, qword [0x00931f88]
mov rbx, qword [rax]
call qword [rbx + 8]
lea rsp, [rbp + 0x48]
pop rbx
pop rbp
ret

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

Disassembly:
push rbp
push rbx
sub rsp, 0x48
mov rbp, rsp
mov qword [rbp + 0x28], rcx
mov qword [rbp + 0x38], 0
nop
mov rax, qword [rbp + 0x28]
mov rax, qword [rax + 0x48]
mov rax, qword [rax]
xor ecx, ecx
mov rdx, rax
test rdx, rdx
je 0x7cecde
mov ecx, dword [rdx - 4]
mov eax, ecx
test eax, eax
jge 0x7cece9
call fcn.0040cf20
mov rcx, rdx
mov edx, eax
lea rdx, [rcx + rdx*2]
cmp rcx, rdx
jae 0x7ced0d
movzx r8d, word [rcx]
xor eax, r8d
imul eax, eax, 0x1000193
add rcx, 2
cmp rcx, rdx
jb 0x7cecf7
nop
mov ebx, eax
mov rax, qword [rbp + 0x28]
mov rax, qword [rax + 0x40]
mov rcx, qword [rax + 0x38]
mov edx, ebx
call fcn.007d72c0
test al, al
je 0x7ced6a
mov rax, qword [rbp + 0x28]
mov rax, qword [rax + 0x40]
mov rcx, qword [rax + 0x38]
lea rdx, [rbp + 0x38]
mov r8d, ebx
call fcn.007d5f30
mov rcx, qword [rbp + 0x38]
mov rax, qword [rbp + 0x28]
mov rax, qword [rax + 0x48]
mov rdx, qword [rax]
call fcn.004121f0
test eax, eax
jne 0x7ced88
mov rax, qword [rbp + 0x28]
mov rcx, qword [rax + 0x48]
mov rdx, qword [rbp + 0x38]
call fcn.00410ec0
jmp 0x7ced88
mov rax, qword [rbp + 0x28]
mov rax, qword [rax + 0x40]
mov rcx, qword [rax + 0x38]
mov edx, ebx
mov rax, qword [rbp + 0x28]
mov rax, qword [rax + 0x48]
mov r8, qword [rax]
call fcn.007d6d70
nop
lea rcx, [rbp + 0x38]
call fcn.00410850
lea rsp, [rbp + 0x48]
pop rbx
pop rbp
ret
Function at 0x80ca60
Capabilities:
Check for software breakpoints

Disassembly:
push rbp
push rsi
sub rsp, 0x28
lea rbp, [rsp + 0x20]
mov rsi, rcx
mov eax, dword [rsi + 0x24]
cmp eax, 0xcc
je 0x80cb36
cmp eax, 0xcb
je 0x80cac7
cmp eax, 0xca
jne 0x80caa9
mov rcx, rsi
call fcn.0080d220
cmp dword [rsi + 0x58], 0
je 0x80cac0
mov dword [rsi + 0x24], 0xcf
mov eax, 1
jmp 0x80cb43
mov rcx, qword [rsi]
mov dword [rcx + 0x28], 0x14
mov dword [rcx + 0x2c], eax
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax]
jmp 0x80cb36
mov dword [rsi + 0x24], 0xcb
mov rax, qword [rsi + 0x240]
cmp dword [rax + 0x20], 0
je 0x80cb2a
mov rdx, qword [rsi + 0x10]
jmp 0x80cae9
add eax, dword [rsi + 0x1a4]
mov dword [rdx + 0xc], eax
test rdx, rdx
je 0x80caf3
mov rcx, rsi
call qword [rdx]
mov rax, qword [rsi + 0x240]
mov rcx, rsi
call qword [rax]
test eax, eax
je 0x80cb41
cmp eax, 2
je 0x80cb2a
mov rdx, qword [rsi + 0x10]
or eax, 2
cmp eax, 3
jne 0x80cae9
test rdx, rdx
je 0x80cae9
mov ecx, dword [rdx + 8]
mov eax, dword [rdx + 0xc]
inc ecx
mov dword [rdx + 8], ecx
cmp ecx, eax
jl 0x80cae9
jmp 0x80cae0
mov eax, dword [rsi + 0xac]
mov dword [rsi + 0xb4], eax
mov rcx, rsi
add rsp, 0x28
pop rsi
pop rbp
jmp 0x80cb50
xor eax, eax
add rsp, 0x28
pop rsi
pop rbp
ret
push rbp
push r14
push rsi
push rdi
push rbx
sub rsp, 0x20
lea rbp, [rsp + 0x20]
mov rsi, rcx
cmp dword [rsi + 0x24], 0xcc
je 0x80cb88
mov rax, qword [rsi + 0x220]
mov rcx, rsi
call qword [rax]
mov dword [rsi + 0xa8], 0
mov dword [rsi + 0x24], 0xcc
mov rdx, qword [rsi + 0x220]
cmp dword [rdx + 0x10], 0
je 0x80cc2d
lea r14, [rsi + 0xa8]
mov eax, dword [rsi + 0xa8]
mov ecx, dword [rsi + 0x8c]
cmp eax, ecx
jae 0x80cbfe
mov rdx, qword [rsi + 0x10]
test rdx, rdx
je 0x80cbca
mov dword [rdx + 8], eax
mov dword [rdx + 0xc], ecx
mov rcx, rsi
call qword [rdx]
mov eax, dword [rsi + 0xa8]
mov edi, eax
mov rax, qword [rsi + 0x228]
xor ebx, ebx
xor edx, edx
xor r9d, r9d
mov rcx, rsi
mov r8, r14
call qword [rax + 8]
mov eax, dword [rsi + 0xa8]
cmp eax, edi
je 0x80cc41
mov ecx, dword [rsi + 0x8c]
cmp eax, ecx
jb 0x80cbb0
mov rdx, qword [rsi + 0x220]
mov rcx, rsi
call qword [rdx + 8]
mov rax, qword [rsi + 0x220]
mov rcx, rsi
call qword [rax]
mov dword [rsi + 0xa8], 0
mov rdx, qword [rsi + 0x220]
xor eax, eax
cmp dword [rdx + 0x10], 0
jne 0x80cba6
cmp dword [rsi + 0x5c], 1
mov eax, 0xce
sbb eax, 0
mov dword [rsi + 0x24], eax
mov ebx, 1
mov eax, ebx
add rsp, 0x20
pop rbx
pop rdi
pop rsi
pop r14
pop rbp
ret
Function at 0x80cb50
Capabilities:
Check for software breakpoints

Disassembly:
push rbp
push rsi
sub rsp, 0x28
lea rbp, [rsp + 0x20]
mov rsi, rcx
mov eax, dword [rsi + 0x24]
cmp eax, 0xcc
je 0x80cb36
cmp eax, 0xcb
je 0x80cac7
cmp eax, 0xca
jne 0x80caa9
mov rcx, rsi
call fcn.0080d220
cmp dword [rsi + 0x58], 0
je 0x80cac0
mov dword [rsi + 0x24], 0xcf
mov eax, 1
jmp 0x80cb43
mov rcx, qword [rsi]
mov dword [rcx + 0x28], 0x14
mov dword [rcx + 0x2c], eax
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax]
jmp 0x80cb36
mov dword [rsi + 0x24], 0xcb
mov rax, qword [rsi + 0x240]
cmp dword [rax + 0x20], 0
je 0x80cb2a
mov rdx, qword [rsi + 0x10]
jmp 0x80cae9
add eax, dword [rsi + 0x1a4]
mov dword [rdx + 0xc], eax
test rdx, rdx
je 0x80caf3
mov rcx, rsi
call qword [rdx]
mov rax, qword [rsi + 0x240]
mov rcx, rsi
call qword [rax]
test eax, eax
je 0x80cb41
cmp eax, 2
je 0x80cb2a
mov rdx, qword [rsi + 0x10]
or eax, 2
cmp eax, 3
jne 0x80cae9
test rdx, rdx
je 0x80cae9
mov ecx, dword [rdx + 8]
mov eax, dword [rdx + 0xc]
inc ecx
mov dword [rdx + 8], ecx
cmp ecx, eax
jl 0x80cae9
jmp 0x80cae0
mov eax, dword [rsi + 0xac]
mov dword [rsi + 0xb4], eax
mov rcx, rsi
add rsp, 0x28
pop rsi
pop rbp
jmp 0x80cb50
xor eax, eax
add rsp, 0x28
pop rsi
pop rbp
ret
push rbp
push r14
push rsi
push rdi
push rbx
sub rsp, 0x20
lea rbp, [rsp + 0x20]
mov rsi, rcx
cmp dword [rsi + 0x24], 0xcc
je 0x80cb88
mov rax, qword [rsi + 0x220]
mov rcx, rsi
call qword [rax]
mov dword [rsi + 0xa8], 0
mov dword [rsi + 0x24], 0xcc
mov rdx, qword [rsi + 0x220]
cmp dword [rdx + 0x10], 0
je 0x80cc2d
lea r14, [rsi + 0xa8]
mov eax, dword [rsi + 0xa8]
mov ecx, dword [rsi + 0x8c]
cmp eax, ecx
jae 0x80cbfe
mov rdx, qword [rsi + 0x10]
test rdx, rdx
je 0x80cbca
mov dword [rdx + 8], eax
mov dword [rdx + 0xc], ecx
mov rcx, rsi
call qword [rdx]
mov eax, dword [rsi + 0xa8]
mov edi, eax
mov rax, qword [rsi + 0x228]
xor ebx, ebx
xor edx, edx
xor r9d, r9d
mov rcx, rsi
mov r8, r14
call qword [rax + 8]
mov eax, dword [rsi + 0xa8]
cmp eax, edi
je 0x80cc41
mov ecx, dword [rsi + 0x8c]
cmp eax, ecx
jb 0x80cbb0
mov rdx, qword [rsi + 0x220]
mov rcx, rsi
call qword [rdx + 8]
mov rax, qword [rsi + 0x220]
mov rcx, rsi
call qword [rax]
mov dword [rsi + 0xa8], 0
mov rdx, qword [rsi + 0x220]
xor eax, eax
cmp dword [rdx + 0x10], 0
jne 0x80cba6
cmp dword [rsi + 0x5c], 1
mov eax, 0xce
sbb eax, 0
mov dword [rsi + 0x24], eax
mov ebx, 1
mov eax, ebx
add rsp, 0x20
pop rbx
pop rdi
pop rsi
pop r14
pop rbp
ret

Function at 0x80cdc0
Capabilities:
Check for software breakpoints

Disassembly:
push rbp
push rsi
push rdi
sub rsp, 0x20
lea rbp, [rsp + 0x20]
mov edi, edx
mov rsi, rcx
mov eax, dword [rsi + 0x24]
cmp eax, 0xcc
je 0x80cdf7
cmp eax, 0xcf
je 0x80cdf7
mov rcx, qword [rsi]
mov dword [rcx + 0x28], 0x14
mov dword [rcx + 0x2c], eax
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax]
test edi, edi
mov eax, 1
cmovg eax, edi
mov rcx, qword [rsi + 0x240]
cmp dword [rcx + 0x24], 0
je 0x80ce19
mov ecx, dword [rsi + 0xac]
cmp eax, ecx
cmovg eax, ecx
mov dword [rsi + 0xb4], eax
mov rcx, rsi
add rsp, 0x20
pop rdi
pop rsi
pop rbp
jmp 0x80cb50
Function at 0x82c670
Capabilities:
Hash data with crc32

Disassembly:
xor ecx, ecx
lea rdx, [0x009321c0]
mov eax, ecx
mov r8d, 8
mov r9d, eax
and r9d, 1
test r9b, r9b
je 0x82c697
shr eax, 1
xor eax, 0xedb88320
jmp 0x82c69a
shr eax, 1
sub r8d, 1
test r8d, r8d
jne 0x82c681
nop
mov dword [rdx], eax
add ecx, 1
add rdx, 4
cmp ecx, 0x100
jne 0x82c679
nop
mov byte [0x009325c0], 1
ret

Function at 0x82c6c0
Capabilities:
Encode data using add xor sub operations
Encode data using xor

Disassembly:
push rdi
push rsi
push rbx
sub rsp, 0x20
mov rbx, rdx
mov esi, r8d
mov edi, ecx
cmp byte [0x009325c0], 0
jne 0x82c6dd
call fcn.0082c670
xor ecx, ecx
mov edx, esi
sub edx, 1
mov eax, ecx
cmp eax, edx
jg 0x82c723
sub edx, ecx
add edx, 1
lea rcx, [0x009321c0]
movsxd r8, eax
movzx r8, byte [rbx + r8]
mov r9d, edi
xor r9d, r8d
and r9d, 0xff
mov r9d, r9d
shr edi, 8
mov ecx, dword [rcx + r9*4]
xor ecx, edi
mov edi, ecx
add eax, 1
sub edx, 1
test edx, edx
jne 0x82c6ef
nop
mov eax, edi
add rsp, 0x20
pop rbx
pop rsi
pop rdi
ret