joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1502eb044
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x40
mov rbx, r8
mov rsi, rdx
mov r14, rcx
movabs rbp, 0xcbf29ce484222325
mov rcx, rbp
xor edx, edx
movabs r8, 0x100000001b3
movzx eax, byte [rbx + rdx + 4]
xor rcx, rax
imul rcx, r8
inc rdx
cmp rdx, 4
jb 0x1502eb083
xor edx, edx
movzx eax, byte [rbx + rdx + 8]
xor rbp, rax
imul rbp, r8
inc rdx
cmp rdx, 2
jb 0x1502eb09a
xor rbp, rcx
mov r9, rbp
mov r8, rbx
lea rdx, [rsp + 0x20]
mov rcx, r14
call fcn.1502eb664
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x1502eb0db
mov qword [rsi], rax
mov byte [rsi + 8], 0
jmp 0x1502eb267
movabs rax, 0x666666666666666
cmp qword [r14 + 0x10], rax
je 0x1502eb289
lea r12, [r14 + 8]
mov qword [rsp + 0x30], r12
and qword [rsp + 0x38], 0
mov ecx, 0x28
call fcn.15040af44
mov rdi, rax
mov qword [rsp + 0x38], rax
movups xmm0, xmmword [rbx]
movups xmmword [rax + 0x10], xmm0
mov ecx, dword [rbx + 0x10]
mov dword [rax + 0x20], ecx
and dword [rax + 0x24], 0
mov rcx, qword [r14 + 0x10]
add rcx, 1
xorps xmm0, xmm0
js 0x1502eb135
cvtsi2ss xmm0, rcx
jmp 0x1502eb14a
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rbx, qword [r14 + 0x38]
xorps xmm2, xmm2
test rbx, rbx
js 0x1502eb15d
cvtsi2ss xmm2, rbx
jmp 0x1502eb175
mov rcx, rbx
shr rcx, 1
mov rax, rbx
and eax, 1
or rcx, rax
cvtsi2ss xmm2, rcx
addss xmm2, xmm2
movaps xmm1, xmm0
divss xmm1, xmm2
comiss xmm1, dword [r14]
seta al
test al, al
je 0x1502eb210
divss xmm0, dword [r14]
call fcn.1504413bc
xor ecx, ecx
movss xmm1, dword [0x1502703c8]
comiss xmm0, xmm1
jb 0x1502eb1ba
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x1502eb1ba
movabs rax, 0x8000000000000000
mov rcx, rax
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rbx, rcx
jae 0x1502eb1e8
cmp rbx, 0x200
jae 0x1502eb1e5
shl rbx, 3
cmp rbx, rcx
jae 0x1502eb1e8
mov rbx, rcx
mov rdx, rbx
mov rcx, r14
call fcn.1502eb2b4
mov r9, rbp
lea r8, [rdi + 0x10]
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.1502eb664
movups xmm0, xmmword [rax]
movdqu xmmword [rsp + 0x20], xmm0
mov rdx, qword [rsp + 0x20]
mov r8, qword [rdx + 8]
inc qword [r14 + 0x10]
mov qword [rdi], rdx
mov qword [rdi + 8], r8
mov qword [r8], rdi
mov qword [rdx + 8], rdi
mov rcx, qword [r14 + 0x18]
mov rax, qword [r14 + 0x30]
and rax, rbp
add rax, rax
mov r9, qword [rcx + rax*8]
cmp r9, qword [r12]
jne 0x1502eb249
mov qword [rcx + rax*8], rdi
jmp 0x1502eb25b
cmp r9, rdx
jne 0x1502eb254
mov qword [rcx + rax*8], rdi
jmp 0x1502eb260
cmp qword [rcx + rax*8 + 8], r8
jne 0x1502eb260
mov qword [rcx + rax*8 + 8], rdi
mov qword [rsi], rdi
mov byte [rsi + 8], 1
mov rax, rsi
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
add rsp, 0x40
pop r15
pop r14
pop r12
ret
lea rcx, [0x1501755e8]
call fcn.15040822c
int3
Function at 0x1502eb2b4
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
movabs rax, 0xfffffffffffffff
mov r13, rcx
bsr rcx, rax
mov eax, 1
shl rax, cl
cmp rdx, rax
ja 0x1502eb49b
mov rsi, qword [r13 + 8]
lea rax, [rdx - 1]
or rax, 1
lea r14, [r13 + 0x18]
bsr rcx, rax
mov ebx, 1
mov r8, rsi
inc ecx
shl rbx, cl
mov rcx, r14
lea rdx, [rbx + rbx]
call fcn.1502ae44c
lea rax, [rbx - 1]
mov qword [r13 + 0x38], rbx
mov qword [r13 + 0x30], rax
mov rbx, qword [r13 + 8]
mov rbx, qword [rbx]
mov rdi, rbx
cmp rbx, rsi
je 0x1502eb458
movabs r8, 0xcbf29ce484222325
movabs r9, 0x100000001b3
mov rdi, qword [rdi]
mov rdx, r8
xor ecx, ecx
movzx eax, byte [rbx + rcx + 0x14]
inc rcx
xor rdx, rax
imul rdx, r9
cmp rcx, 4
jb 0x1502eb35a
mov r15, r8
xor ecx, ecx
movzx eax, byte [rbx + rcx + 0x18]
inc rcx
xor r15, rax
imul r15, r9
cmp rcx, 2
jb 0x1502eb374
mov rbp, qword [r14]
xor r15, rdx
and r15, qword [r13 + 0x30]
add r15, r15
cmp qword [rbp + r15*8], rsi
jne 0x1502eb3ac
mov qword [rbp + r15*8], rbx
mov qword [rbp + r15*8 + 8], rbx
jmp 0x1502eb44c
mov r14, qword [rbp + r15*8 + 8]
lea rcx, [rbx + 0x10]
lea rdx, [r14 + 0x10]
call fcn.1502d8d78
test eax, eax
je 0x1502eb407
mov r8, qword [r14]
cmp r8, rbx
je 0x1502eb3eb
mov rdx, qword [rbx + 8]
mov qword [rdx], rdi
mov rcx, qword [rdi + 8]
mov qword [rcx], r8
mov rax, qword [r8 + 8]
mov qword [rax], rbx
mov qword [r8 + 8], rcx
mov qword [rdi + 8], rdx
mov qword [rbx + 8], rax
mov qword [rbp + r15*8 + 8], rbx
jmp 0x1502eb434
mov r14, qword [r14 + 8]
lea rcx, [rbx + 0x10]
lea rdx, [r14 + 0x10]
call fcn.1502d8d78
test eax, eax
jne 0x1502eb475
cmp qword [rbp + r15*8], r14
jne 0x1502eb3f2
mov rdx, qword [rbx + 8]
mov qword [rdx], rdi
mov rcx, qword [rdi + 8]
mov qword [rcx], r14
mov rax, qword [r14 + 8]
mov qword [rax], rbx
mov qword [r14 + 8], rcx
mov qword [rdi + 8], rdx
mov qword [rbx + 8], rax
mov qword [rbp + r15*8], rbx
lea r14, [r13 + 0x18]
movabs r8, 0xcbf29ce484222325
movabs r9, 0x100000001b3
mov rbx, rdi
cmp rdi, rsi
jne 0x1502eb352
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov r8, qword [r14]
mov rdx, qword [rbx + 8]
mov qword [rdx], rdi
mov rcx, qword [rdi + 8]
mov qword [rcx], r8
mov rax, qword [r8 + 8]
mov qword [rax], rbx
mov qword [r8 + 8], rcx
mov qword [rdi + 8], rdx
mov qword [rbx + 8], rax
jmp 0x1502eb434
lea rcx, [0x150175640]
call fcn.15040822c
int3
Function at 0x1502ede0c
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r14
mov rbp, rsp
sub rsp, 0x30
call fcn.150309730
mov rdx, qword [0x150029240]
mov r14d, 1
cmp eax, r14d
cmove rdx, qword [0x150029238]
xor ecx, ecx
call rdx
mov rsi, rax
xor ebx, ebx
mov ecx, ebx
call fcn.1502ed954
add ebx, r14d
cmp ebx, 0xa
jl 0x1502ede45
and qword [rbp + 0x30], 0
and qword [rbp + 0x38], 0
call fcn.150309730
mov r8, qword [0x1500292b0]
lea rdx, [rbp + 0x38]
cmp eax, r14d
lea rcx, [0x15017c578]
cmove r8, qword [0x1500292a8]
call r8
cmp qword [rbp + 0x38], 0
mov r12d, 4
je 0x1502edf92
lea edi, [r12 + 0x6c]
call fcn.150309730
mov r9, qword [0x1500292c0]
cmp eax, r14d
mov rcx, qword [rbp + 0x38]
mov r8d, 3
cmove r9, qword [0x1500292b8]
mov edx, edi
call r9
mov rbx, rax
call fcn.150309730
mov rdx, qword [0x1500294a0]
lea rcx, [0x15017c590]
cmp eax, r14d
cmove rdx, qword [0x150029498]
call rdx
mov dword [rbp + 0x30], eax
call fcn.150309730
mov rdx, qword [0x1500294a0]
cmp eax, r14d
mov rcx, rbx
cmove rdx, qword [0x150029498]
call rdx
mov dword [rbp + 0x34], eax
call fcn.150309730
mov r10, qword [0x150029220]
lea rdx, [rbp + 0x30]
cmp eax, r14d
mov r9d, 2
mov r8d, r9d
cmove r10, qword [0x150029218]
xor ecx, ecx
and dword [rsp + 0x20], 0
call r10
call fcn.150309730
mov rdx, qword [0x1500294a0]
lea rcx, [0x15017c5a0]
cmp eax, r14d
cmove rdx, qword [0x150029498]
call rdx
mov dword [rbp + 0x30], eax
call fcn.150309730
mov r10, qword [0x150029220]
lea rdx, [rbp + 0x30]
cmp eax, r14d
mov r9d, r14d
mov r8d, 2
cmove r10, qword [0x150029218]
xor ecx, ecx
and dword [rsp + 0x20], 0
call r10
add edi, r12d
cmp edi, 0x98
jl 0x1502ede99
xor edi, edi
movabs rbx, 0x1445a2b20
lea r9, [rbp + 0x30]
mov r8d, 0x40
mov rdx, r12
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
mov r8d, dword [rbp + 0x30]
lea r9, [rbp + 0x30]
mov rdx, r12
mov dword [rbx], edi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov r8, r12
mov rdx, rbx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FlushInstructionCache]
add edi, r14d
add rbx, r12
cmp edi, 0xa
jl 0x1502edf9e
call fcn.150309730
mov r10, qword [0x150029200]
lea rdx, [0x15017c538]
cmp eax, r14d
mov rcx, rsi
cmove r10, qword [0x1500291f8]
xor r9d, r9d
and dword [rsp + 0x20], 0
lea r8d, [r9 + 0xa]
call r10
call fcn.150309730
mov rbx, qword [0x1500291f0]
cmp eax, r14d
cmove rbx, qword [0x1500291e8]
call fcn.150309730
mov rdx, qword [0x1500294a0]
lea rcx, [0x15017c680]
cmp eax, r14d
cmove rdx, qword [0x150029498]
call rdx
xor r9d, r9d
mov r8d, 0x1388
mov edx, eax
xor ecx, ecx
mov rax, rbx
mov rbx, qword [rsp + 0x70]
add rsp, 0x30
pop r14
pop r12
pop rdi
pop rsi
pop rbp
jmp rax
Function at 0x1502f29e0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rcx, qword [0x15007e4e0]
xorps xmm0, xmm0
add rcx, 1
js 0x1502f2a01
cvtsi2ss xmm0, rcx
jmp 0x1502f2a16
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm0, dword [0x15007e4d0]
call fcn.1504413bc
movss xmm1, dword [0x1502703c8]
xor ecx, ecx
comiss xmm0, xmm1
jb 0x1502f2a48
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x1502f2a48
movabs rax, 0x8000000000000000
mov rcx, rax
mov rdx, qword [0x15007e508]
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rdx, rcx
jae 0x1502f2a7d
cmp rdx, 0x200
jae 0x1502f2a7a
shl rdx, 3
cmp rdx, rcx
jae 0x1502f2a7d
mov rdx, rcx
movabs rax, 0xfffffffffffffff
bsr rcx, rax
mov eax, 1
shl rax, cl
cmp rdx, rax
ja 0x1502f2bf5
mov rbx, qword [0x15007e4d8]
lea rax, [rdx - 1]
or rax, 1
mov edi, 1
bsr rcx, rax
mov r8, rbx
inc ecx
shl rdi, cl
lea rcx, [0x15007e4e8]
lea rdx, [rdi + rdi]
call fcn.1502ae44c
mov rax, qword [0x15007e4d8]
lea r9, [rdi - 1]
mov qword [0x15007e500], r9
mov qword [0x15007e508], rdi
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x1502f2bea
mov rcx, qword [rcx]
movabs r11, 0xcbf29ce484222325
xor r8d, r8d
movzx edx, byte [r8 + rax + 0x10]
movabs r10, 0x100000001b3
xor r11, rdx
inc r8
imul r11, r10
cmp r8, 4
jb 0x1502f2b04
mov rdi, qword [0x15007e4e8]
and r11, r9
add r11, r11
cmp qword [rdi + r11*8], rbx
jne 0x1502f2b42
mov qword [rdi + r11*8], rax
mov qword [rdi + r11*8 + 8], rax
jmp 0x1502f2bb0
mov r10, qword [rdi + r11*8 + 8]
mov edx, dword [rax + 0x10]
cmp edx, dword [r10 + 0x10]
jne 0x1502f2b85
mov r10, qword [r10]
cmp r10, rax
je 0x1502f2b3b
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 0x1502f2b3b
mov r10, qword [r10 + 8]
cmp edx, dword [r10 + 0x10]
je 0x1502f2bc4
cmp qword [rdi + r11*8], r10
jne 0x1502f2b7b
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 [rdi + r11*8], rax
mov rax, rcx
cmp rcx, rbx
je 0x1502f2bea
mov r9, qword [0x15007e500]
jmp 0x1502f2af4
mov r10, qword [r10]
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 0x1502f2bb0
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rcx, [0x150175640]
call fcn.15040822c
int3
Function at 0x1502f5af0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov rdi, r8
mov rbp, rdx
mov r13, rcx
cmp rdx, r8
je 0x1502f5be0
mov rax, qword [rcx + 8]
mov rbx, rdx
mov rsi, qword [rdx + 8]
movabs r14, 0xcbf29ce484222325
mov r15, qword [rcx + 0x18]
movabs rdx, 0x100000001b3
mov qword [rsp + 0x78], rax
xor ecx, ecx
mov qword [rsp + 0x28], rsi
movzx eax, byte [rcx + rbp + 0x10]
inc rcx
xor r14, rax
imul r14, rdx
cmp rcx, 8
jb 0x1502f5b45
and r14, qword [r13 + 0x30]
add r14, r14
mov rax, qword [r15 + r14*8 + 8]
mov r12, qword [r15 + r14*8]
mov qword [rsp + 0x88], rax
mov rax, rbx
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x80], rbx
mov rbx, qword [rbx]
lea rdx, [rax + 0x18]
mov rcx, qword [rdx + 0x38]
test rcx, rcx
je 0x1502f5bab
mov rax, qword [rcx]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov rax, qword [rsp + 0x80]
and qword [rax + 0x50], 0
mov edx, 0x58
mov rcx, rax
call fcn.15040acc0
mov rax, qword [rsp + 0x88]
dec qword [r13 + 0x10]
cmp qword [rsp + 0x20], rax
je 0x1502f5bf8
cmp rbx, rdi
jne 0x1502f5b72
cmp r12, rbp
jne 0x1502f5bd9
mov qword [r15 + r14*8], rbx
mov qword [rsi], rbx
mov qword [rbx + 8], rsi
mov rbx, qword [rsp + 0x70]
mov rax, rdi
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
cmp r12, rbp
jne 0x1502f5c0b
mov r8, qword [rsp + 0x78]
mov qword [r15 + r14*8], r8
mov rax, r8
jmp 0x1502f5c0e
mov rax, rsi
mov qword [r15 + r14*8 + 8], rax
cmp rbx, rdi
je 0x1502f5bd9
movabs rcx, 0xcbf29ce484222325
xor edx, edx
movabs rsi, 0x100000001b3
movzx eax, byte [rbx + rdx + 0x10]
inc rdx
xor rcx, rax
imul rcx, rsi
cmp rdx, 8
jb 0x1502f5c2e
mov r14, qword [r13 + 0x30]
mov rsi, qword [rsp + 0x28]
and r14, rcx
add r14, r14
mov rax, qword [r15 + r14*8 + 8]
mov qword [rsp + 0x80], rax
mov r12, rbx
mov rbx, qword [rbx]
lea rbp, [r12 + 0x18]
mov rcx, qword [rbp + 0x38]
test rcx, rcx
je 0x1502f5c84
mov rax, qword [rcx]
cmp rcx, rbp
setne dl
call qword [rax + 0x20]
and qword [rbp + 0x38], 0
mov edx, 0x58
mov rcx, r12
call fcn.15040acc0
dec qword [r13 + 0x10]
cmp r12, qword [rsp + 0x80]
je 0x1502f5caa
cmp rbx, rdi
je 0x1502f5bd5
jmp 0x1502f5c5f
mov rax, qword [rsp + 0x78]
mov qword [r15 + r14*8], rax
jmp 0x1502f5c0e
Function at 0x1502f5fa0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x30
mov r12, r8
mov r14, rdx
xor ecx, ecx
movabs r15, 0xcbf29ce484222325
movzx eax, byte [rcx + r8]
xor r15, rax
movabs rdx, 0x100000001b3
imul r15, rdx
inc rcx
cmp rcx, 8
jb 0x1502f5fcf
mov rax, qword [0x150079910]
and rax, r15
add rax, rax
mov rcx, qword [0x1500798f8]
mov rbx, qword [rcx + rax*8 + 8]
mov rbp, qword [0x1500798e8]
cmp rbx, rbp
jne 0x1502f607b
mov rbx, rbp
mov rsi, rbp
movabs rax, 0x2e8ba2e8ba2e8ba
cmp qword [0x1500798f0], rax
je 0x1502f61f9
lea rax, [0x1500798e8]
mov qword [rsp + 0x20], rax
and qword [rsp + 0x28], 0
mov ecx, 0x58
call fcn.15040af44
mov rdi, rax
mov qword [rsp + 0x28], rax
mov rcx, qword [r12]
mov qword [rax + 0x10], rcx
and qword [rax + 0x50], 0
mov r8, qword [0x1500798f0]
lea rcx, [r8 + 1]
xorps xmm0, xmm0
test rcx, rcx
js 0x1502f60bf
cvtsi2ss xmm0, rcx
jmp 0x1502f60d4
mov rdx, qword [rcx + rax*8]
mov rax, qword [r8]
jmp 0x1502f608d
cmp rbx, rdx
je 0x1502f60b5
mov rbx, qword [rbx + 8]
cmp rax, qword [rbx + 0x10]
jne 0x1502f6084
mov rbp, qword [rbx]
mov rsi, rbp
mov rax, rbx
mov rbx, rbp
test rax, rax
je 0x1502f6019
mov qword [r14], rax
mov byte [r14 + 8], 0
jmp 0x1502f61d7
mov rbp, rbx
xor eax, eax
mov rsi, rbx
jmp 0x1502f609f
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rcx, qword [0x150079918]
xorps xmm1, xmm1
test rcx, rcx
js 0x1502f60ea
cvtsi2ss xmm1, rcx
jmp 0x1502f60ff
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [0x1500798e0]
seta al
test al, al
je 0x1502f616e
call fcn.1502f625c
mov rcx, qword [0x150079910]
and rcx, r15
add rcx, rcx
mov rdx, qword [0x1500798f8]
mov rax, qword [rdx + rcx*8 + 8]
mov rbx, qword [0x1500798e8]
cmp rax, rbx
je 0x1502f615a
mov r8, qword [rdx + rcx*8]
mov rcx, qword [rdi + 0x10]
jmp 0x1502f6151
mov rbx, rax
cmp rax, r8
je 0x1502f61b1
mov rax, qword [rax + 8]
cmp rcx, qword [rax + 0x10]
jne 0x1502f6145
mov rbx, qword [rax]
mov qword [rsp + 0x20], rbx
mov rsi, rbx
mov rbp, qword [rsp + 0x20]
mov r8, qword [0x1500798f0]
mov rdx, qword [rbx + 8]
inc r8
mov qword [0x1500798f0], r8
mov qword [rdi], rbp
mov qword [rdi + 8], rdx
mov qword [rdx], rdi
mov qword [rbx + 8], rdi
mov rax, qword [0x150079910]
and rax, r15
add rax, rax
mov rcx, qword [0x1500798f8]
mov r8, qword [rcx + rax*8]
cmp r8, qword [0x1500798e8]
jne 0x1502f61b8
mov qword [rcx + rax*8], rdi
jmp 0x1502f61ca
mov qword [rsp + 0x20], rax
jmp 0x1502f615f
cmp r8, rsi
jne 0x1502f61c3
mov qword [rcx + rax*8], rdi
jmp 0x1502f61cf
cmp qword [rcx + rax*8 + 8], rdx
jne 0x1502f61cf
mov qword [rcx + rax*8 + 8], rdi
mov qword [r14], rdi
mov byte [r14 + 8], 1
mov rax, r14
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
add rsp, 0x30
pop r15
pop r14
pop r12
ret
lea rcx, [0x1501755e8]
call fcn.15040822c
int3
Function at 0x1502f625c
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rcx, qword [0x1500798f0]
xorps xmm0, xmm0
add rcx, 1
js 0x1502f627d
cvtsi2ss xmm0, rcx
jmp 0x1502f6292
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm0, dword [0x1500798e0]
call fcn.1504413bc
movss xmm1, dword [0x1502703c8]
xor ecx, ecx
comiss xmm0, xmm1
jb 0x1502f62c4
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x1502f62c4
movabs rax, 0x8000000000000000
mov rcx, rax
mov rdx, qword [0x150079918]
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rdx, rcx
jae 0x1502f62f9
cmp rdx, 0x200
jae 0x1502f62f6
shl rdx, 3
cmp rdx, rcx
jae 0x1502f62f9
mov rdx, rcx
movabs rax, 0xfffffffffffffff
bsr rcx, rax
mov eax, 1
shl rax, cl
cmp rdx, rax
ja 0x1502f6472
mov rbx, qword [0x1500798e8]
lea rax, [rdx - 1]
or rax, 1
mov edi, 1
bsr rcx, rax
mov r8, rbx
inc ecx
shl rdi, cl
lea rcx, [0x1500798f8]
lea rdx, [rdi + rdi]
call fcn.1502ae44c
mov rax, qword [0x1500798e8]
lea r9, [rdi - 1]
mov qword [0x150079910], r9
mov qword [0x150079918], rdi
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x1502f6467
mov rcx, qword [rcx]
movabs r11, 0xcbf29ce484222325
xor r8d, r8d
movzx edx, byte [r8 + rax + 0x10]
movabs r10, 0x100000001b3
xor r11, rdx
inc r8
imul r11, r10
cmp r8, 8
jb 0x1502f6380
mov rdi, qword [0x1500798f8]
and r11, r9
add r11, r11
cmp qword [rdi + r11*8], rbx
jne 0x1502f63be
mov qword [rdi + r11*8], rax
mov qword [rdi + r11*8 + 8], rax
jmp 0x1502f642d
mov r10, qword [rdi + r11*8 + 8]
mov rdx, qword [rax + 0x10]
cmp rdx, qword [r10 + 0x10]
jne 0x1502f6402
mov r10, qword [r10]
cmp r10, rax
je 0x1502f63b7
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 0x1502f63b7
mov r10, qword [r10 + 8]
cmp rdx, qword [r10 + 0x10]
je 0x1502f6441
cmp qword [rdi + r11*8], r10
jne 0x1502f63f8
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 [rdi + r11*8], rax
mov rax, rcx
cmp rcx, rbx
je 0x1502f6467
mov r9, qword [0x150079910]
jmp 0x1502f6370
mov r10, qword [r10]
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 0x1502f642d
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rcx, [0x150175640]
call fcn.15040822c
int3
Function at 0x1503052f8
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rbx, rcx
xor al, al
mov ecx, dword [rcx + 0x7c]
cmp ecx, 0xffffffff
je 0x150305485
cmp ecx, 0x7c
je 0x150305485
cmp ecx, 0x29
jne 0x150305343
cmp dword [rbx + 0x1c], 0
jne 0x150305485
lea rdi, [rbx + 0x80]
test dword [rdi], 0x10000000
je 0x15030549b
jmp 0x15030543b
lea rdi, [rbx + 0x80]
cmp ecx, 0x2e
jne 0x15030536a
lea rcx, [rbx + 0x40]
mov edx, 5
call fcn.1503055c8
mov rcx, rbx
call fcn.1503052ac
jmp 0x150305473
cmp ecx, 0x5c
jne 0x1503053c7
mov rcx, rbx
call fcn.1503052ac
test byte [rdi], 0x80
je 0x1503053ba
mov al, byte [rbx + 0x78]
cmp al, 0x62
jne 0x15030539e
mov edx, 4
lea rcx, [rbx + 0x40]
call fcn.1503055c8
mov rcx, rbx
call fcn.1503052ac
jmp 0x15030547b
cmp al, 0x42
jne 0x1503053ba
lea rcx, [rbx + 0x40]
mov edx, 4
call fcn.1503055c8
mov rax, qword [rbx + 0x48]
xor dword [rax + 0xc], 1
jmp 0x150305391
mov rcx, rbx
call fcn.150306304
jmp 0x150305473
cmp ecx, 0x5b
jne 0x1503053eb
mov rcx, rbx
call fcn.1503052ac
mov rcx, rbx
call fcn.1503061c4
cmp dword [rbx + 0x7c], 0x5d
jne 0x1503054a6
jmp 0x15030535d
cmp ecx, 0x28
jne 0x15030540f
mov rcx, rbx
call fcn.1503052ac
mov rcx, rbx
call fcn.15030644c
cmp dword [rbx + 0x7c], 0x29
mov dil, al
jne 0x1503054b1
jmp 0x150305466
cmp ecx, 0x5e
jne 0x15030541c
lea edx, [rcx - 0x5c]
jmp 0x150305388
cmp ecx, 0x24
jne 0x150305429
lea edx, [rcx - 0x21]
jmp 0x150305388
lea eax, [rcx - 0x2a]
cmp eax, 1
jbe 0x150305490
cmp ecx, 0x3f
je 0x150305490
cmp ecx, 0x7b
je 0x150305490
cmp ecx, 0x7d
jne 0x15030544a
test dword [rdi], 0x10000000
je 0x1503054bc
jmp 0x150305457
cmp ecx, 0x5d
jne 0x150305457
test dword [rdi], 0x10000000
je 0x1503054c7
mov dl, byte [rbx + 0x78]
lea rcx, [rbx + 0x40]
call fcn.150306690
mov dil, 1
mov rcx, rbx
call fcn.1503052ac
test dil, dil
je 0x15030547b
mov rcx, rbx
call fcn.150306548
mov ecx, dword [rbx + 0x7c]
mov al, 1
jmp 0x15030530a
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
mov edx, 0xa
call fcn.1503045e4
int3
mov edx, 5
call fcn.1503045e4
int3
mov edx, 4
call fcn.1503045e4
int3
mov edx, 5
call fcn.1503045e4
int3
mov edx, 6
call fcn.1503045e4
int3
mov edx, 4
call fcn.1503045e4
int3
Function at 0x15030b4a4
Capabilities:
Access peb ldr_data

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rdi
push rbp
mov rbp, rsp
sub rsp, 0x50
mov rax, qword [0x150012098]
xor rax, rsp
mov qword [rbp - 8], rax
mov rbx, rcx
mov qword [rbp - 0x30], rcx
lea rax, [0x15017e550]
mov qword [rcx], rax
xor edi, edi
mov qword [rcx + 8], rdi
mov qword [rcx + 0x10], rdi
mov qword [rcx + 0x18], rdi
lea rax, [0x15017e5b8]
mov qword [rcx + 0x20], rax
mov qword [rcx + 0x28], rcx
lea rax, [0x15017e640]
mov qword [rcx + 0x30], rax
mov qword [rcx + 0x38], rcx
lea rax, [0x15017e2a0]
mov qword [rcx + 0x40], rax
mov qword [rcx + 0x48], rcx
lea rax, [0x15017e560]
mov qword [rcx + 0x50], rax
mov qword [rcx + 0x58], rcx
lea rax, [0x15017e340]
mov qword [rcx + 0x60], rax
mov qword [rcx + 0x68], rcx
mov qword [rcx + 0x70], rdi
mov qword [rcx + 0x78], rdi
mov qword [rcx + 0x80], rdi
mov edx, 0x40
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [rdx + rcx]
cmp dword [0x15007e530], eax
jg 0x15030b680
mov eax, 1
lock xadd dword [0x150043804], eax
inc eax
cmp eax, 1
jne 0x15030b581
xor ecx, ecx
call qword [sym.imp.ole32.dll_OleInitialize]
test eax, eax
jne 0x15030b6b0
xorps xmm0, xmm0
movups xmmword [rbp - 0x28], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x18], xmm1
mov r8d, 0x19
lea rdx, [0x15017e3a0]
lea rcx, [rbp - 0x28]
call fcn.1502a75e8
nop
mov edx, 0x2af8
lea rcx, [rbp - 0x28]
call fcn.15030bc44
nop
mov edi, 0x1000
mov rdx, qword [rbp - 0x10]
cmp rdx, 0x10
jb 0x15030b5f2
inc rdx
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, rdi
jb 0x15030b5ed
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x15030b67a
call fcn.15040acc0
xorps xmm0, xmm0
movups xmmword [rbp - 0x28], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x18], xmm1
mov r8d, SafeArrayUnaccessData
lea rdx, [0x15017e408]
lea rcx, [rbp - 0x28]
call fcn.1502a75e8
nop
mov edx, 1
lea rcx, [rbp - 0x28]
call fcn.15030bc44
nop
mov rdx, qword [rbp - 0x10]
cmp rdx, 0x10
jb 0x15030b65b
inc rdx
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, rdi
jb 0x15030b655
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x15030b67a
call fcn.15040acc0
nop
mov rax, rbx
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.15040aca0
mov rbx, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x70]
add rsp, 0x50
pop rbp
ret
call fcn.150419d24
nop
lea rcx, [0x15007e530]
call fcn.15040b028
cmp dword [0x15007e530], 0xffffffff
jne 0x15030b55d
call fcn.15030b2fc
nop
lea rcx, [0x15007e530]
call fcn.15040afbc
jmp 0x15030b55d
lea rdx, [0x15017e3c0]
lea rcx, [rbp - 0x28]
call fcn.1502bbea8
lea rdx, [0x1502a0838]
lea rcx, [rbp - 0x28]
call fcn.15040e028
int3