joyce8/EMBER2024-capa huggingface dataset:
Function at 0x6f23e0
Capabilities:
Get keyboard layout
Query or enumerate registry value

Disassembly:
push rbp
sub rsp, 0x510
mov rbp, rsp
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x58], rbp
mov qword [rbp + 0x520], rcx
nop
mov rax, qword [rbp + 0x520]
cmp qword [rax + 0x80], 0
jne 0x6f25ed
mov rcx, qword [0x004c9238]
mov dl, 1
call fcn.00506350
mov rcx, qword [rbp + 0x520]
mov qword [rcx + 0x80], rax
mov rax, qword [rbp + 0x520]
lea rcx, [rax + 0x88]
call fcn.00410850
mov ecx, 0x40
lea rdx, [rbp + 0x2f0]
call sub.user32.dll_GetKeyboardLayoutList
mov dword [rbp + 0x4fc], eax
xor eax, eax
mov ecx, dword [rbp + 0x4fc]
sub ecx, 1
mov dword [rbp + 0x3c], ecx
mov dword [rbp + 0x4f8], eax
mov ecx, dword [rbp + 0x3c]
cmp dword [rbp + 0x4f8], ecx
jg 0x6f25d0
mov ecx, dword [rbp + 0x3c]
sub ecx, eax
add ecx, 1
mov dword [rbp + 0x3c], ecx
lea rax, [rbp + 0x2f0]
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov rcx, qword [rax]
call fcn.005ff9a0
test al, al
je 0x6f25b7
mov rax, qword [rbp + 0x60]
movzx eax, word [rax]
mov dword [rbp + 0x48], eax
mov byte [rbp + 0x50], 0
lea rcx, [rbp + 0x70]
lea rdx, [0x006f2658]
lea r8, [rbp + 0x48]
xor r9, r9
call fcn.0043a590
mov rcx, 0xffffffff80000002
mov rdx, rax
xor r8, r8
mov r9d, 0x20019
lea rax, [rbp + 0x508]
mov qword [rsp + 0x20], rax
call sub.advapi32.dll_RegOpenKeyExW
test eax, eax
jne 0x6f25b7
nop
mov dword [rbp + 0x4f4], 0x200
mov rcx, qword [rbp + 0x508]
lea rdx, [0x006f26c6]
xor r8, r8
xor r9, r9
lea rax, [rbp + 0xf0]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x4f4]
mov qword [rsp + 0x28], rax
call sub.advapi32.dll_RegQueryValueExW
test eax, eax
jne 0x6f25aa
lea rcx, [rbp + 0x40]
lea rdx, [rbp + 0xf0]
mov r8d, pe_nt_image_headers64
call fcn.00411d50
mov rax, qword [rbp + 0x520]
mov rax, qword [rax + 0x80]
mov rcx, rax
mov rdx, qword [rbp + 0x40]
mov r8, qword [rbp + 0x60]
mov r8, qword [r8]
mov rax, qword [rax]
call qword [rax + 0x80]
mov rax, qword [rbp + 0x60]
mov rcx, qword [rbp + 0x520]
mov rax, qword [rax]
cmp rax, qword [rcx + 0x90]
jne 0x6f25aa
mov rax, qword [rbp + 0x520]
lea rcx, [rax + 0x88]
lea rdx, [rbp + 0xf0]
mov r8d, pe_nt_image_headers64
call fcn.00411d50
nop
mov rcx, qword [rbp + 0x508]
call sub.advapi32.dll_RegCloseKey
add qword [rbp + 0x60], 8
mov eax, dword [rbp + 0x3c]
sub eax, 1
mov dword [rbp + 0x3c], eax
mov eax, dword [rbp + 0x3c]
test eax, eax
jne 0x6f2493
nop
mov rax, qword [rbp + 0x520]
mov rax, qword [rax + 0x80]
mov byte [rax + 0x49], 0
mov rcx, rax
mov dl, 1
call fcn.005061e0
mov rax, qword [rbp + 0x520]
mov rax, qword [rax + 0x80]
mov qword [rbp + 0x500], rax
nop
lea rcx, [rbp + 0x40]
call fcn.00410850
mov rax, qword [rbp + 0x500]
lea rsp, [rbp + 0x510]
pop rbp
ret
Function at 0x6f36f0
Capabilities:
Create thread

Disassembly:
sub rsp, 0x48
mov rax, qword [0x008b3e50]
cmp byte [rax + 0x159], 0
jne 0x6f378e
cmp qword [0x008b3e90], 0
jne 0x6f3735
call sub.kernel32.dll_GetCurrentThreadId
mov ecx, 3
mov rdx, qword [0x0088acd0]
xor r8, r8
mov r9d, eax
call sub.user32.dll_SetWindowsHookExW
mov qword [0x008b3e90], rax
cmp qword [0x008b3e88], 0
jne 0x6f3755
xor ecx, ecx
xor edx, edx
xor r8, r8
xor r9, r9
call sub.kernel32.dll_CreateEventW
mov qword [0x008b3e88], rax
cmp qword [0x008b3e98], 0
jne 0x6f378e
xor ecx, ecx
mov edx, 0x3e8
mov r8, qword [0x0088acc8]
xor r9, r9
mov dword [rsp + 0x20], 0
lea rax, [rsp + 0x3c]
mov qword [rsp + 0x28], rax
call sub.kernel32.dll_CreateThread
mov qword [0x008b3e98], rax
add rsp, 0x48
ret

Function at 0x6f4b90
Capabilities:
Enumerate gui resources

Disassembly:
push rbp
push rsi
push rbx
sub rsp, 0x50
mov rbp, rsp
mov rbx, rcx
mov rax, qword [rbx + 0x2e0]
test rax, rax
je 0x6f4c6e
cmp dword [rbx + 0x128], 0
jne 0x6f4c64
mov qword [rbp + 0x40], rax
mov byte [rbp + 0x48], dl
lea rcx, [0x006f4a90]
lea rdx, [rbp + 0x40]
call sub.user32.dll_EnumWindows
mov rax, qword [rbx + 0x120]
cmp dword [rax + 0x10], 0
je 0x6f4c64
mov rcx, qword [rbp + 0x40]
mov edx, 3
call sub.user32.dll_GetWindow
mov qword [rbp + 0x40], rax
mov rcx, qword [rbp + 0x40]
mov edx, 0xffffffec
call sub.user32.dll_GetWindowLongPtrW
test rax, 8
je 0x6f4c12
mov qword [rbp + 0x40], 0xfffffffffffffffe
mov rax, qword [rbx + 0x120]
mov esi, dword [rax + 0x10]
sub esi, 1
test esi, esi
jl 0x6f4c63
mov rcx, qword [rbx + 0x120]
mov edx, esi
call fcn.004fe390
mov rcx, rax
mov rdx, qword [rbp + 0x40]
xor r8, r8
xor r9, r9
mov dword [rsp + 0x20], 0
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x30], 0x213
call sub.user32.dll_SetWindowPos
sub esi, 1
cmp esi, 0xffffffff
jne 0x6f4c23
nop
lea rax, [rbx + 0x128]
add dword [rax], 1
lea rsp, [rbp + 0x50]
pop rbx
pop rsi
pop rbp
ret
Function at 0x6f50e0
Capabilities:
Enumerate gui resources

Disassembly:
push rdi
push rsi
push rbx
sub rsp, 0x20
mov rbx, rcx
mov esi, edx
mov rax, qword [0x008b3e50]
cmp qword [rax + 0x2e0], 0
je 0x6f52a4
test sil, sil
jne 0x6f51cc
cmp dword [rbx + 0x138], 0
jne 0x6f51bd
mov rcx, rbx
call fcn.006f98f0
lea rcx, [0x006f4fa0]
mov rdx, rax
call sub.user32.dll_EnumWindows
cmp qword [rbx + 0xa8], 0
je 0x6f517f
mov rax, qword [0x008b3e50]
cmp byte [rax + 0x193], 0
je 0x6f517f
mov rax, qword [rbx + 0x1a0]
test rax, rax
je 0x6f5159
mov rax, qword [rax - 8]
lea rdi, [rax - 1]
test edi, edi
jl 0x6f517e
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 0x6f5161
nop
mov rax, qword [rbx + 0x130]
mov edi, dword [rax + 0x10]
sub edi, 1
test edi, edi
jl 0x6f51bc
mov rcx, qword [rbx + 0x130]
mov edx, edi
call fcn.004fe390
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 0x6f5190
nop
lea rax, [rbx + 0x138]
add dword [rax], 1
jmp 0x6f52a4
cmp dword [rbx + 0x138], 0
jle 0x6f52a4
lea rax, [rbx + 0x138]
sub dword [rax], 1
cmp dword [rbx + 0x138], 0
jne 0x6f52a4
cmp qword [rbx + 0xa8], 0
je 0x6f5243
mov rax, qword [0x008b3e50]
cmp byte [rax + 0x193], 0
je 0x6f5243
mov rax, qword [rbx + 0x1a0]
test rax, rax
je 0x6f521a
mov rax, qword [rax - 8]
lea rdi, [rax - 1]
test edi, edi
jl 0x6f5242
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 0x6f5222
nop
mov rax, qword [rbx + 0x130]
mov edi, dword [rax + 0x10]
sub edi, 1
test edi, edi
jl 0x6f5280
mov rcx, qword [rbx + 0x130]
mov edx, edi
call fcn.004fe390
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 0x6f5254
nop
mov rax, qword [rbx + 0x130]
mov rcx, rax
mov rsi, qword [rax]
call qword [rsi + 0x10]
lea rcx, [rbx + 0x1a0]
mov rdx, qword [0x006dab88]
call fcn.004152c0
add rsp, 0x20
pop rbx
pop rsi
pop rdi
ret

Function at 0x6f65c0
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 0x6f662c
cmp byte [rbx + 0x193], 0
jne 0x6f662c
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 0x6f6617
mov eax, dword [rcx - 4]
test eax, eax
jne 0x6f663b
mov rcx, rsi
mov rdx, qword [rbx + 0x118]
call fcn.00410ec0
jmp 0x6f663b
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 0x6f9ce0
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 0x6f9ea1
mov byte [rbx + 0x193], sil
mov rax, qword [rbx + 0xa8]
test rax, rax
je 0x6f9e0b
mov rcx, rax
call fcn.005f6550
test al, al
je 0x6f9e0b
mov rax, qword [rbx + 0xa8]
movzx rax, word [rax + 0x34]
test ax, 0x10
jne 0x6f9e0b
mov rax, qword [rbx + 0xa8]
movzx rax, word [rax + 0x34]
test ax, 2
jne 0x6f9e0b
test sil, sil
je 0x6f9d8a
mov rcx, qword [rbx + 0x2e0]
xor edx, edx
xor r8, r8
call fcn.006e2610
mov rcx, qword [rbx + 0xa8]
call fcn.005f5ee0
mov rcx, rax
mov dl, 1
mov rax, qword [rbx + 0xa8]
movzx r8, byte [rax + 0xa9]
call fcn.006e2610
jmp 0x6f9df4
call sub.user32.dll_GetForegroundWindow
mov rdi, rax
mov rcx, qword [rbx + 0xa8]
call fcn.005f5ee0
cmp rdi, rax
sete dil
mov rcx, qword [rbx + 0xa8]
call fcn.005f5ee0
mov rcx, rax
xor edx, edx
mov rax, qword [rbx + 0xa8]
movzx r8, byte [rax + 0xa9]
call fcn.006e2610
mov rcx, qword [rbx + 0x2e0]
mov dl, 1
mov r8b, 1
call fcn.006e2610
test dil, dil
je 0x6f9df4
mov rcx, qword [rbx + 0xa8]
call fcn.005f5ee0
mov rcx, rax
call sub.user32.dll_SetForegroundWindow
mov rcx, qword [rbx + 0xa8]
mov edx, 0xb033
xor r8, r8
xor r9, r9
call fcn.005e98d0
test sil, sil
je 0x6f9e50
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 0x6f9ea1
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 0x704d40
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 0x704dfb
mov rcx, qword [rbx + 0x10]
call fcn.005f5ee0
mov rcx, qword [0x00611548]
mov dl, 1
mov r8, rax
call fcn.005eca80
mov qword [rbx + 0xd0], rax
mov rsi, qword [rbx + 0xd0]
mov rcx, rsi
xor edx, edx
call fcn.00624b40
lea rax, [rsi + 0x4d8]
mov qword [rax + 8], rbx
lea rcx, [0x007043c0]
mov qword [rax], rcx
mov rcx, qword [rbx + 0xd0]
call fcn.005f5ee0
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.005f5ee0
mov rcx, rax
xor edx, edx
call sub.user32.dll_ShowWindow
cmp qword [rbx + 0xf0], 0
jne 0x704eaa
mov rcx, qword [rbx + 0x10]
call fcn.005f5ee0
mov rcx, qword [0x00611548]
mov dl, 1
mov r8, rax
call fcn.005eca80
mov qword [rbx + 0xf0], rax
mov rsi, qword [rbx + 0xf0]
mov rcx, rsi
mov dl, 1
call fcn.00624b40
lea rax, [rsi + 0x4d8]
mov qword [rax + 8], rbx
lea rcx, [0x00704420]
mov qword [rax], rcx
mov rcx, qword [rbx + 0xf0]
call fcn.005f5ee0
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.005f5ee0
mov rcx, rax
xor edx, edx
call sub.user32.dll_ShowWindow
cmp qword [rbx + 0xe0], 0
jne 0x704f52
mov rcx, qword [rbx + 0x10]
call fcn.005f5ee0
mov rcx, qword [0x006125f0]
mov dl, 1
mov r8, rax
call fcn.005eca80
mov qword [rbx + 0xe0], rax
mov rsi, qword [rbx + 0xe0]
mov byte [rsi + 0x4a8], 1
mov rcx, qword [rbx + 0xe0]
call fcn.005f5ee0
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.005f5ee0
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 0x798a70
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 0x798abe
or ebx, 0xffff
mov rcx, qword [rbp + 0x48]
call fcn.00411c60
mov rsi, rax
jmp 0x798ac0
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 0x798b0a
mov rcx, qword [rbp + 0x30]
call fcn.00410850
jmp 0x798c28
call sub.kernel32.dll_GetLastError
cmp eax, 0x7a
je 0x798b6c
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 [0x008b3f90]
call fcn.004411f0
mov rax, qword [rbp + 0x58]
mov qword [rbp + 0x70], rax
mov byte [rbp + 0x78], 0x11
mov rcx, qword [0x0079f090]
mov dl, 1
mov r8, qword [0x008a5418]
lea r9, [rbp + 0x60]
mov dword [rsp + 0x20], 1
call fcn.004439d0
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 0x798b92
mov eax, dword [rcx - 4]
test eax, eax
jle 0x798c28
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 0x798c28
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 [0x008b3f90]
call fcn.004411f0
mov rax, qword [rbp + 0x50]
mov qword [rbp + 0x70], rax
mov byte [rbp + 0x78], 0x11
mov rcx, qword [0x0079f090]
mov dl, 1
mov r8, qword [0x008a5418]
lea r9, [rbp + 0x60]
mov dword [rsp + 0x20], 1
call fcn.004439d0
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 0x798ea0
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 0x798ecc
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.007a7ce0
mov rcx, qword [0x00796850]
mov dl, 1
call fcn.0079d670
mov rcx, qword [rbp + 0x60]
mov qword [rcx + 0x140], rax
mov rcx, qword [0x007767f8]
mov dl, 1
call fcn.0078cd00
mov rcx, qword [rbp + 0x60]
mov qword [rcx + 0x138], rax
mov rcx, qword [0x007952a8]
call fcn.0079cec0
lea rcx, [0x00798fe0]
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 0x798f60
mov rcx, qword [0x0079f1d0]
mov dl, 1
mov r8, qword [0x008a5760]
call fcn.00443810
mov rcx, rax
call fcn.0040fb20
mov rax, qword [rbp + 0x60]
mov rcx, qword [rax + 0x130]
lea rdx, [0x00798c90]
mov r8d, 0x10010
xor r9, r9
call sub.winhttp.dll_WinHttpSetStatusCallback
cmp byte [rbp + 0x68], 0
je 0x798fc3
mov rcx, qword [rbp + 0x60]
call fcn.0040e090
mov qword [rbp + 0x60], rax
jmp 0x798fc3
mov rax, qword [rbp + 0x60]
lea rsp, [rbp + 0x48]
pop rbx
pop rbp
ret
Function at 0x79ad40
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 0x79ada3
mov rax, qword [rbp + 0x48]
movzx rbx, word [rax + 0x20]
jmp 0x79ada5
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 0x79ae24
mov rax, qword [rbp + 0x48]
mov rax, qword [rax + 0x18]
mov qword [rbp + 0x90], rax
mov byte [rbp + 0x98], 0x11
mov rcx, qword [0x0079f320]
mov dl, 1
mov r8, qword [0x008a4d98]
lea r9, [rbp + 0x90]
mov dword [rsp + 0x20], 0
call fcn.004439d0
mov rcx, rax
call fcn.0040fb20
xor ebx, ebx
mov rax, qword [rbp + 0x48]
mov rcx, qword [rax]
lea rdx, [0x0079b010]
call fcn.004121f0
test eax, eax
jne 0x79ae43
or ebx, 0x800000
mov rcx, qword [rbp + 0x40]
lea rdx, [rbp + 0x88]
call fcn.00783580
mov rcx, qword [rbp + 0x88]
call fcn.00411c60
mov rsi, rax
lea rcx, [rbp + 0x80]
mov rdx, qword [rbp + 0x48]
call fcn.00798a10
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 0x79af15
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 [0x008b3f90]
call fcn.004411f0
mov rax, qword [rbp + 0x58]
mov qword [rbp + 0x70], rax
mov byte [rbp + 0x78], 0x11
mov rcx, qword [0x0079f320]
mov dl, 1
mov r8, qword [0x008a56a0]
lea r9, [rbp + 0x60]
mov dword [rsp + 0x20], 1
call fcn.004439d0
mov rcx, rax
call fcn.0040fb20
mov rax, qword [rbp + 0x40]
mov ebx, dword [rax + 0x18]
mov rcx, qword [rbp + 0x40]
call fcn.00783770
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 0x79afa4
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 [0x008b3f90]
call fcn.004411f0
mov rax, qword [rbp + 0x50]
mov qword [rbp + 0x70], rax
mov byte [rbp + 0x78], 0x11
mov rcx, qword [0x0079f320]
mov dl, 1
mov r8, qword [0x008a5970]
lea r9, [rbp + 0x60]
mov dword [rsp + 0x20], 1
call fcn.004439d0
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 0x79cec0
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 [0x008b3f88]
mov rax, qword [0x008b3f88]
mov rbx, qword [rax]
call qword [rbx]
nop
cmp qword [0x008b3f98], 0
jne 0x79cf3c
lea rcx, [0x0079cf84]
mov edx, 1
xor r8, r8
xor r9, r9
mov dword [rsp + 0x20], 0
call sub.winhttp.dll_WinHttpOpen
mov qword [0x008b3f98], rax
cmp qword [0x008b3f98], 0
jne 0x79cf3c
mov rcx, qword [0x0079f1d0]
mov dl, 1
mov r8, qword [0x008a5760]
call fcn.00443810
mov rcx, rax
call fcn.0040fb20
nop
mov rcx, qword [0x008b3f88]
mov rax, qword [0x008b3f88]
mov rbx, qword [rax]
call qword [rbx + 8]
lea rsp, [rbp + 0x48]
pop rbx
pop rbp
ret

