Function at 0x1800d6790
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, 0x98
mov qword [rsp + 0x40], rcx
movaps xmm0, xmmword [rsp + 0x100]
movups xmmword [rsp + 0x48], xmm0
mov r13, qword [rdx]
mov rbx, qword [rdx + 8]
mov r12, qword [rdx + 0x18]
mov r15, qword [rdx + 0x10]
lea rax, [r15 + r12]
lea rcx, [r15 + 0x80]
mov qword [rsp + 0x88], rcx
lea rbp, [r15 + r12 + 0x80]
mov qword [rsp + 0x60], rax
lea rax, [r13 + rax*2]
mov qword [rsp + 0x90], rax
lea rax, [r15 + r15 - 0x40]
mov qword [rsp + 0x70], rax
lea rax, [r15*2 - 0x80]
mov qword [rsp + 0x68], rax
xor r11d, r11d
xor esi, esi
mov qword [rsp + 0x80], r15
mov qword [rsp + 0x78], r13
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rbp
mov rdx, qword [rsp + 0x50]
mov rdi, rdx
sub rdi, r11
jb 0x1800d73b1
lea rdx, [r8 + rsi]
mov rcx, qword [rsp + 0x48]
mov rax, r9
sub rax, rsi
cmp rdi, rax
mov r14, rax
cmovb r14, rdi
lea r12, [rcx + r11]
mov ebx, edx
xor ebx, r12d
test bl, 7
jne 0x1800d6871
mov ebp, edx
neg ebp
and ebp, 7
lea rbx, [rbp + 0x10]
cmp rbx, r14
jbe 0x1800d689f
xor r15d, r15d
cmp r15, r14
jae 0x1800d71c0
nop dword [rax]
movzx r13d, byte [rdx + r15]
test r13b, r13b
js 0x1800d69f0
mov byte [r12 + r15], r13b
inc r15
cmp r14, r15
jne 0x1800d6880
jmp 0x1800d71c0
test rbp, rbp
je 0x1800d697d
movzx r13d, byte [rdx]
test r13b, r13b
js 0x1800d69ed
mov byte [r12], r13b
mov r15d, 1
cmp ebp, 1
je 0x1800d6980
movzx r13d, byte [rdx + 1]
test r13b, r13b
js 0x1800d69f0
mov byte [r12 + 1], r13b
mov r15d, 2
cmp ebp, 2
je 0x1800d6980
movzx r13d, byte [rdx + 2]
test r13b, r13b
js 0x1800d69f0
mov byte [r12 + 2], r13b
mov r15d, 3
cmp ebp, 3
je 0x1800d6980
movzx r13d, byte [rdx + 3]
test r13b, r13b
js 0x1800d69f0
mov byte [r12 + 3], r13b
mov r15d, 4
cmp ebp, 4
je 0x1800d6980
movzx r13d, byte [rdx + 4]
test r13b, r13b
js 0x1800d69f0
mov byte [r12 + 4], r13b
mov r15d, 5
cmp ebp, 5
je 0x1800d6980
movzx r13d, byte [rdx + 5]
test r13b, r13b
js 0x1800d69f0
mov byte [r12 + 5], r13b
mov r15d, 6
cmp ebp, 6
je 0x1800d6980
movzx r13d, byte [rdx + 6]
test r13b, r13b
js 0x1800d69f0
mov byte [r12 + 6], r13b
mov r15d, 7
jmp 0x1800d6980
xor r15d, r15d
lea r13, [r14 - 0x10]
add rcx, r11
add rcx, 8
nop dword [rax + rax]
mov rbx, qword [rdx + r15]
mov r10, qword [rdx + r15 + 8]
mov qword [rcx + r15 - 8], rbx
mov qword [rcx + r15], r10
movabs rbp, 0x8080808080808080
and rbx, rbp
and r10, rbp
mov rbp, r10
or rbp, rbx
jne 0x1800d69c8
add r15, 0x10
cmp r15, r13
jbe 0x1800d6990
jmp 0x1800d6874
test rbx, rbx
je 0x1800d718c
tzcnt rcx, rbx
shr ecx, 3
mov rbx, qword [rsp + 0x38]
mov r12, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x28]
jmp 0x1800d71b3
xor r15d, r15d
mov rbx, qword [rsp + 0x38]
mov r12, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x28]
add rsi, r15
add r11, r15
mov qword [rsp + 0x58], r11
cmp r13b, 0xe0
jae 0x1800d6a30
lea rdx, [rsi + 1]
cmp rdx, r9
jae 0x1800d7339
and r13b, 0x1f
movzx edi, r13b
shl edi, 6
mov ecx, 2
jmp 0x1800d6a6d
lea rdi, [rsi + 1]
cmp r13b, 0xf0
jae 0x1800d7233
cmp rdi, r9
jae 0x1800d734d
lea rdx, [rsi + 2]
cmp rdx, r9
jae 0x1800d7361
movzx ecx, r13b
shl ecx, 0xc
movzx edi, byte [r8 + rdi]
and edi, 0x3f
shl edi, 6
or edi, ecx
mov ecx, 3
movzx edx, byte [r8 + rdx]
and edx, 0x3f
or edi, edx
add rsi, rcx
mov r15, qword [rsp + 0x80]
mov r13, qword [rsp + 0x78]
movzx r14d, di
mov rdx, r14
sub rdx, rbx
cmp rdx, r12
jae 0x1800d6ab0
add edx, dword [rsp + 0x88]
jmp 0x1800d6e90
cmp qword [rsp + 0x60], 0x80
ja 0x1800d73c2
je 0x1800d6af5
xor edx, edx
nop word cs:[rax + rax]
mov rax, qword [rsp + 0x90]
cmp word [rax + rdx*2], di
je 0x1800d6e7e
lea rcx, [rdx + rbp]
inc rcx
inc rdx
cmp rcx, 0x100
jne 0x1800d6ad0
cmp r15, 0x3f
jbe 0x1800d6cd9
cmp r15, 0x81
jae 0x1800d73f0
cmp r15, 0x40
je 0x1800d6b38
mov rcx, qword [rsp + 0x68]
xor edx, edx
nop dword [rax]
cmp word [r13 + rdx*2 + 0x80], di
je 0x1800d6e82
inc rdx
add rcx, 0xfffffffffffffffe
jne 0x1800d6b20
mov dl, 0xa0
cmp word [r13 + 0x40], di
je 0x1800d6e90
mov dl, 0xa1
cmp word [r13 + 0x42], di
je 0x1800d6e90
mov dl, 0xa2
cmp word [r13 + 0x44], di
je 0x1800d6e90
mov dl, 0xa3
cmp word [r13 + 0x46], di
je 0x1800d6e90
mov dl, 0xa4
cmp word [r13 + 0x48], di
je 0x1800d6e90
mov dl, 0xa5
cmp word [r13 + 0x4a], di
je 0x1800d6e90
mov dl, 0xa6
cmp word [r13 + 0x4c], di
je 0x1800d6e90
mov dl, 0xa7
cmp word [r13 + 0x4e], di
je 0x1800d6e90
mov dl, 0xa8
cmp word [r13 + 0x50], di
je 0x1800d6e90
mov dl, 0xa9
cmp word [r13 + 0x52], di
je 0x1800d6e90
mov dl, 0xaa
cmp word [r13 + 0x54], di
je 0x1800d6e90
mov dl, 0xab
cmp word [r13 + 0x56], di
je 0x1800d6e90
mov dl, 0xac
cmp word [r13 + 0x58], di
je 0x1800d6e90
mov dl, 0xad
cmp word [r13 + 0x5a], di
je 0x1800d6e90
mov dl, 0xae
cmp word [r13 + 0x5c], di
je 0x1800d6e90
mov dl, 0xaf
cmp word [r13 + 0x5e], di
je 0x1800d6e90
mov dl, 0xb0
cmp word [r13 + 0x60], di
je 0x1800d6e90
mov dl, 0xb1
cmp word [r13 + 0x62], di
je 0x1800d6e90
mov dl, 0xb2
cmp word [r13 + 0x64], di
je 0x1800d6e90
mov dl, 0xb3
cmp word [r13 + 0x66], di
je 0x1800d6e90
mov dl, 0xb4
cmp word [r13 + 0x68], di
je 0x1800d6e90
mov dl, 0xb5
cmp word [r13 + 0x6a], di
je 0x1800d6e90
mov dl, 0xb6
cmp word [r13 + 0x6c], di
je 0x1800d6e90
mov dl, 0xb7
cmp word [r13 + 0x6e], di
je 0x1800d6e90
mov dl, 0xb8
cmp word [r13 + 0x70], di
je 0x1800d6e90
mov dl, 0xb9
cmp word [r13 + 0x72], di
je 0x1800d6e90
mov dl, 0xba
cmp word [r13 + 0x74], di
je 0x1800d6e90
mov dl, 0xbb
cmp word [r13 + 0x76], di
je 0x1800d6e90
mov dl, 0xbc
cmp word [r13 + 0x78], di
je 0x1800d6e90
mov dl, 0xbd
cmp word [r13 + 0x7a], di
je 0x1800d6e90
mov dl, 0xbe
cmp word [r13 + 0x7c], di
je 0x1800d6e90
mov dl, 0xbf
cmp word [r13 + 0x7e], di
jne 0x1800d6d05
jmp 0x1800d6e90
cmp r15, 0x1f
jbe 0x1800d73da
cmp r15, 0x20
je 0x1800d6d05
mov rcx, qword [rsp + 0x70]
xor edx, edx
cmp word [r13 + rdx*2 + 0x40], di
je 0x1800d6e87
inc rdx
add rcx, 0xfffffffffffffffe
jne 0x1800d6cf0
mov dl, 0x80
cmp word [r13], di
je 0x1800d6e90
mov dl, 0x81
cmp word [r13 + 2], di
je 0x1800d6e90
mov dl, 0x82
cmp word [r13 + 4], di
je 0x1800d6e90
mov dl, 0x83
cmp word [r13 + 6], di
je 0x1800d6e90
mov dl, 0x84
cmp word [r13 + 8], di
je 0x1800d6e90
mov dl, 0x85
cmp word [r13 + 0xa], di
je 0x1800d6e90
mov dl, 0x86
cmp word [r13 + 0xc], di
je 0x1800d6e90
mov dl, 0x87
cmp word [r13 + 0xe], di
je 0x1800d6e90
mov dl, 0x88
cmp word [r13 + 0x10], di
je 0x1800d6e90
mov dl, 0x89
cmp word [r13 + 0x12], di
je 0x1800d6e90
mov dl, 0x8a
cmp word [r13 + 0x14], di
je 0x1800d6e90
mov dl, 0x8b
cmp word [r13 + 0x16], di
je 0x1800d6e90
mov dl, 0x8c
cmp word [r13 + 0x18], di
je 0x1800d6e90
mov dl, 0x8d
cmp word [r13 + 0x1a], di
je 0x1800d6e90
mov dl, 0x8e
cmp word [r13 + 0x1c], di
je 0x1800d6e90
mov dl, 0x8f
cmp word [r13 + 0x1e], di
je 0x1800d6e90
mov dl, 0x90
cmp word [r13 + 0x20], di
je 0x1800d6e90
mov dl, 0x91
cmp word [r13 + 0x22], di
je 0x1800d6e90
mov dl, 0x92
cmp word [r13 + 0x24], di
je 0x1800d6e90
mov dl, 0x93
cmp word [r13 + 0x26], di
je 0x1800d6e90
mov dl, 0x94
cmp word [r13 + 0x28], di
je 0x1800d6e90
mov dl, 0x95
cmp word [r13 + 0x2a], di
je 0x1800d6e90
mov dl, 0x96
cmp word [r13 + 0x2c], di
je 0x1800d6e90
mov dl, 0x97
cmp word [r13 + 0x2e], di
je 0x1800d6e90
mov dl, 0x98
cmp word [r13 + 0x30], di
je 0x1800d6e90
mov dl, 0x99
cmp word [r13 + 0x32], di
je 0x1800d6e90
mov dl, 0x9a
cmp word [r13 + 0x34], di
je 0x1800d6e90
mov dl, 0x9b
cmp word [r13 + 0x36], di
je 0x1800d6e90
mov dl, 0x9c
cmp word [r13 + 0x38], di
je 0x1800d6e90
mov dl, 0x9d
cmp word [r13 + 0x3a], di
je 0x1800d6e90
mov dl, 0x9e
cmp word [r13 + 0x3c], di
je 0x1800d6e90
mov dl, 0x9f
cmp word [r13 + 0x3e], di
je 0x1800d6e90
jmp 0x1800d741a
add edx, ebp
jmp 0x1800d6e90
add dl, 0xc0
jmp 0x1800d6e90
add dl, 0xa0
nop word [rax + rax]
mov rdi, qword [rsp + 0x50]
cmp r11, rdi
jae 0x1800d72ad
mov rcx, qword [rsp + 0x48]
mov byte [rcx + r11], dl
mov r11, qword [rsp + 0x58]
inc r11
mov qword [rsp + 0x58], r11
cmp rsi, r9
jae 0x1800d71f8
mov rdx, qword [rsp + 0x50]
cmp r11, rdx
jae 0x1800d7206
movzx eax, byte [r8 + rsi]
test al, al
js 0x1800d6ef0
inc rsi
mov ecx, 2
jmp 0x1800d6fe0
movzx ecx, al
lea rdi, [rsi + 1]
cmp al, 0xe0
jae 0x1800d6f1e
cmp rdi, r9
jae 0x1800d72c1
movzx ecx, cx
and ecx, 0x1f
shl ecx, 6
movzx eax, byte [r8 + rsi + 1]
and eax, 0x3f
or eax, ecx
add rsi, 2
jmp 0x1800d6f5f
cmp al, 0xf0
jae 0x1800d6f78
cmp rdi, r9
jae 0x1800d72d5
lea rdi, [rsi + 2]
cmp rdi, r9
jae 0x1800d72fd
movzx ecx, cx
shl ecx, 0xc
movzx r10d, byte [r8 + rsi + 1]
and r10d, 0x3f
shl r10d, 6
or r10d, ecx
movzx eax, byte [r8 + rsi + 2]
and eax, 0x3f
or eax, r10d
add rsi, 3
mov word [rsp + 0x22], ax
movzx ecx, byte [rsp + 0x27]
shl rcx, 0x20
mov edi, dword [rsp + 0x23]
or rdi, rcx
xor ecx, ecx
jmp 0x1800d6fe0
cmp rdi, r9
jae 0x1800d72e9
lea rdi, [rsi + 2]
cmp rdi, r9
jae 0x1800d7311
lea rdi, [rsi + 3]
cmp rdi, r9
jae 0x1800d7325
and ecx, 7
shl ecx, 0x12
movzx eax, byte [r8 + rsi + 1]
and eax, 0x3f
shl eax, 0xc
or eax, ecx
movzx ecx, byte [r8 + rsi + 2]
and ecx, 0x3f
shl ecx, 6
or ecx, eax
movzx edi, byte [r8 + rsi + 3]
and edi, 0x3f
or edi, ecx
add rsi, 4
shl edi, 8
mov ecx, 1
nop word cs:[rax + rax]
shl rdi, 0x18
movzx r10d, al
shl r10, 0x10
or r10, rdi
mov rdi, r10
shr rdi, 0x10
cmp rcx, 2
je 0x1800d7038
or r10, rcx
test cx, cx
je 0x1800d6a87
jmp 0x1800d722d
inc rsi
mov ecx, 2
shl rdi, 0x18
movzx r10d, al
shl r10, 0x10
or r10, rdi
mov rdi, r10
shr rdi, 0x10
cmp rcx, 2
jne 0x1800d716d
cmp r11, rdx
jae 0x1800d729c
mov rcx, qword [rsp + 0x48]
mov byte [rcx + r11], dil
mov r11, qword [rsp + 0x58]
inc r11
mov qword [rsp + 0x58], r11
cmp dil, 0x3c
jae 0x1800d717e
cmp rsi, r9
jae 0x1800d71f8
mov rdx, qword [rsp + 0x50]
cmp r11, rdx
jae 0x1800d7206
movzx eax, byte [r8 + rsi]
test al, al
jns 0x1800d7010
movzx ecx, al
lea rdi, [rsi + 1]
cmp al, 0xe0
jae 0x1800d70af
cmp rdi, r9
jae 0x1800d72c1
movzx ecx, cx
and ecx, 0x1f
shl ecx, 6
movzx eax, byte [r8 + rsi + 1]
and eax, 0x3f
or eax, ecx
add rsi, 2
jmp 0x1800d70f0
cmp al, 0xf0
jae 0x1800d710c
cmp rdi, r9
jae 0x1800d72d5
lea rdi, [rsi + 2]
cmp rdi, r9
jae 0x1800d72fd
movzx ecx, cx
shl ecx, 0xc
movzx r10d, byte [r8 + rsi + 1]
and r10d, 0x3f
shl r10d, 6
or r10d, ecx
movzx eax, byte [r8 + rsi + 2]
and eax, 0x3f
or eax, r10d
add rsi, 3
mov word [rsp + 0x22], ax
movzx ecx, byte [rsp + 0x27]
shl rcx, 0x20
mov edi, dword [rsp + 0x23]
or rdi, rcx
xor ecx, ecx
jmp 0x1800d7018
cmp rdi, r9
jae 0x1800d72e9
lea rdi, [rsi + 2]
cmp rdi, r9
jae 0x1800d7311
lea rdi, [rsi + 3]
cmp rdi, r9
jae 0x1800d7325
and ecx, 7
shl ecx, 0x12
movzx eax, byte [r8 + rsi + 1]
and eax, 0x3f
shl eax, 0xc
or eax, ecx
movzx ecx, byte [r8 + rsi + 2]
and ecx, 0x3f
shl ecx, 6
or ecx, eax
movzx edi, byte [r8 + rsi + 3]
and edi, 0x3f
or edi, ecx
add rsi, 4
shl edi, 8
mov ecx, 1
jmp 0x1800d7018
or r10, rcx
test cx, cx
je 0x1800d6a87
jmp 0x1800d722d
cmp rsi, r9
jbe 0x1800d6829
jmp 0x1800d7406
test r10, r10
mov rbx, qword [rsp + 0x38]
mov r12, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x28]
je 0x1800d71a7
tzcnt rcx, r10
jmp 0x1800d71ac
mov ecx, 0x40
shr ecx, 3
add rcx, 8
add r15, rcx
movzx r13d, byte [rdx + r15]
jmp 0x1800d69ff
xor ecx, ecx
cmp rdi, rax
setb cl
add rsi, r14
add r11, r14
movabs rdx, 0xffffffff00000000
lea r8, [rsp + 0x48]
and r8, rdx
add rcx, r8
add rcx, 0x110000
mov rax, qword [rsp + 0x40]
mov qword [rax], rsi
mov qword [rax + 8], rcx
jmp 0x1800d7215
mov rax, qword [rsp + 0x40]
mov dword [rax + 8], 0x110000
jmp 0x1800d7212
mov rax, qword [rsp + 0x40]
mov dword [rax + 8], 0x110001
mov qword [rax], rsi
mov qword [rax + 0x10], r11
add rsp, 0x98
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
shr r10, 0x20
jmp 0x1800d728e
cmp rdi, r9
jae 0x1800d7375
lea rdx, [rsi + 2]
cmp rdx, r9
jae 0x1800d7389
lea rdx, [rsi + 3]
cmp rdx, r9
jae 0x1800d739d
and r13b, 7
movzx ecx, r13b
shl ecx, 0x12
movzx edx, byte [r8 + rsi + 1]
and edx, 0x3f
shl edx, 0xc
or edx, ecx
movzx ecx, byte [r8 + rsi + 2]
and ecx, 0x3f
shl ecx, 6
or ecx, edx
movzx r10d, byte [r8 + rsi + 3]
and r10d, 0x3f
or r10d, ecx
add rsi, 4
mov rax, qword [rsp + 0x40]
mov dword [rax + 8], r10d
jmp 0x1800d7212
lea r8, [0x1801bb868]
mov rcx, r11
call fcn.180139bb0
ud2
lea r8, [0x1801bb868]
mov rcx, r11
mov rdx, rdi
call fcn.180139bb0
ud2
lea r8, [0x1801bb790]
mov rcx, rdi
mov rdx, r9
call fcn.180139bb0
ud2
lea r8, [0x1801bb760]
mov rcx, rdi
mov rdx, r9
call fcn.180139bb0
ud2
lea r8, [0x1801bb718]
mov rcx, rdi
mov rdx, r9
call fcn.180139bb0
ud2
lea r8, [0x1801bb778]
mov rcx, rdi
mov rdx, r9
call fcn.180139bb0
ud2
lea r8, [0x1801bb730]
mov rcx, rdi
mov rdx, r9
call fcn.180139bb0
ud2
lea r8, [0x1801bb748]
mov rcx, rdi
mov rdx, r9
call fcn.180139bb0
ud2
lea r8, [0x1801bb838]
mov rcx, rdx
mov rdx, r9
call fcn.180139bb0
ud2
lea r8, [0x1801bb808]
mov rcx, rdi
mov rdx, r9
call fcn.180139bb0
ud2
lea r8, [0x1801bb820]
mov rcx, rdx
mov rdx, r9
call fcn.180139bb0
ud2
lea r8, [0x1801bb7c0]
mov rcx, rdi
mov rdx, r9
call fcn.180139bb0
ud2
lea r8, [0x1801bb7d8]
mov rcx, rdx
mov rdx, r9
call fcn.180139bb0
ud2
lea r8, [0x1801bb7f0]
mov rcx, rdx
mov rdx, r9
call fcn.180139bb0
ud2
lea r8, [0x1801bb7a8]
mov rcx, r11
call fcn.180139f20
ud2
lea r8, [0x1801bb700]
mov edx, 0x80
mov rcx, qword [rsp + 0x60]
call fcn.180139f20
ud2
lea r8, [0x1801bb6d0]
mov ecx, 0x20
mov rdx, r15
call fcn.18013a020
ud2
lea r8, [0x1801bb6e8]
mov edx, 0x80
mov rcx, r15
call fcn.180139fa0
ud2
lea r8, [0x1801bb850]
mov rcx, rsi
mov rdx, r9
call fcn.180139f20
ud2
mov ecx, r14d
xor ecx, 0xffefd800
cmp ecx, 0xffef07ff
jbe 0x1800d7439
mov rax, qword [rsp + 0x40]
mov dword [rax + 8], r14d
jmp 0x1800d7212
lea rcx, [0x18019f9b0]
lea r8, str.C:Users_nero.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.33_srclib.rs_b
mov edx, 0x2b
call fcn.180139b10
ud2