Function at 0x180040e60
Capabilities:
Authenticate hmac
Read file on windows

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x2d0]
sub rsp, 0x3e0
mov rax, qword [0x1800d73f8]
xor rax, rsp
mov qword [rbp + 0x2c0], rax
mov r15d, r9d
mov qword [rbp - 0x78], r8
imul eax, r15d, 0xbf4
mov r10, r8
mov dword [rbp - 0x50], r9d
mov r8, rcx
mov r9, qword [rbp + 0x330]
xor r12d, r12d
mov qword [rbp - 0x60], rcx
mov rdi, rdx
mov rcx, qword [rbp + 0x338]
mov r14d, r15d
mov qword [rbp - 0x28], rdx
mov qword [rbp - 0x70], r9
mov qword [rbp - 0x68], rcx
mov dword [rbp - 0x58], r15d
mov dword [rbp - 0x4c], eax
cmp r15d, eax
ja 0x180041602
movsxd rdx, dword [rbp - 0x80]
mov ebx, 0xdfff
mov rsi, rdx
mov qword [rbp - 0x38], rdx
mov r11d, 0x2000
nop word [rax + rax]
cmp r14d, 0xae9e
ja 0x18004135d
je 0x18004133c
cmp r14d, 0x576e
ja 0x1800410ac
je 0x180041041
cmp r14d, 0x3e
je 0x180041001
cmp r14d, 0x62
je 0x180040fea
cmp r14d, 0x2bd6
je 0x180040f92
cmp r14d, 0x454a
jne 0x1800415e1
cmp dword [rcx], 1
xorps xmm0, xmm0
movups xmmword [rbp + 0x1a0], xmm0
movups xmmword [rbp + 0x1b0], xmm0
movups xmmword [rbp + 0xf0], xmm0
movups xmmword [rbp + 0x100], xmm0
jle 0x1800415e1
mov rcx, qword [r9 + 8]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_strtol]
mov dword [0x1800d708c], eax
jmp 0x1800415c8
mov r8d, dword [r9]
cmp r8d, 0x80
jbe 0x180040fd6
lea rax, [rbp + 0x110]
mov qword [rbp - 0x20], r8
mov qword [rsp + 0x38], rax
mov r9d, 0x125
mov qword [rsp + 0x30], r12
lea rax, [rbp - 0x20]
mov qword [rsp + 0x28], r12
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x20], rax
call fcn.18009c6f0
jmp 0x1800415c8
mov rdx, rcx
lea rcx, [rbp + 0x110]
call sub.VCRUNTIME140.dll_memcpy
jmp 0x1800415c8
xorps xmm0, xmm0
movaps xmmword [rbp + 0x190], xmm0
movdqa xmmword [rbp + 0xe0], xmm0
jmp 0x1800415e1
xorps xmm0, xmm0
movups xmmword [rbp + 0x110], xmm0
movups xmmword [rbp + 0x120], xmm0
movups xmmword [rbp + 0x130], xmm0
movups xmmword [rbp + 0x140], xmm0
movups xmmword [rbp + 0x150], xmm0
movups xmmword [rbp + 0x160], xmm0
movups xmmword [rbp + 0x170], xmm0
movups xmmword [rbp + 0x180], xmm0
jmp 0x1800415e1
mov r8, r12
nop dword [rax]
nop dword [rax + rax]
mov edx, 0xfa
cmp edx, 0xfa
jne 0x18004107e
movzx ecx, byte [rbp + r8 + 0x110]
movzx eax, cl
xor al, 0x5c
xor cl, 0x36
mov byte [rbp + r8 + 0x240], al
mov byte [rbp + r8 + 0x1c0], cl
add edx, 0xb3b0
cmp edx, 0xb3b0
jbe 0x180041055
inc r8
cmp r8, 0x80
jl 0x180041050
xor edx, edx
lea rcx, [rbp + 0x10]
lea r8d, [rdx + 0x34]
call fcn.18007e970
jmp 0x1800415c8
cmp r14d, 0x8306
je 0x180041316
cmp r14d, 0x8a32
je 0x1800410ef
cmp r14d, 0x9fca
jne 0x1800415e1
cmp dword [r9], 0
movzx eax, word [rcx]
je 0x1800410e4
or ax, r11w
mov word [rcx], ax
jmp 0x1800415e1
and ax, bx
mov word [rcx], ax
jmp 0x1800415e1
cmp dword [rcx], 2
jle 0x1800411c9
mov ecx, 0x1f
nop dword [rax]
mov eax, ecx
sub eax, 0x1f
je 0x1800411a4
sub eax, 1
je 0x180041124
cmp eax, 1
jne 0x1800411b5
mov r14d, 0x8a32
jmp 0x1800411b5
cmp rsi, 0x10
jge 0x18004119d
mov rdi, qword [rbp - 0x30]
nop
cmp byte [rdi], 0
je 0x180041196
cmp byte [rdi + 1], 0
je 0x180041196
mov ebx, 0xed
mov eax, ebx
sub eax, 0xed
je 0x180041158
cmp eax, 0x2f
jne 0x180041185
inc edx
mov dword [rbp - 0x80], edx
inc rsi
jmp 0x180041185
lea r8, [rbp - 0x54]
mov rcx, rdi
lea rdx, str._2hx
call fcn.1800aa750
test eax, eax
je 0x180041196
movzx eax, byte [rbp - 0x54]
add rdi, 2
mov edx, dword [rbp - 0x80]
mov byte [rbp + rsi + 0xe0], al
mov qword [rbp - 0x30], rdi
add ebx, 0x2f
cmp ebx, 0x14b
jb 0x180041140
cmp rsi, 0x10
jl 0x180041130
mov edx, dword [rbp - 0x80]
mov r9, qword [rbp - 0x70]
mov ecx, 0x20
jmp 0x1800411b5
mov rax, qword [r9 + 0x10]
mov edx, r12d
mov dword [rbp - 0x80], edx
mov rsi, r12
mov qword [rbp - 0x30], rax
inc ecx
cmp ecx, 0x22
jb 0x180041100
mov qword [rbp - 0x38], rsi
jmp 0x1800412f1
mov edi, 0x23
nop
cmp edi, 0x23
je 0x1800411ed
cmp edi, 0x70
jne 0x1800412e2
mov rcx, qword [rbp - 0x18]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
jmp 0x1800412e2
lea rdx, [0x1800c8a34]
lea rcx, str.St._Pierre_j
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fopen]
mov qword [rbp - 0x18], rax
test rax, rax
je 0x18004122c
mov edx, 0x10
lea rcx, [rbp + 0xe0]
mov r9, rax
lea r8d, [rdx - 0xf]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
test rax, rax
jne 0x1800412e2
mov ebx, 0x6f
mov eax, ebx
sub eax, 0x6b
je 0x1800412c9
sub eax, 1
je 0x1800412ab
sub eax, 1
je 0x18004128d
sub eax, 1
je 0x18004126f
cmp eax, 1
jne 0x1800412d7
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
imul rcx, rax, 0x539
xor byte [rbp + 0xe0], cl
mov qword [rbp - 0x48], rcx
jmp 0x1800412d7
mov rax, qword [rbp - 0x48]
shr rax, 8
xor byte [rbp + 0xe1], al
mov rax, qword [rbp - 0x48]
shr rax, 0x10
xor byte [rbp + 0xe2], al
jmp 0x1800412d7
mov rax, qword [rbp - 0x48]
shr rax, 0x18
xor byte [rbp + 0xe3], al
mov rax, qword [rbp - 0x48]
shr rax, 0x20
xor byte [rbp + 0xe4], al
jmp 0x1800412d7
mov rax, qword [rbp - 0x48]
shr rax, 0x28
xor byte [rbp + 0xe5], al
mov rax, qword [rbp - 0x48]
shr rax, 0x30
xor byte [rbp + 0xe6], al
jmp 0x1800412d7
mov rax, qword [rbp - 0x48]
shr rax, 0x38
xor byte [rbp + 0xe7], al
dec ebx
cmp ebx, 0x6a
ja 0x180041231
add edi, 0x4d
cmp edi, 0xbd
jb 0x1800411d0
lea r9, [rbp + 0xe0]
mov dword [rsp + 0x20], 0x87
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.180077580
mov ebx, 0xdfff
jmp 0x1800415c8
lea r9, [rbp + 0x10]
mov qword [rbp - 0x10], 0x80
lea r8, [rbp + 0x1c0]
mov edx, 0x74
lea rcx, [rbp - 0x10]
call fcn.18003d700
jmp 0x1800415c8
mov eax, dword [r8]
lea r9, [rbp + 0x10]
mov r8, r10
mov qword [rbp - 8], rax
mov edx, 0x74
lea rcx, [rbp - 8]
call fcn.18003d700
jmp 0x1800415c8
cmp r14d, 0x11402
ja 0x1800414d4
je 0x1800413e2
cmp r14d, 0xcf1a
je 0x1800413cb
cmp r14d, 0xda36
je 0x1800413b1
cmp r14d, 0x105ce
jne 0x1800415e1
lea r9, [rbp + 0x10]
mov qword [rbp], 0x80
lea r8, [rbp + 0x240]
mov edx, 0x74
lea rcx, [rbp]
call fcn.18003d700
jmp 0x1800415c8
lea r8, [rbp + 0x10]
mov edx, 0x122
lea rcx, [rbp + 0x110]
call fcn.180042050
jmp 0x180041098
mov edx, dword [0x1800d708c]
lea rcx, str.VkOffset2D::y_
call fcn.1800aa620
jmp 0x1800415c8
movzx eax, byte [rbp + 0xef]
movzx ecx, byte [rbp + 0xee]
movzx r10d, byte [rbp + 0xed]
movzx r11d, byte [rbp + 0xec]
movzx ebx, byte [rbp + 0xeb]
movzx edi, byte [rbp + 0xea]
movzx esi, byte [rbp + 0xe9]
movzx r14d, byte [rbp + 0xe8]
movzx r15d, byte [rbp + 0xe7]
movzx r12d, byte [rbp + 0xe6]
movzx r13d, byte [rbp + 0xe5]
movzx r9d, byte [rbp + 0xe2]
movzx r8d, byte [rbp + 0xe1]
movzx edx, byte [rbp + 0xe0]
mov dword [rsp + 0x80], eax
movzx eax, byte [rbp + 0xe4]
mov dword [rsp + 0x78], ecx
lea rcx, str.bool___thiscall_OT::ContextFormat2::sanitize_OT::hb_sanitize_context_t___const
mov dword [rsp + 0x70], r10d
mov dword [rsp + 0x68], r11d
mov dword [rsp + 0x60], ebx
mov dword [rsp + 0x58], edi
mov dword [rsp + 0x50], esi
mov dword [rsp + 0x48], r14d
mov dword [rsp + 0x40], r15d
mov dword [rsp + 0x38], r12d
mov dword [rsp + 0x30], r13d
mov dword [rsp + 0x28], eax
movzx eax, byte [rbp + 0xe3]
mov dword [rsp + 0x20], eax
call fcn.1800aa620
xor r12d, r12d
xor r9d, r9d
mov qword [rsp + 0x28], r12
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], r12
mov r8d, 0xb2
call fcn.180086c20
mov r14d, dword [rbp - 0x58]
mov ebx, 0xdfff
mov r15d, dword [rbp - 0x50]
jmp 0x1800415c8
cmp r14d, 0x158ea
je 0x1800415a9
cmp r14d, 0x19dd2
je 0x180041508
cmp r14d, 0x1e2ba
jne 0x1800415e1
xor edx, edx
mov ecx, 0x10c
call fcn.18000d0b0
jmp 0x1800415c8
xor r9d, r9d
xor edx, edx
xor ecx, ecx
mov r8d, 0x8d
call fcn.1800224f0
test al, 1
je 0x1800415c8
lea r9, [rbp + 0xf0]
mov qword [rsp + 0x20], r12
xor r8d, r8d
xor edx, edx
mov ecx, 0x106
call fcn.18007fd10
xor r9d, r9d
xor edx, edx
xor ecx, ecx
mov r8d, 0x8d
call fcn.1800224f0
mov rcx, qword [0x1800d75b8]
lea r8, [rbp + 0xf0]
test al, 1
mov r9d, 0xa4
cmove r8, r12
xor edx, edx
call fcn.1800742c0
test eax, eax
jne 0x1800415c8
lea ecx, [rax + 2]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
xor r9d, r9d
lea r8, [0x1800c0e21]
mov rcx, rax
lea rdx, str.node_evals
lea rax, str.QtQtQtQtQtQtQtQtQtQtQtQthMhNhOhPaThQhR.WhSQthThUQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQt
mov qword [rsp + 0x20], rax
call fcn.1800aa5d0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_abort]
int3
mov r8d, 0x38
mov dword [rbp - 0x40], 3
lea rdx, [rbp - 0x40]
xor ecx, ecx
call fcn.180017050
mov qword [0x1800d75b8], rax
mov edx, dword [rbp - 0x80]
mov r11d, 0x2000
mov rcx, qword [rbp - 0x68]
mov r9, qword [rbp - 0x70]
mov r8, qword [rbp - 0x60]
mov r10, qword [rbp - 0x78]
imul eax, r15d, 0xb4
add r14d, eax
mov dword [rbp - 0x58], r14d
cmp r14d, dword [rbp - 0x4c]
ja 0x1800415fe
mov rsi, qword [rbp - 0x38]
jmp 0x180040f00
mov rdi, qword [rbp - 0x28]
lea ebx, [r15 + 0x12]
mov dword [rbp - 0x80], ebx
cmp r15d, ebx
jae 0x18004199a
mov eax, dword [rbp - 0x80]
lea ebx, [r15 - 0x3e]
mov dword [rbp - 0x58], ebx
lea rdx, [0x180000000]
cmp ebx, 0x34
ja case.default.0x18004163e
movzx eax, byte [rdx + rbx + 0x41a14]
mov ecx, dword [rdx + rax*4 + 0x419c8]
add rcx, rdx
jmp rcx
mov ecx, 0x6e
call fcn.18006e550
jmp 0x18004196e
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov ecx, 0xb5
call fcn.180056920
xor edx, edx
xor ecx, ecx
lea r8d, [rdx + 0x27]
call fcn.180022800
jmp 0x18004196e
xor edx, edx
xor ecx, ecx
mov r8d, 0xb6
call fcn.180036190
jmp 0x18004196e
lea r9, [rbp + 0xf0]
mov qword [rsp + 0x20], r12
xor r8d, r8d
xor edx, edx
mov ecx, 0x106
call fcn.18007fd10
movzx eax, byte [rbp + 0xff]
movzx ecx, byte [rbp + 0xfe]
movzx r10d, byte [rbp + 0xfd]
movzx r11d, byte [rbp + 0xfc]
movzx ebx, byte [rbp + 0xfb]
movzx edi, byte [rbp + 0xfa]
movzx esi, byte [rbp + 0xf9]
movzx r14d, byte [rbp + 0xf8]
movzx r15d, byte [rbp + 0xf7]
movzx r12d, byte [rbp + 0xf6]
movzx r13d, byte [rbp + 0xf5]
movzx r9d, byte [rbp + 0xf2]
movzx r8d, byte [rbp + 0xf1]
movzx edx, byte [rbp + 0xf0]
mov dword [rsp + 0x80], eax
movzx eax, byte [rbp + 0xf4]
mov dword [rsp + 0x78], ecx
lea rcx, str.Enable_stack_protectors_for_functions_potentially_vulnerable_to_stack_smashing
mov dword [rsp + 0x70], r10d
mov dword [rsp + 0x68], r11d
mov dword [rsp + 0x60], ebx
mov dword [rsp + 0x58], edi
mov dword [rsp + 0x50], esi
mov dword [rsp + 0x48], r14d
mov dword [rsp + 0x40], r15d
mov dword [rsp + 0x38], r12d
mov dword [rsp + 0x30], r13d
mov dword [rsp + 0x28], eax
movzx eax, byte [rbp + 0xf3]
mov dword [rsp + 0x20], eax
call fcn.1800aa620
mov ebx, dword [rbp - 0x58]
mov r15d, dword [rbp - 0x50]
jmp 0x18004196e
lea r9, [rbp + 0x10]
mov qword [rbp - 0x78], 0x40
lea r8, [rbp + 0x110]
mov edx, 0x74
lea rcx, [rbp - 0x78]
call fcn.18003d700
lea r8, [rbp + 0x10]
mov edx, 0x122
mov rcx, rdi
call fcn.180042050
jmp 0x18004196e
xor edx, edx
xor r8d, r8d
lea ecx, [rdx + 0x63]
call fcn.18006e3e0
jmp 0x18004196e
xor r9d, r9d
xor edx, edx
xor ecx, ecx
lea r8d, [r9 + 0x62]
call fcn.18006fa10
xor edx, edx
xor ecx, ecx
mov r8d, 0x12a
call fcn.18006f2a0
jmp 0x18004196e
mov r9d, 0x97
mov qword [rsp + 0x20], r12
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.18005ba40
jmp 0x18004196e
xor edx, edx
xor ecx, ecx
mov r8d, 0xe4
call fcn.18003c720
mov r9d, 0xfe
mov qword [rsp + 0x28], r12
xor r8d, r8d
mov qword [rsp + 0x20], r12
xor edx, edx
xor ecx, ecx
call fcn.18005d2f0
jmp 0x18004196e
mov eax, 0xf2
nop dword [rax]
cmp eax, 0xf2
je 0x180041995
add eax, 0x3c
cmp eax, 0x12e
jb 0x180041830
mov rdx, qword [0x1800d75b8]
mov r9d, 0x117
xor r8d, r8d
mov qword [rsp + 0x20], r12
xor ecx, ecx
call fcn.180023e20
lea rcx, str.pcmpgtb_mm1_mm2m64
call fcn.1800aa620
jmp 0x18004196e
xor edx, edx
xor r9d, r9d
xor r8d, r8d
lea ecx, [rdx + 0x18]
call fcn.180070110
jmp 0x18004196e
mov qword [rsp + 0x28], r12
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], r12
xor edx, edx
mov ecx, 0xa5
call fcn.18006f5e0
mov r9d, 0xd7
mov qword [rsp + 0x20], r12
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.180074c40
jmp 0x18004196e
mov ecx, 0x62
call fcn.18005e740
xor r9d, r9d
mov qword [rsp + 0x28], r12
xor edx, edx
mov qword [rsp + 0x20], r12
xor ecx, ecx
mov r8d, 0x87
call fcn.18006e630
jmp 0x18004196e
mov qword [rsp + 0x28], r12
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], 0x6a
xor edx, edx
xor ecx, ecx
call fcn.180058120
xor edx, edx
xor ecx, ecx
lea r8d, [rdx + 0x4a]
call fcn.180010610
jmp 0x18004196e
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov ecx, 0xfb
call fcn.18006dd70
xor edx, edx
mov qword [rsp + 0x28], r12
xor r9d, r9d
mov qword [rsp + 0x20], r12
xor r8d, r8d
lea ecx, [rdx + 0x69]
call fcn.180051400
jmp 0x18004196e
xor edx, edx
lea ecx, [rdx + 3]
call fcn.180039290
jmp 0x18004196e
xor r9d, r9d
xor r8d, r8d
xor ecx, ecx
lea edx, [r9 + 0x7c]
call fcn.180052770
xor r8d, r8d
xor ecx, ecx
lea edx, [r8 + 2]
call fcn.180090d20
lea rdx, [0x180000000]
mov eax, dword [rbp - 0x80]
inc r15d
inc ebx
mov dword [rbp - 0x50], r15d
mov dword [rbp - 0x58], ebx
cmp r15d, eax
jae 0x18004199a
mov rdi, qword [rbp - 0x28]
xor r12d, r12d
jmp 0x180041623
mov eax, r12d
jmp 0x18004199d
mov eax, dword [rbp - 0x4c]
mov rcx, qword [rbp + 0x2c0]
xor rcx, rsp
call fcn.1800aafa0
mov rbx, qword [rsp + 0x438]
add rsp, 0x3e0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret