joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140082e30
Capabilities:
Query environment variable
Write file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push r14
sub rsp, 0x20
cmp dword [0x1401bb028], 0
mov ebp, edx
mov rbx, rcx
mov r14d, edx
jne 0x140082e7e
lea rcx, str.dglDUMP_FLAGS
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
test rax, rax
je 0x140082e74
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
mov dword [0x1401bb028], eax
jmp 0x140082e7e
mov dword [0x1401bb028], 0x1f
mov r8d, 0x20
lea rcx, str._cloop__n
mov edx, ebp
call fcn.140001fb0
movzx r9d, byte [rbx + 0x20]
lea rax, str.unknown
add ebp, 2
lea rcx, [0x1401a2cb0]
mov r8d, 0x20
mov edx, ebp
mov r9, qword [rax + r9*8]
call fcn.140001fb0
mov rbx, qword [rbx + 0x18]
test rbx, rbx
je 0x14008302b
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rsi
cmp dword [0x1401bb028], 0
jne 0x140082f06
lea rcx, str.dglDUMP_FLAGS
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
test rax, rax
je 0x140082efc
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
mov dword [0x1401bb028], eax
jmp 0x140082f06
mov dword [0x1401bb028], 0x1f
mov r8d, 0x20
lea rcx, str._ccoedge__n
mov edx, ebp
call fcn.140001fb0
movzx eax, byte [rbx + 0x29]
test al, al
je 0x140082f3a
mov r9d, eax
lea edx, [rbp + 2]
mov r8d, 0x20
lea rcx, str._cprefer_____:__x_n
call fcn.140001fb0
cmp qword [rbx + 0x10], 0
je 0x140082fc2
test byte [0x1401bb028], 2
je 0x140082fc2
movzx r9d, byte [rbx + 0x28]
lea edx, [rbp + 2]
mov r8d, 0x20
lea rcx, str._cedgeSense__:__d
call fcn.140001fb0
cmp dword [0x1401bb028], 0
mov rsi, qword [rbx + 0x10]
jne 0x140082fa2
lea rcx, str.dglDUMP_FLAGS
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
test rax, rax
je 0x140082f98
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
mov dword [0x1401bb028], eax
jmp 0x140082fa2
mov dword [0x1401bb028], 0x1f
mov r8d, 0x20
lea edx, [rbp + 2]
lea rcx, str._n_cedge__n
call fcn.140001fb0
lea edx, [rbp + 2]
mov rcx, rsi
call fcn.140083ee0
test byte [0x1401bb028], 4
je 0x140083001
mov rcx, qword [rbx + 0x18]
lea r8d, [rbp + 2]
lea rdx, [0x1401a2c10]
call fcn.140083b90
mov rcx, qword [rbx + 0x20]
test rcx, rcx
je 0x140083001
test byte [0x1401bb028], 1
je 0x140083001
lea r8d, [rbp + 2]
lea rdx, [0x1401a2c20]
call fcn.140083b90
mov r8d, 0x20
lea rcx, [0x1401a2c34]
mov edx, ebp
call fcn.140001fb0
mov rbx, qword [rbx]
test rbx, rbx
jne 0x140082ed0
mov rdi, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x30]
mov r8d, 0x20
lea rcx, [0x1401a2cc4]
mov edx, r14d
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
add rsp, 0x20
pop r14
jmp fcn.140001fb0
Function at 0x140083ee0
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rdi
sub rsp, 0x50
movsxd rax, dword [0x1401bb004]
mov ebx, edx
imul r8, rax, 0x38
mov rax, qword [0x140175020]
mov rdi, rcx
mov ebp, edx
test dword [r8 + rax + 0x18], 0x2000
je 0x140083f5b
add rcx, 0x28
mov qword [rsp + 0x60], rsi
call fcn.1400206b0
test rax, rax
jne 0x140083f56
mov r8d, dword [0x1401bb02c]
lea rdx, str.__GE_d
lea rcx, [rsp + 0x40]
lea eax, [r8 + 1]
mov dword [0x1401bb02c], eax
call fcn.140002a20
lea rdx, [rsp + 0x40]
lea rcx, [rdi + 0x28]
call fcn.140020880
mov rsi, qword [rsp + 0x60]
movsd xmm0, qword [0x1401587f8]
add ebx, 2
movsd xmm2, qword [0x140183680]
comisd xmm0, xmm2
ja 0x140083f77
xorps xmm2, xmm2
movsd xmm3, qword [0x140183678]
comisd xmm0, xmm3
jbe 0x140083f8f
mulsd xmm3, qword [0x1401587a0]
jmp 0x140083f92
xorps xmm3, xmm3
movsd xmm0, qword [0x140183690]
lea rcx, [0x1401a2b68]
movsd xmm1, qword [0x140183688]
movq r9, xmm3
movsd qword [rsp + 0x30], xmm0
mov r8d, 0x20
movsd qword [rsp + 0x28], xmm1
mov edx, ebx
movsd qword [rsp + 0x20], xmm2
call fcn.140001fb0
movzx eax, byte [rdi + 0x38]
test al, al
je 0x140083fec
mov r9d, eax
lea rcx, str._cflags______:__x_n
mov r8d, 0x20
mov edx, ebx
call fcn.140001fb0
mov rcx, qword [rdi + 0x18]
lea rdx, [0x1401a2bac]
mov r8d, ebx
call fcn.140083b90
cmp dword [rdi + 0x30], 0
jle 0x140084010
lea rcx, [rdi + 0x28]
mov edx, ebx
call fcn.140083a50
mov r8d, 0x20
lea rcx, [0x1401a2bb4]
mov edx, ebp
mov rbx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x70]
add rsp, 0x50
pop rdi
jmp fcn.140001fb0
Function at 0x14008a3c0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x30
movaps xmmword [rsp + 0x20], xmm6
mov rbx, rdx
movaps xmm6, xmm2
mov rdi, rcx
mulsd xmm6, qword [0x1401587e8]
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
movaps xmm1, xmm0
movaps xmm3, xmm0
mulsd xmm1, qword [rbx]
movsd qword [rdi], xmm1
mulsd xmm3, qword [rbx + 8]
movsd qword [rdi + 8], xmm3
mulsd xmm0, qword [rbx + 0x10]
movsd qword [rdi + 0x10], xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
xorps xmm1, xmm1
movsd qword [rdi + 0x18], xmm0
comisd xmm1, xmm0
jbe 0x14008a445
movaps xmm1, xmmword [0x140158af0]
xor eax, eax
nop dword [rax]
movups xmm0, xmmword [rdi + rax*8]
xorps xmm0, xmm1
movups xmmword [rdi + rax*8], xmm0
add rax, 2
cmp rax, 4
jl 0x14008a430
mov rbx, qword [rsp + 0x40]
movaps xmm6, xmmword [rsp + 0x20]
add rsp, 0x30
pop rdi
ret

