Function at 0x1400024f0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xa8
mov rdi, rdx
mov rsi, rcx
movabs rax, 0x609daa94fd3be193
movabs rcx, 0x5ebf841b7f1fc561
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x98], rax
mov r12, qword [rdx + 0xe8]
mov r13, qword [rdx + 0xf0]
shl r13, 4
mov r14, 0xffffffffffffffff
xor ebx, ebx
lea r15, [rsp + 0x90]
xor ebp, ebp
nop word cs:[rax + rax]
cmp r13, rbp
je 0x1400025dc
lea rcx, [r12 + rbp]
mov rdx, r15
call sym._ZN107__LT_clap_builder..util..any_value..AnyValueId_u20_as_u20_core..cmp..PartialEq_LT_core..any..TypeId_GT__GT_2eq17h0a2d922
inc r14
add rbp, 0x10
test al, al
je 0x140002560
mov rdx, qword [rdi + 0x108]
cmp r14, rdx
jae 0x1400027bb
mov rax, qword [rdi + 0x100]
mov rcx, qword [rax + rbp*2 - 0x20]
mov rax, qword [rax + rbp*2 - 0x18]
mov rdx, qword [rax + 0x10]
dec rdx
and rdx, 0xfffffffffffffff0
lea rbx, [rcx + rdx]
add rbx, 0x10
mov rcx, rbx
call qword [rax + 0x18]
movabs rcx, 0x5ebf841b7f1fc561
cmp rax, rcx
jne 0x1400027cc
movabs rax, 0x609daa94fd3be193
cmp rdx, rax
jne 0x1400027cc
test rbx, rbx
lea rax, section..rdata
cmovne rax, rbx
mov rcx, qword [rax]
mov rdx, qword [rax + 6]
mov qword [rsp + 0x2e], rdx
mov qword [rsp + 0x28], rcx
mov rcx, qword [rax + 0xe]
mov rdx, qword [rax + 0x14]
mov qword [rsp + 0x3c], rdx
mov qword [rsp + 0x36], rcx
mov rcx, qword [rax + 0x1c]
mov rdx, qword [rax + 0x22]
mov qword [rsp + 0x4a], rdx
mov qword [rsp + 0x44], rcx
mov rcx, qword [rax + 0x2a]
mov rdx, qword [rax + 0x30]
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x52], rcx
mov rcx, qword [rax + 0x38]
mov rdx, qword [rax + 0x3e]
mov qword [rsp + 0x66], rdx
mov qword [rsp + 0x60], rcx
mov rcx, qword [rax + 0x46]
mov rdx, qword [rax + 0x4c]
mov qword [rsp + 0x74], rdx
mov qword [rsp + 0x6e], rcx
mov rcx, qword [rax + 0x54]
mov rax, qword [rax + 0x5a]
mov qword [rsp + 0x82], rax
mov qword [rsp + 0x7c], rcx
movzx eax, word [rsp + 0x88]
mov word [rsi + 0xd8], ax
mov eax, dword [rsp + 0x78]
mov dword [rsi + 0xc8], eax
mov rax, qword [rsp + 0x7c]
mov qword [rsi + 0xcc], rax
mov eax, dword [rsp + 0x84]
mov dword [rsi + 0xd4], eax
mov eax, dword [rsp + 0x68]
mov dword [rsi + 0xb8], eax
movzx eax, word [rsp + 0x6c]
mov word [rsi + 0xbc], ax
mov rax, qword [rsp + 0x6e]
mov qword [rsi + 0xbe], rax
movzx eax, word [rsp + 0x76]
mov word [rsi + 0xc6], ax
movups xmm0, xmmword [rsp + 0x28]
movups xmm1, xmmword [rsp + 0x38]
movups xmm2, xmmword [rsp + 0x48]
movups xmm3, xmmword [rsp + 0x58]
movups xmmword [rsi + 0xa8], xmm3
movups xmmword [rsi + 0x98], xmm2
movups xmmword [rsi + 0x88], xmm1
movups xmmword [rsi + 0x78], xmm0
mov eax, dword [rdi + 0x2bc]
mov cl, 2
mov dl, 2
test eax, 0x20000000
jne 0x140002746
mov r8d, dword [rdi + 0x2c0]
mov ecx, r8d
or ecx, eax
shr ecx, 0x1c
and cl, 1
test r8d, 0x20000000
movzx r9d, cl
mov edx, 2
mov ecx, 2
cmove ecx, r9d
and eax, 0x40000
and r8d, 0x20040000
or r8d, eax
cmove edx, r9d
mov byte [rsi + 0xdb], cl
mov byte [rsi + 0xdc], dl
lea rcx, [rsp + 0x90]
mov rdx, rdi
call sym.clap_builder::error::format::get_help_flag::hdea7d9f0fa034996
lea rdi, [rsi + 0x50]
mov rdx, qword [rsi + 0x50]
movabs rax, 0x8000000000000002
cmp rdx, rax
jl 0x14000278d
test rdx, rdx
je 0x14000278d
mov rcx, qword [rsi + 0x58]
mov r8d, 1
call sym.__rust_dealloc
mov rax, qword [rsp + 0xa0]
mov qword [rdi + 0x10], rax
movups xmm0, xmmword [rsp + 0x90]
movups xmmword [rdi], xmm0
mov rax, rsi
add rsp, 0xa8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r8, [0x140221750]
mov rcx, r14
call sym.core::panicking::panic_bounds_check::hf065bc95f1c7a8f7
jmp 0x1400027e4
lea rcx, [0x14022140b]
lea r8, [0x140221498]
mov edx, 0x22
call sym.core::option::expect_failed::h7cac1e3ba6dd990a
ud2