Function at 0x1800d75a0
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 0x1800d81c1
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 0x1800d7681
mov ebp, edx
neg ebp
and ebp, 7
lea rbx, [rbp + 0x10]
cmp rbx, r14
jbe 0x1800d76af
xor r15d, r15d
cmp r15, r14
jae 0x1800d7fd0
nop dword [rax]
movzx r13d, byte [rdx + r15]
test r13b, r13b
js 0x1800d7800
mov byte [r12 + r15], r13b
inc r15
cmp r14, r15
jne 0x1800d7690
jmp 0x1800d7fd0
test rbp, rbp
je 0x1800d778d
movzx r13d, byte [rdx]
test r13b, r13b
js 0x1800d77fd
mov byte [r12], r13b
mov r15d, 1
cmp ebp, 1
je 0x1800d7790
movzx r13d, byte [rdx + 1]
test r13b, r13b
js 0x1800d7800
mov byte [r12 + 1], r13b
mov r15d, 2
cmp ebp, 2
je 0x1800d7790
movzx r13d, byte [rdx + 2]
test r13b, r13b
js 0x1800d7800
mov byte [r12 + 2], r13b
mov r15d, 3
cmp ebp, 3
je 0x1800d7790
movzx r13d, byte [rdx + 3]
test r13b, r13b
js 0x1800d7800
mov byte [r12 + 3], r13b
mov r15d, 4
cmp ebp, 4
je 0x1800d7790
movzx r13d, byte [rdx + 4]
test r13b, r13b
js 0x1800d7800
mov byte [r12 + 4], r13b
mov r15d, 5
cmp ebp, 5
je 0x1800d7790
movzx r13d, byte [rdx + 5]
test r13b, r13b
js 0x1800d7800
mov byte [r12 + 5], r13b
mov r15d, 6
cmp ebp, 6
je 0x1800d7790
movzx r13d, byte [rdx + 6]
test r13b, r13b
js 0x1800d7800
mov byte [r12 + 6], r13b
mov r15d, 7
jmp 0x1800d7790
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 0x1800d77d8
add r15, 0x10
cmp r15, r13
jbe 0x1800d77a0
jmp 0x1800d7684
test rbx, rbx
je 0x1800d7f9c
tzcnt rcx, rbx
shr ecx, 3
mov rbx, qword [rsp + 0x38]
mov r12, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x28]
jmp 0x1800d7fc3
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 0x1800d7840
lea rdx, [rsi + 1]
cmp rdx, r9
jae 0x1800d8149
and r13b, 0x1f
movzx edi, r13b
shl edi, 6
mov ecx, 2
jmp 0x1800d787d
lea rdi, [rsi + 1]
cmp r13b, 0xf0
jae 0x1800d8043
cmp rdi, r9
jae 0x1800d815d
lea rdx, [rsi + 2]
cmp rdx, r9
jae 0x1800d8171
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 0x1800d78c0
add edx, dword [rsp + 0x88]
jmp 0x1800d7ca0
cmp qword [rsp + 0x60], 0x80
ja 0x1800d81d2
je 0x1800d7905
xor edx, edx
nop word cs:[rax + rax]
mov rax, qword [rsp + 0x90]
cmp word [rax + rdx*2], di
je 0x1800d7c8e
lea rcx, [rdx + rbp]
inc rcx
inc rdx
cmp rcx, 0x100
jne 0x1800d78e0
cmp r15, 0x3f
jbe 0x1800d7ae9
cmp r15, 0x81
jae 0x1800d8200
cmp r15, 0x40
je 0x1800d7948
mov rcx, qword [rsp + 0x68]
xor edx, edx
nop dword [rax]
cmp word [r13 + rdx*2 + 0x80], di
je 0x1800d7c92
inc rdx
add rcx, 0xfffffffffffffffe
jne 0x1800d7930
mov dl, 0xa0
cmp word [r13 + 0x40], di
je 0x1800d7ca0
mov dl, 0xa1
cmp word [r13 + 0x42], di
je 0x1800d7ca0
mov dl, 0xa2
cmp word [r13 + 0x44], di
je 0x1800d7ca0
mov dl, 0xa3
cmp word [r13 + 0x46], di
je 0x1800d7ca0
mov dl, 0xa4
cmp word [r13 + 0x48], di
je 0x1800d7ca0
mov dl, 0xa5
cmp word [r13 + 0x4a], di
je 0x1800d7ca0
mov dl, 0xa6
cmp word [r13 + 0x4c], di
je 0x1800d7ca0
mov dl, 0xa7
cmp word [r13 + 0x4e], di
je 0x1800d7ca0
mov dl, 0xa8
cmp word [r13 + 0x50], di
je 0x1800d7ca0
mov dl, 0xa9
cmp word [r13 + 0x52], di
je 0x1800d7ca0
mov dl, 0xaa
cmp word [r13 + 0x54], di
je 0x1800d7ca0
mov dl, 0xab
cmp word [r13 + 0x56], di
je 0x1800d7ca0
mov dl, 0xac
cmp word [r13 + 0x58], di
je 0x1800d7ca0
mov dl, 0xad
cmp word [r13 + 0x5a], di
je 0x1800d7ca0
mov dl, 0xae
cmp word [r13 + 0x5c], di
je 0x1800d7ca0
mov dl, 0xaf
cmp word [r13 + 0x5e], di
je 0x1800d7ca0
mov dl, 0xb0
cmp word [r13 + 0x60], di
je 0x1800d7ca0
mov dl, 0xb1
cmp word [r13 + 0x62], di
je 0x1800d7ca0
mov dl, 0xb2
cmp word [r13 + 0x64], di
je 0x1800d7ca0
mov dl, 0xb3
cmp word [r13 + 0x66], di
je 0x1800d7ca0
mov dl, 0xb4
cmp word [r13 + 0x68], di
je 0x1800d7ca0
mov dl, 0xb5
cmp word [r13 + 0x6a], di
je 0x1800d7ca0
mov dl, 0xb6
cmp word [r13 + 0x6c], di
je 0x1800d7ca0
mov dl, 0xb7
cmp word [r13 + 0x6e], di
je 0x1800d7ca0
mov dl, 0xb8
cmp word [r13 + 0x70], di
je 0x1800d7ca0
mov dl, 0xb9
cmp word [r13 + 0x72], di
je 0x1800d7ca0
mov dl, 0xba
cmp word [r13 + 0x74], di
je 0x1800d7ca0
mov dl, 0xbb
cmp word [r13 + 0x76], di
je 0x1800d7ca0
mov dl, 0xbc
cmp word [r13 + 0x78], di
je 0x1800d7ca0
mov dl, 0xbd
cmp word [r13 + 0x7a], di
je 0x1800d7ca0
mov dl, 0xbe
cmp word [r13 + 0x7c], di
je 0x1800d7ca0
mov dl, 0xbf
cmp word [r13 + 0x7e], di
jne 0x1800d7b15
jmp 0x1800d7ca0
cmp r15, 0x1f
jbe 0x1800d81ea
cmp r15, 0x20
je 0x1800d7b15
mov rcx, qword [rsp + 0x70]
xor edx, edx
cmp word [r13 + rdx*2 + 0x40], di
je 0x1800d7c97
inc rdx
add rcx, 0xfffffffffffffffe
jne 0x1800d7b00
mov dl, 0x80
cmp word [r13], di
je 0x1800d7ca0
mov dl, 0x81
cmp word [r13 + 2], di
je 0x1800d7ca0
mov dl, 0x82
cmp word [r13 + 4], di
je 0x1800d7ca0
mov dl, 0x83
cmp word [r13 + 6], di
je 0x1800d7ca0
mov dl, 0x84
cmp word [r13 + 8], di
je 0x1800d7ca0
mov dl, 0x85
cmp word [r13 + 0xa], di
je 0x1800d7ca0
mov dl, 0x86
cmp word [r13 + 0xc], di
je 0x1800d7ca0
mov dl, 0x87
cmp word [r13 + 0xe], di
je 0x1800d7ca0
mov dl, 0x88
cmp word [r13 + 0x10], di
je 0x1800d7ca0
mov dl, 0x89
cmp word [r13 + 0x12], di
je 0x1800d7ca0
mov dl, 0x8a
cmp word [r13 + 0x14], di
je 0x1800d7ca0
mov dl, 0x8b
cmp word [r13 + 0x16], di
je 0x1800d7ca0
mov dl, 0x8c
cmp word [r13 + 0x18], di
je 0x1800d7ca0
mov dl, 0x8d
cmp word [r13 + 0x1a], di
je 0x1800d7ca0
mov dl, 0x8e
cmp word [r13 + 0x1c], di
je 0x1800d7ca0
mov dl, 0x8f
cmp word [r13 + 0x1e], di
je 0x1800d7ca0
mov dl, 0x90
cmp word [r13 + 0x20], di
je 0x1800d7ca0
mov dl, 0x91
cmp word [r13 + 0x22], di
je 0x1800d7ca0
mov dl, 0x92
cmp word [r13 + 0x24], di
je 0x1800d7ca0
mov dl, 0x93
cmp word [r13 + 0x26], di
je 0x1800d7ca0
mov dl, 0x94
cmp word [r13 + 0x28], di
je 0x1800d7ca0
mov dl, 0x95
cmp word [r13 + 0x2a], di
je 0x1800d7ca0
mov dl, 0x96
cmp word [r13 + 0x2c], di
je 0x1800d7ca0
mov dl, 0x97
cmp word [r13 + 0x2e], di
je 0x1800d7ca0
mov dl, 0x98
cmp word [r13 + 0x30], di
je 0x1800d7ca0
mov dl, 0x99
cmp word [r13 + 0x32], di
je 0x1800d7ca0
mov dl, 0x9a
cmp word [r13 + 0x34], di
je 0x1800d7ca0
mov dl, 0x9b
cmp word [r13 + 0x36], di
je 0x1800d7ca0
mov dl, 0x9c
cmp word [r13 + 0x38], di
je 0x1800d7ca0
mov dl, 0x9d
cmp word [r13 + 0x3a], di
je 0x1800d7ca0
mov dl, 0x9e
cmp word [r13 + 0x3c], di
je 0x1800d7ca0
mov dl, 0x9f
cmp word [r13 + 0x3e], di
je 0x1800d7ca0
jmp 0x1800d822a
add edx, ebp
jmp 0x1800d7ca0
add dl, 0xc0
jmp 0x1800d7ca0
add dl, 0xa0
nop word [rax + rax]
mov rdi, qword [rsp + 0x50]
cmp r11, rdi
jae 0x1800d80bd
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 0x1800d8008
mov rdx, qword [rsp + 0x50]
cmp r11, rdx
jae 0x1800d8016
movzx eax, byte [r8 + rsi]
test al, al
js 0x1800d7d00
inc rsi
mov ecx, 2
jmp 0x1800d7df0
movzx ecx, al
lea rdi, [rsi + 1]
cmp al, 0xe0
jae 0x1800d7d2e
cmp rdi, r9
jae 0x1800d80d1
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 0x1800d7d6f
cmp al, 0xf0
jae 0x1800d7d88
cmp rdi, r9
jae 0x1800d80e5
lea rdi, [rsi + 2]
cmp rdi, r9
jae 0x1800d810d
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 0x1800d7df0
cmp rdi, r9
jae 0x1800d80f9
lea rdi, [rsi + 2]
cmp rdi, r9
jae 0x1800d8121
lea rdi, [rsi + 3]
cmp rdi, r9
jae 0x1800d8135
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 0x1800d7e48
or r10, rcx
test cx, cx
je 0x1800d7897
jmp 0x1800d803d
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 0x1800d7f7d
cmp r11, rdx
jae 0x1800d80ac
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 0x1800d7f8e
cmp rsi, r9
jae 0x1800d8008
mov rdx, qword [rsp + 0x50]
cmp r11, rdx
jae 0x1800d8016
movzx eax, byte [r8 + rsi]
test al, al
jns 0x1800d7e20
movzx ecx, al
lea rdi, [rsi + 1]
cmp al, 0xe0
jae 0x1800d7ebf
cmp rdi, r9
jae 0x1800d80d1
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 0x1800d7f00
cmp al, 0xf0
jae 0x1800d7f1c
cmp rdi, r9
jae 0x1800d80e5
lea rdi, [rsi + 2]
cmp rdi, r9
jae 0x1800d810d
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 0x1800d7e28
cmp rdi, r9
jae 0x1800d80f9
lea rdi, [rsi + 2]
cmp rdi, r9
jae 0x1800d8121
lea rdi, [rsi + 3]
cmp rdi, r9
jae 0x1800d8135
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 0x1800d7e28
or r10, rcx
test cx, cx
je 0x1800d7897
jmp 0x1800d803d
cmp rsi, r9
jbe 0x1800d7639
jmp 0x1800d8216
test r10, r10
mov rbx, qword [rsp + 0x38]
mov r12, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x28]
je 0x1800d7fb7
tzcnt rcx, r10
jmp 0x1800d7fbc
mov ecx, 0x40
shr ecx, 3
add rcx, 8
add r15, rcx
movzx r13d, byte [rdx + r15]
jmp 0x1800d780f
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 0x1800d8025
mov rax, qword [rsp + 0x40]
mov dword [rax + 8], 0x110000
jmp 0x1800d8022
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 0x1800d809e
cmp rdi, r9
jae 0x1800d8185
lea rdx, [rsi + 2]
cmp rdx, r9
jae 0x1800d8199
lea rdx, [rsi + 3]
cmp rdx, r9
jae 0x1800d81ad
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 0x1800d8022
lea r8, [0x1801ba868]
mov rcx, r11
call fcn.180137ee0
ud2
lea r8, [0x1801ba868]
mov rcx, r11
mov rdx, rdi
call fcn.180137ee0
ud2
lea r8, [0x1801ba790]
mov rcx, rdi
mov rdx, r9
call fcn.180137ee0
ud2
lea r8, [0x1801ba760]
mov rcx, rdi
mov rdx, r9
call fcn.180137ee0
ud2
lea r8, [0x1801ba718]
mov rcx, rdi
mov rdx, r9
call fcn.180137ee0
ud2
lea r8, [0x1801ba778]
mov rcx, rdi
mov rdx, r9
call fcn.180137ee0
ud2
lea r8, [0x1801ba730]
mov rcx, rdi
mov rdx, r9
call fcn.180137ee0
ud2
lea r8, [0x1801ba748]
mov rcx, rdi
mov rdx, r9
call fcn.180137ee0
ud2
lea r8, [0x1801ba838]
mov rcx, rdx
mov rdx, r9
call fcn.180137ee0
ud2
lea r8, [0x1801ba808]
mov rcx, rdi
mov rdx, r9
call fcn.180137ee0
ud2
lea r8, [0x1801ba820]
mov rcx, rdx
mov rdx, r9
call fcn.180137ee0
ud2
lea r8, [0x1801ba7c0]
mov rcx, rdi
mov rdx, r9
call fcn.180137ee0
ud2
lea r8, [0x1801ba7d8]
mov rcx, rdx
mov rdx, r9
call fcn.180137ee0
ud2
lea r8, [0x1801ba7f0]
mov rcx, rdx
mov rdx, r9
call fcn.180137ee0
ud2
lea r8, [0x1801ba7a8]
mov rcx, r11
call fcn.180138250
ud2
lea r8, [0x1801ba700]
mov edx, 0x80
mov rcx, qword [rsp + 0x60]
call fcn.180138250
ud2
lea r8, [0x1801ba6d0]
mov ecx, 0x20
mov rdx, r15
call fcn.180138350
ud2
lea r8, [0x1801ba6e8]
mov edx, 0x80
mov rcx, r15
call fcn.1801382d0
ud2
lea r8, [0x1801ba850]
mov rcx, rsi
mov rdx, r9
call fcn.180138250
ud2
mov ecx, r14d
xor ecx, 0xffefd800
cmp ecx, 0xffef07ff
jbe 0x1800d8249
mov rax, qword [rsp + 0x40]
mov dword [rax + 8], r14d
jmp 0x1800d8022
lea rcx, [0x18019e9b0]
lea r8, str.C:Users_nero.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.33_srclib.rs_b
mov edx, 0x2b
call fcn.180137e40
ud2