Function at 0x14008c0e0
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
xor esi, esi
mov rbx, rdx
mov rdi, rcx
mov rax, rdx
test rdx, rdx
je 0x14008c10b
nop
mov rax, qword [rax + 0x10]
inc esi
test rax, rax
jne 0x14008c100
mov eax, dword [rcx + 0x30]
test eax, eax
je 0x14008c12e
mov rcx, qword [rcx + 8]
lea rdx, [0x1401a3f20]
mov r9d, 0x20
mov r8d, eax
call fcn.14007da90
mov eax, dword [rdi + 0x30]
mov r8, qword [str.triangle_list]
lea rdx, [0x1401a3f24]
mov rcx, qword [rdi + 8]
add eax, 2
mov dword [rdi + 0x30], eax
call fcn.14007da90
mov r8, qword [str.vertex_count]
lea r9d, [rsi + rsi*2]
mov rcx, qword [rdi + 8]
lea rdx, str.__s__d_
call fcn.14007da90
mov rcx, qword [rdi + 8]
lea r9, [0x1401a3f28]
mov edx, 2
lea r8d, [rdx - 1]
call fcn.14007db70
test rbx, rbx
je 0x14008c1b1
mov rdx, qword [rbx + 0x20]
mov rcx, rdi
call fcn.14008c680
mov rdx, qword [rbx + 0x28]
mov rcx, rdi
call fcn.14008c680
mov rdx, qword [rbx + 0x30]
mov rcx, rdi
call fcn.14008c680
mov rbx, qword [rbx + 0x10]
test rbx, rbx
jne 0x14008c184
mov r8d, dword [rdi + 0x30]
add r8d, 0xfffffffe
mov dword [rdi + 0x30], r8d
je 0x14008c1d5
mov rcx, qword [rdi + 8]
lea rdx, [0x1401a3f2c]
mov r9d, 0x20
call fcn.14007da90
mov r8, qword [str.triangle_list]
lea rdx, str.___s__n
mov rcx, qword [rdi + 8]
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
jmp fcn.14007da90
Function at 0x14008c5a0
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov eax, dword [rcx + 0x30]
movzx edi, r8b
mov rsi, rdx
mov rbx, rcx
test eax, eax
je 0x14008c5dc
mov rcx, qword [rcx + 8]
lea rdx, [0x1401a3f20]
mov r9d, 0x20
mov r8d, eax
call fcn.14007da90
mov eax, dword [rbx + 0x30]
mov r8, qword [0x1401a3eb8]
lea rdx, [0x1401a3f24]
mov rcx, qword [rbx + 8]
add eax, 2
mov dword [rbx + 0x30], eax
call fcn.14007da90
mov r9, qword [rsi + 8]
mov edx, 0x2e
add r9, 0x10
mov rcx, rbx
lea r8d, [rdx - 0x2b]
call fcn.14008bbb0
test dil, 1
je 0x14008c62d
mov edx, 0x2f
lea r9, [rsi + 0x18]
mov rcx, rbx
lea r8d, [rdx - 0x2c]
call fcn.14008bbb0
test dil, 2
je 0x14008c648
mov edx, gethostbyname
lea r9, [rsi + 0x18]
mov rcx, rbx
lea r8d, [rdx - 0x2c]
call fcn.14008bbb0
add dword [rbx + 0x30], 0xfffffffe
lea r9, [0x1401a3f38]
mov rcx, qword [rbx + 8]
mov edx, 3
lea r8d, [rdx - 2]
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
jmp fcn.14007db70

Function at 0x14008c680
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov eax, dword [rcx + 0x30]
mov rdi, rdx
mov rbx, rcx
test eax, eax
je 0x14008c6b3
mov rcx, qword [rcx + 8]
lea rdx, [0x1401a3f20]
mov r9d, 0x20
mov r8d, eax
call fcn.14007da90
mov eax, dword [rbx + 0x30]
mov r8, qword [0x1401a3eb8]
lea rdx, [0x1401a3f24]
mov rcx, qword [rbx + 8]
add eax, 2
mov dword [rbx + 0x30], eax
call fcn.14007da90
mov r9d, dword [rdi + 0x40]
lea rdx, str.__s__d_
mov r8, qword [str.index]
dec r9d
mov rcx, qword [rbx + 8]
call fcn.14007da90
add dword [rbx + 0x30], 0xfffffffe
lea r9, [0x1401a3f38]
mov rcx, qword [rbx + 8]
mov edx, 3
lea r8d, [rdx - 2]
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
jmp fcn.14007db70
Function at 0x140099ce0
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x20
mov ebx, ecx
test ecx, ecx
jne 0x140099cf1
lea ebx, [rcx + 5]
jmp 0x140099d1e
cmp ecx, 2
jne 0x140099d04
mov rcx, qword [0x1401bba88]
call fcn.1400d8aa0
jmp 0x140099d1e
cmp ecx, 3
jne 0x140099d1e
cmp dword [0x1401bb380], 0
jne 0x140099d1e
mov rcx, qword [0x1401bba88]
call fcn.1400d8980
cmp dword [0x1401bbb50], 0
je 0x140099d46
mov rcx, qword [0x1401bba88]
lea rdx, str.qhull_error_while_ending_program.__Exit_program_n
call fcn.140011c80
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov edx, ebx
mov dword [0x1401bbb50], 1
lea rcx, [0x1401bb950]
call sub.VCRUNTIME140.dll_longjmp
int3

Function at 0x140099e50
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x50
movsd xmm0, qword [rdx + 8]
mov rdi, rdx
movsd xmm1, qword [rdx + 0x10]
mov rbx, rcx
movaps xmmword [rsp + 0x40], xmm6
movaps xmmword [rsp + 0x30], xmm7
movsd xmm7, qword [rdx]
mulsd xmm0, xmm0
movaps xmm3, xmm7
mulsd xmm3, xmm7
mulsd xmm1, xmm1
movaps xmmword [rsp + 0x20], xmm8
movaps xmm8, xmm2
addsd xmm3, xmm0
xorps xmm0, xmm0
addsd xmm3, xmm1
ucomisd xmm0, xmm3
ja 0x140099ea8
sqrtpd xmm6, xmm3
jmp 0x140099eb3
movaps xmm0, xmm3
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
movaps xmm6, xmm0
movsd xmm1, qword [0x140158c30]
comisd xmm1, xmm6
jbe 0x140099ef6
movsd xmm0, qword [0x140158c60]
movsd qword [rbx], xmm0
movsd xmm1, qword [0x140158c68]
movsd qword [rbx + 8], xmm1
movsd xmm0, qword [0x140158c70]
movsd qword [rbx + 0x10], xmm0
movsd xmm1, qword [0x140158c78]
movsd qword [rbx + 0x18], xmm1
jmp 0x140099f65
mulsd xmm8, qword [0x1401587e8]
movaps xmm0, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
divsd xmm0, xmm6
mulsd xmm7, xmm0
movaps xmm1, xmm0
movsd qword [rbx], xmm7
mulsd xmm1, qword [rdi + 8]
movsd qword [rbx + 8], xmm1
movsd xmm2, qword [rdi + 0x10]
mulsd xmm2, xmm0
movaps xmm0, xmm8
movsd qword [rbx + 0x10], xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
xorps xmm1, xmm1
movsd qword [rbx + 0x18], xmm0
comisd xmm1, xmm0
jbe 0x140099f65
movaps xmm1, xmmword [0x140158af0]
xor eax, eax
nop
movups xmm0, xmmword [rbx + rax*8]
xorps xmm0, xmm1
movups xmmword [rbx + rax*8], xmm0
add rax, 2
cmp rax, 4
jl 0x140099f50
mov rbx, qword [rsp + 0x60]
movaps xmm6, xmmword [rsp + 0x40]
movaps xmm7, xmmword [rsp + 0x30]
movaps xmm8, xmmword [rsp + 0x20]
add rsp, 0x50
pop rdi
ret
Function at 0x1400a2150
Capabilities:
Write file on windows

Disassembly:
push rbx
sub rsp, 0x20
movzx edx, byte [rcx + 8]
mov rbx, rcx
call fcn.1400a21a0
cmp eax, 0xffffffff
je 0x1400a2176
cmp qword [rbx + 0x40], 0
je 0x1400a2176
xor eax, eax
add rsp, 0x20
pop rbx
ret
lea r8, str.Failed_to_convert_CURVE_n
mov edx, 2
mov ecx, 0x233c
add rsp, 0x20
pop rbx
jmp fcn.140001480
Function at 0x1400b2bc0
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x30
movsxd r12, edx
mov rsi, r9
mov rdi, r8
mov r15, rcx
mov r14, qword [r8 + r12*8 + 8]
test r14, r14
je 0x1400b2d6a
mov rbp, r12
xor rbp, 2
cmp qword [r9 + rbp*8 + 8], 0
je 0x1400b2d6a
movsd xmm0, qword [r9 + r12*8 + 0x30]
subsd xmm0, qword [r8 + r12*8 + 0x30]
mulsd xmm0, qword [rsp + 0x70]
addsd xmm0, qword [r8 + r12*8 + 0x30]
divsd xmm0, qword [rcx + r12*8 + 0x60]
addsd xmm0, qword [0x1401587e8]
call sub.api_ms_win_crt_math_l1_1_0.dll_floor
movaps xmm3, xmm0
mulsd xmm3, qword [r15 + r12*8 + 0x60]
ucomisd xmm3, qword [rdi + r12*8 + 0x30]
jp 0x1400b2c4f
je 0x1400b2c5a
ucomisd xmm3, qword [rsi + r12*8 + 0x30]
jp 0x1400b2c7b
jne 0x1400b2c7b
xor eax, eax
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
mov rax, qword [r14 + 0x10]
cmp rax, rsi
je 0x1400b2cb6
nop dword [rax]
nop dword [rax + rax]
movsd xmm0, qword [rax + r12*8 + 0x30]
ucomisd xmm0, xmm3
jp 0x1400b2c9f
je 0x1400b2c5c
comisd xmm0, xmm3
ja 0x1400b2cb6
mov rdi, rax
mov rax, qword [rax + r12*8 + 8]
mov rax, qword [rax + 0x10]
cmp rax, rsi
jne 0x1400b2c90
movsd xmm1, qword [rdi + r12*8 + 0x30]
mov rdi, qword [rdi + r12*8 + 8]
subsd xmm3, xmm1
cmp dword [rdi + 0x20], 0xffffffff
mov rcx, qword [rdi + 0x10]
movsd xmm0, qword [rcx + r12*8 + 0x30]
subsd xmm0, xmm1
divsd xmm3, xmm0
je 0x1400b2cf7
lea rcx, str.ERROR__trying_to_subdivide_an_intersect_tested_edge_n
call fcn.140011cd0
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov rax, qword [rdi + 8]
lea rdx, [rsp + 0x20]
movsd xmm1, qword [rcx + 0x30]
movsd xmm0, qword [rcx + 0x38]
mov rcx, r15
subsd xmm1, qword [rax + 0x30]
subsd xmm0, qword [rax + 0x38]
mulsd xmm1, xmm3
mulsd xmm0, xmm3
addsd xmm1, qword [rax + 0x30]
addsd xmm0, qword [rax + 0x38]
movsd qword [rsp + 0x20], xmm1
movsd qword [rsp + 0x28], xmm0
call fcn.1400b28c0
mov rbx, rax
test rax, rax
jne 0x1400b2d47
jmp 0x1400b2c5c
mov r9, qword [rdi + 0x10]
mov r8, rbx
mov edx, r12d
mov rcx, r15
call fcn.1400b25e0
mov qword [rbx + rbp*8 + 8], rdi
mov rax, rbx
mov qword [rdi + 0x10], rbx
jmp 0x1400b2c5c
lea rcx, str.ERROR__trying_to_subdivide_NULL_edges_n
call fcn.140011cd0
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
Function at 0x1400b67a0
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rdi
sub rsp, 0x38
movsd xmm2, qword [rdx]
xor ebx, ebx
movsd xmm0, qword [rdx + 0x28]
movaps xmm1, xmm2
movsd xmm3, qword [rdx + 0x50]
addsd xmm1, xmm0
mov qword [rsp + 0x50], rsi
mov rdi, rcx
movaps xmmword [rsp + 0x20], xmm6
mov rsi, rdx
xorps xmm6, xmm6
addsd xmm1, xmm3
comisd xmm1, xmm6
jbe 0x1400b684f
addsd xmm1, qword [0x1401587f0]
xorps xmm0, xmm0
ucomisd xmm0, xmm1
ja 0x1400b67f2
sqrtpd xmm0, xmm1
jmp 0x1400b67fa
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
movsd xmm2, qword [0x1401587e8]
movaps xmm3, xmm0
mulsd xmm3, xmm2
divsd xmm2, xmm0
movsd qword [rdi + 0x18], xmm3
movsd xmm0, qword [rsi + 0x30]
subsd xmm0, qword [rsi + 0x48]
mulsd xmm0, xmm2
movsd qword [rdi], xmm0
movsd xmm1, qword [rsi + 0x40]
subsd xmm1, qword [rsi + 0x10]
mulsd xmm1, xmm2
movsd qword [rdi + 8], xmm1
movsd xmm0, qword [rsi + 8]
subsd xmm0, qword [rsi + 0x20]
mulsd xmm0, xmm2
movsd qword [rdi + 0x10], xmm0
jmp 0x1400b694d
comisd xmm0, xmm2
mov edx, ebx
mov qword [rsp + 0x58], r12
mov eax, 1
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x30], r15
cmova edx, eax
mov eax, 2
lea rcx, [rdx + rdx*4]
comisd xmm3, xmmword [rsi + rcx*8]
cmova edx, eax
lea rax, [0x1401ab240]
mov r14d, edx
movsxd r15, dword [rax + rdx*4]
lea rdx, [rdx + rdx*4]
movsd xmm1, qword [rsi + rdx*8]
movsxd r12, dword [rax + r15*4]
lea rcx, [r15 + r15*4]
lea rax, [r12 + r12*4]
movsd xmm0, qword [rsi + rax*8]
addsd xmm0, qword [rsi + rcx*8]
subsd xmm1, xmm0
xorps xmm0, xmm0
addsd xmm1, qword [0x1401587f0]
ucomisd xmm0, xmm1
ja 0x1400b68c5
sqrtpd xmm0, xmm1
jmp 0x1400b68cd
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
movsd xmm2, qword [0x1401587e8]
lea rax, [r12 + r15*4]
movaps xmm1, xmm0
lea rcx, [r15 + r12*4]
mulsd xmm1, xmm2
divsd xmm2, xmm0
movsd qword [rdi + r14*8], xmm1
movsd xmm0, qword [rsi + rax*8]
lea rax, [r15 + r14*4]
subsd xmm0, qword [rsi + rcx*8]
lea rcx, [r14 + r15*4]
mulsd xmm0, xmm2
movsd qword [rdi + 0x18], xmm0
movsd xmm0, qword [rsi + rax*8]
lea rax, [r14 + r12*4]
addsd xmm0, qword [rsi + rcx*8]
lea rcx, [r12 + r14*4]
mov r14, qword [rsp + 0x60]
mulsd xmm0, xmm2
movsd qword [rdi + r15*8], xmm0
movsd xmm0, qword [rsi + rax*8]
addsd xmm0, qword [rsi + rcx*8]
mov r15, qword [rsp + 0x30]
mulsd xmm0, xmm2
movsd qword [rdi + r12*8], xmm0
movsd xmm3, qword [rdi + 0x18]
mov r12, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x50]
comisd xmm6, xmm3
movaps xmm6, xmmword [rsp + 0x20]
jbe 0x1400b6985
movaps xmm1, xmmword [0x140158af0]
nop dword [rax]
nop dword [rax + rax]
movups xmm0, xmmword [rdi + rbx*8]
xorps xmm0, xmm1
movups xmmword [rdi + rbx*8], xmm0
add rbx, 2
cmp rbx, 4
jl 0x1400b6970
add rsp, 0x38
pop rdi
pop rbx
ret
Function at 0x1400b7cf0
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x40
mov rax, qword [rcx]
mov rsi, rcx
mov qword [rsp + 0x50], rbp
lea rcx, [0x1401ab400]
mov qword [rsp + 0x58], r14
mov r8d, 0x20
mov r14d, edx
mov r9d, dword [rax]
dec r9d
call fcn.140001fb0
mov rax, qword [rsi + 8]
lea rcx, str._ccontrolPointCount_:__d_n
mov r8d, 0x20
mov edx, r14d
mov r9d, dword [rax]
call fcn.140001fb0
mov rax, qword [rsi + 8]
xor ebx, ebx
mov ebp, ebx
cmp dword [rax], ebx
jle 0x1400b7d9d
mov edi, ebx
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rax + 8]
lea rcx, str._c____d____0.16g___0.16g___0.16g___0.16g__n
mov r9d, ebp
mov r8d, 0x20
mov edx, r14d
movups xmm0, xmmword [rdi + rax + 0x10]
movups xmmword [rsp + 0x30], xmm0
movups xmm0, xmmword [rdi + rax]
movups xmmword [rsp + 0x20], xmm0
call fcn.140001fb0
mov rax, qword [rsi + 8]
lea rdi, [rdi + 0x20]
inc ebp
cmp ebp, dword [rax]
jl 0x1400b7d60
mov rax, qword [rsi]
lea rcx, str._cknotCount__:__d_n_c
mov dword [rsp + 0x28], 0x20
mov r8d, 0x20
mov edx, r14d
mov dword [rsp + 0x20], r14d
mov r9d, dword [rax + 4]
call fcn.140001fb0
mov rax, qword [rsi]
mov r14, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x50]
cmp dword [rax + 4], ebx
jle 0x1400b7e08
mov rdi, rbx
nop dword [rax + rax]
mov rax, qword [rax + 8]
lea rcx, [0x1401ab480]
movsd xmm1, qword [rax + rdi]
movq rdx, xmm1
call fcn.140001fb0
mov rax, qword [rsi]
lea rdi, [rdi + 8]
inc ebx
cmp ebx, dword [rax + 4]
jl 0x1400b7de0
lea rcx, [0x1401ab414]
mov rbx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
add rsp, 0x40
pop rdi
jmp fcn.140001fb0
Function at 0x1400b7e30
Capabilities:
Write file on windows

Disassembly:
mov rax, rsp
push rbx
push rbp
push r14
sub rsp, 0x50
mov qword [rax + 0x10], rdi
mov r14, rcx
mov qword [rax + 0x18], r12
mov r8d, 0x20
mov qword [rax + 0x20], r15
mov r12d, edx
mov rax, qword [rcx]
lea rcx, str._cdegreeU____:__d_n
mov r9d, dword [rax]
dec r9d
call fcn.140001fb0
mov rax, qword [r14 + 8]
lea rcx, str._cdegreeV____:__d_n
mov r8d, 0x20
mov edx, r12d
mov r9d, dword [rax]
dec r9d
call fcn.140001fb0
mov rax, qword [r14 + 0x10]
lea rcx, str._ccontrolPointCountU_:__d_n
mov r8d, 0x20
mov edx, r12d
mov r9d, dword [rax]
call fcn.140001fb0
mov rax, qword [r14 + 0x10]
lea rcx, str._ccontrolPointCountV_:__d_n
mov r8d, 0x20
mov edx, r12d
mov r9d, dword [rax + 4]
call fcn.140001fb0
mov rax, qword [r14 + 0x10]
xor ebp, ebp
mov r15d, ebp
cmp dword [rax + 4], ebp
jle 0x1400b7f4e
mov qword [rsp + 0x70], rsi
mov rdx, rax
mov ebx, ebp
nop dword [rax]
mov edi, ebp
mov rcx, rdx
cmp dword [rdx], ebp
jle 0x1400b7f39
mov rsi, rbp
nop dword [rax]
mov rax, qword [rax + 8]
mov r9d, edi
mov r8d, 0x20
mov edx, r12d
mov rcx, qword [rax + rsi]
movups xmm0, xmmword [rbx + rcx + 0x10]
movups xmmword [rsp + 0x38], xmm0
movups xmm0, xmmword [rbx + rcx]
lea rcx, str._c____d___d____0.16g___0.16g___0.16g___0.16g__n
movups xmmword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], r15d
call fcn.140001fb0
mov rax, qword [r14 + 0x10]
lea rsi, [rsi + 8]
inc edi
cmp edi, dword [rax]
jl 0x1400b7ef0
mov rcx, rax
inc r15d
add rbx, 0x20
mov rdx, rcx
cmp r15d, dword [rcx + 4]
jl 0x1400b7ee0
mov rsi, qword [rsp + 0x70]
mov rax, qword [r14]
lea rcx, str._cknotCountU_:__d_n_c
mov dword [rsp + 0x28], 0x20
mov r8d, 0x20
mov edx, r12d
mov dword [rsp + 0x20], r12d
mov r9d, dword [rax + 4]
call fcn.140001fb0
mov rax, qword [r14]
mov edi, ebp
mov r15, qword [rsp + 0x88]
cmp dword [rax + 4], ebp
jle 0x1400b7fb8
mov rbx, rbp
nop dword [rax]
mov rax, qword [rax + 8]
lea rcx, [0x1401ab548]
movsd xmm1, qword [rax + rbx]
movq rdx, xmm1
call fcn.140001fb0
mov rax, qword [r14]
lea rbx, [rbx + 8]
inc edi
cmp edi, dword [rax + 4]
jl 0x1400b7f90
mov rax, qword [r14 + 8]
lea rcx, str._n_cknotCountV_:__d_n_c
mov dword [rsp + 0x28], 0x20
mov r8d, 0x20
mov edx, r12d
mov dword [rsp + 0x20], r12d
mov r9d, dword [rax + 4]
call fcn.140001fb0
mov rax, qword [r14 + 8]
mov r12, qword [rsp + 0x80]
mov rdi, qword [rsp + 0x78]
cmp dword [rax + 4], ebp
jle 0x1400b8029
mov rbx, rbp
nop dword [rax + rax]
mov rax, qword [rax + 8]
lea rcx, str.__0.16g
movsd xmm1, qword [rax + rbx]
movq rdx, xmm1
call fcn.140001fb0
mov rax, qword [r14 + 8]
lea rbx, [rbx + 8]
inc ebp
cmp ebp, dword [rax + 4]
jl 0x1400b8000
lea rcx, [0x1401ab434]
add rsp, 0x50
pop r14
pop rbp
pop rbx
jmp fcn.140001fb0
Function at 0x1400b8d30
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x68
movsd xmm5, qword [r8]
movsd xmm4, qword [rdx + 0x18]
movaps xmm2, xmm5
mulsd xmm2, xmm4
movaps xmmword [rsp + 0x50], xmm6
movsd xmm6, qword [rdx]
movaps xmmword [rsp + 0x40], xmm7
movsd xmm7, qword [r8 + 8]
movaps xmmword [rsp + 0x30], xmm8
movaps xmm3, xmm7
movsd xmm8, qword [rdx + 8]
movaps xmmword [rsp + 0x20], xmm9
movsd xmm9, qword [r8 + 0x10]
movaps xmm1, xmm9
mulsd xmm3, xmm4
mulsd xmm1, xmm8
movaps xmmword [rsp + 0x10], xmm10
movsd xmm10, qword [rdx + 0x10]
movaps xmmword [rsp], xmm11
movsd xmm11, qword [r8 + 0x18]
movaps xmm0, xmm11
mulsd xmm0, xmm6
addsd xmm2, xmm0
movaps xmm0, xmm7
mulsd xmm0, xmm10
addsd xmm2, xmm1
movaps xmm1, xmm5
mulsd xmm1, xmm10
subsd xmm2, xmm0
movaps xmm0, xmm11
mulsd xmm0, xmm8
movsd qword [rcx], xmm2
movaps xmm2, xmm9
addsd xmm3, xmm0
mulsd xmm2, xmm4
movaps xmm0, xmm9
mulsd xmm9, xmm10
mulsd xmm0, xmm6
addsd xmm3, xmm1
movaps xmm1, xmm7
mulsd xmm7, xmm8
mulsd xmm1, xmm6
subsd xmm3, xmm0
movaps xmm0, xmm11
mulsd xmm0, xmm10
mulsd xmm11, xmm4
movsd qword [rcx + 8], xmm3
addsd xmm2, xmm0
movaps xmm0, xmm5
mulsd xmm0, xmm8
mulsd xmm5, xmm6
addsd xmm2, xmm1
subsd xmm11, xmm5
subsd xmm2, xmm0
xorps xmm0, xmm0
subsd xmm11, xmm7
movsd qword [rcx + 0x10], xmm2
subsd xmm11, xmm9
comisd xmm0, xmm11
movsd qword [rcx + 0x18], xmm11
jbe 0x1400b8e65
movaps xmm1, xmmword [0x140158af0]
xor eax, eax
nop
movups xmm0, xmmword [rcx + rax*8]
xorps xmm0, xmm1
movups xmmword [rcx + rax*8], xmm0
add rax, 2
cmp rax, 4
jl 0x1400b8e50
movaps xmm6, xmmword [rsp + 0x50]
movaps xmm7, xmmword [rsp + 0x40]
movaps xmm8, xmmword [rsp + 0x30]
movaps xmm9, xmmword [rsp + 0x20]
movaps xmm10, xmmword [rsp + 0x10]
movaps xmm11, xmmword [rsp]
add rsp, 0x68
ret
Function at 0x1400be1e0
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
movsd xmm0, qword [0x140183690]
xor esi, esi
xorps xmm1, xmm1
mov rdi, rcx
comisd xmm0, xmm1
jbe 0x1400be224
mov rdx, qword [rcx + 0x90]
test rdx, rdx
je 0x1400be224
mov rbx, qword [rdx]
mov rcx, rdi
call fcn.1400bc480
mov rdx, rbx
test rbx, rbx
jne 0x1400be211
mov rbx, qword [rdi + 0x90]
test rbx, rbx
je 0x1400be296
mov rdx, rbx
mov rcx, rdi
call fcn.1400bd8e0
test eax, eax
je 0x1400be24b
cmp eax, 1
jle 0x1400be248
mov byte [rbx + 0x2b], 1
mov rbx, qword [rbx]
test rbx, rbx
jne 0x1400be230
mov rbx, qword [rdi + 0x90]
test rbx, rbx
je 0x1400be296
nop dword [rax]
cmp byte [rbx + 0x2b], 0
jne 0x1400be278
mov rdx, rbx
mov rcx, rdi
call fcn.1400bcfa0
cmp eax, 0xffffffff
jne 0x1400be278
inc esi
mov rbx, qword [rbx]
test rbx, rbx
jne 0x1400be260
test esi, esi
je 0x1400be296
mov r8d, esi
lea rdx, str._d_Surface_facets_dropped___Resolution__n
lea ecx, [rbx + 3]
call fcn.140002870
mov eax, dword [0x1401ab864]
test eax, eax
jns 0x1400be2c3
lea rcx, str.dgl_RMV_BOGUSVERT
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
test rax, rax
je 0x1400be2df
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
mov dword [0x1401ab864], eax
test eax, eax
jne 0x1400be2cd
mov rcx, rdi
call fcn.1400bcd60
mov rbx, qword [rsp + 0x30]
xor eax, eax
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
mov dword [0x1401ab864], 0
jmp 0x1400be2c5