Function at 0x7c62a0
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
Function at 0x804060
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 0x804136
cmp eax, 0xcb
je 0x8040c7
cmp eax, 0xca
jne 0x8040a9
mov rcx, rsi
call fcn.00804820
cmp dword [rsi + 0x58], 0
je 0x8040c0
mov dword [rsi + 0x24], 0xcf
mov eax, 1
jmp 0x804143
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 0x804136
mov dword [rsi + 0x24], 0xcb
mov rax, qword [rsi + 0x240]
cmp dword [rax + 0x20], 0
je 0x80412a
mov rdx, qword [rsi + 0x10]
jmp 0x8040e9
add eax, dword [rsi + 0x1a4]
mov dword [rdx + 0xc], eax
test rdx, rdx
je 0x8040f3
mov rcx, rsi
call qword [rdx]
mov rax, qword [rsi + 0x240]
mov rcx, rsi
call qword [rax]
test eax, eax
je 0x804141
cmp eax, 2
je 0x80412a
mov rdx, qword [rsi + 0x10]
or eax, 2
cmp eax, 3
jne 0x8040e9
test rdx, rdx
je 0x8040e9
mov ecx, dword [rdx + 8]
mov eax, dword [rdx + 0xc]
inc ecx
mov dword [rdx + 8], ecx
cmp ecx, eax
jl 0x8040e9
jmp 0x8040e0
mov eax, dword [rsi + 0xac]
mov dword [rsi + 0xb4], eax
mov rcx, rsi
add rsp, 0x28
pop rsi
pop rbp
jmp 0x804150
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 0x804188
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 0x80422d
lea r14, [rsi + 0xa8]
mov eax, dword [rsi + 0xa8]
mov ecx, dword [rsi + 0x8c]
cmp eax, ecx
jae 0x8041fe
mov rdx, qword [rsi + 0x10]
test rdx, rdx
je 0x8041ca
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 0x804241
mov ecx, dword [rsi + 0x8c]
cmp eax, ecx
jb 0x8041b0
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 0x8041a6
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