Function at 0x14003a235
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, 0x1c8
mov qword [rsp + 0x178], rdx
mov qword [rsp + 0x170], rcx
lea rdx, [0x1400b7a3f]
lea rdi, [rsp + 0xa0]
mov r8d, 9
mov rcx, rdi
call fcn.140038d67
mov rsi, qword [rdi + 8]
mov rdx, qword [rdi + 0x10]
mov rcx, rsi
call fcn.140009b2d
mov r15, rax
mov rcx, qword [rdi]
mov rdx, rsi
call fcn.14003afc1
lea rax, [rsp + 0x120]
and qword [rax], 0
and qword [rax + 0x10], 0
movsxd rax, dword [r15 + 0x3c]
lea rcx, [r15 + rax]
xor edx, edx
cmp word [r15 + rax + 0x18], 0x10b
setne dl
shl edx, 4
movsxd rax, dword [rdx + rcx + 0x78]
mov esi, dword [r15 + rax + 0x18]
movsxd rcx, dword [r15 + rax + 0x1c]
movsxd r12, dword [r15 + rax + 0x20]
movsxd rax, dword [r15 + rax + 0x24]
add r12, r15
add rax, r15
mov qword [rsp + 0x110], rax
add rcx, r15
mov qword [rsp + 0x118], rcx
xor r14d, r14d
test esi, esi
cmovle esi, r14d
lea r13, [rsp + 0x80]
mov rdi, r14
cmp r14, rsi
je 0x14003aa55
movsxd rbx, dword [r12 + rdi*4]
add rbx, r15
and qword [rsp + 0x80], 0
mov qword [rsp + 0x88], 1
and qword [rsp + 0x90], 0
movzx edx, byte [rbx]
test edx, edx
je 0x14003a344
mov rcx, r13
call fcn.14000bace
inc rbx
jmp 0x14003a330
lea r14, [rdi + 1]
mov rbp, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x90]
cmp rbx, 2
jb 0x14003a366
cmp word [rbp], 0x775a
je 0x14003a378
mov rcx, qword [rsp + 0x80]
mov rdx, rbp
call fcn.14003afc1
jmp 0x14003a2ff
mov qword [rsp + 0x48], r15
mov rax, qword [rsp + 0x110]
movsx rax, word [rax + rdi*2]
mov rcx, qword [rsp + 0x118]
movsxd rax, dword [rcx + rax*4]
mov qword [rsp + 0x28], rax
and qword [rsp + 0x30], 0
mov qword [rsp + 0x38], 1
and qword [rsp + 0x40], 0
mov qword [rsp + 0x20], 2
lea rcx, [rsp + 0xa0]
mov rdx, rbp
mov r8, rbx
lea r9, str.ZwNt
call fcn.140007240
xor r15d, r15d
lea rcx, [rsp + 0x58]
lea rdx, [rsp + 0xa0]
call fcn.14000819e
cmp qword [rsp + 0x58], 0
je 0x14003a428
mov r8, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
lea rdx, [r15 + rbp]
sub r8, r15
lea r15, [rsp + 0x30]
mov rcx, r15
call fcn.14003af16
mov r8d, 2
mov rcx, r15
lea rdx, [0x1400b3e8a]
call fcn.14003af16
mov r15, rdi
jmp 0x14003a3d6
mov rdi, qword [rsp + 0x28]
add rdi, qword [rsp + 0x48]
lea rdx, [r15 + rbp]
sub rbx, r15
lea rcx, [rsp + 0x30]
mov r8, rbx
call fcn.14003af16
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0xb0], rax
movups xmm0, xmmword [rsp + 0x30]
movaps xmmword [rsp + 0xa0], xmm0
mov rcx, qword [rsp + 0x80]
mov rdx, rbp
call fcn.14003afc1
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x90], rax
movaps xmm0, xmmword [rsp + 0xa0]
movaps xmmword [rsp + 0x80], xmm0
mov rax, qword [rsp + 0x120]
test rax, rax
je 0x14003a55a
mov rcx, qword [rsp + 0x128]
mov r15, qword [rsp + 0x48]
mov r11d, 0xff
mov r8, rdi
movzx edi, word [rax + 0x16a]
mov r9d, edi
shl r9d, 3
mov rdx, 0xffffffffffffffff
test r9, r9
je 0x14003a4f9
xor r10d, r10d
cmp r8, qword [rax + rdx*8 + 0x10]
setne r10b
cmovl r10d, r11d
inc rdx
add r9, 0xfffffffffffffff8
cmp r10b, 1
je 0x14003a4cc
movzx r9d, r10b
test r9d, r9d
jne 0x14003a4fc
jmp 0x14003a510
mov rdx, rdi
sub rcx, 1
jb 0x14003a5f5
mov rax, qword [rax + rdx*8 + 0x170]
jmp 0x14003a4b7
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x70], rdx
lea rcx, [rsp + 0x120]
mov qword [rsp + 0x78], rcx
imul r9, rdx, 0x18
mov rcx, qword [rax + r9 + 0x60]
mov rdx, qword [rax + r9 + 0x68]
movaps xmm0, xmmword [rsp + 0x80]
mov r8, qword [rsp + 0x90]
mov qword [rax + r9 + 0x70], r8
movups xmmword [rax + r9 + 0x60], xmm0
jmp 0x14003a5e6
lea rax, [rsp + 0x120]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rdi
and qword [rsp + 0x68], 0
call fcn.140009065
movzx ecx, word [rax + 0x16a]
cmp rcx, 0xb
jae 0x14003acbd
lea edx, [rcx + 1]
mov word [rax + 0x16a], dx
mov qword [rax + rcx*8 + 8], rdi
imul rcx, rcx, 0x18
mov rdx, qword [rsp + 0x90]
mov qword [rax + rcx + 0x70], rdx
movaps xmm0, xmmword [rsp + 0x80]
movups xmmword [rax + rcx + 0x60], xmm0
mov qword [rsp + 0x120], rax
and qword [rsp + 0x128], 0
mov qword [rsp + 0x130], 1
movabs rcx, 0x8000000000000000
mov r15, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x50]
mov qword [rsp + 0x50], rdx
call fcn.14000bda9
jmp 0x14003a2ff
lea rcx, [rsp + 0x120]
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x68], rax
and qword [rsp + 0x70], 0
mov qword [rsp + 0x78], rdx
cmp word [rax + 0x16a], 0xb
jae 0x14003a638
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x68]
mov r9, r13
call fcn.140008ed1
jmp 0x14003aa38
mov rbx, qword [rsp + 0x78]
mov ecx, 4
cmp rbx, 5
jb 0x14003a65f
mov rcx, rbx
je 0x14003a65f
mov rdi, r8
cmp rbx, 6
jne 0x14003a679
mov ecx, 5
xor ebx, ebx
jmp 0x14003a682
mov rdi, r8
mov rdx, qword [rsp + 0x70]
lea r15, [rsp + 0xc8]
lea rbp, [rsp + 0xc0]
jmp 0x14003a697
add rbx, 0xfffffffffffffff9
mov ecx, 6
mov rdx, qword [rsp + 0x70]
lea r15, [rsp + 0xd8]
lea rbp, [rsp + 0xd0]
mov qword [rsp + 0x198], rax
mov qword [rsp + 0x1a0], rdx
mov qword [rsp + 0x1a8], rcx
lea rcx, [rsp + 0xa0]
lea rdx, [rsp + 0x198]
call fcn.140008f60
mov rax, qword [r15]
mov rcx, qword [rbp]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], rbx
lea rcx, [rsp + 0x180]
lea rdx, [rsp + 0x30]
mov r8, rdi
mov r9, r13
call fcn.140008ed1
mov r10, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0xa8]
lea rax, [rsp + 0xa0]
movups xmm0, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x1b0], xmm0
movabs rax, 0x8000000000000000
cmp rcx, rax
mov r15, qword [rsp + 0x48]
je 0x14003aa38
mov r9, qword [rsp + 0xc0]
mov rax, qword [rsp + 0xc8]
mov rbp, qword [rsp + 0xd0]
mov rbx, qword [rsp + 0xd8]
mov qword [rsp + 0x138], rcx
movaps xmm0, xmmword [rsp + 0x1b0]
lea rcx, [rsp + 0x140]
movups xmmword [rcx], xmm0
mov rcx, qword [r9]
test rcx, rcx
je 0x14003a941
cmp rax, rbx
jne 0x14003acd5
movzx ebx, word [r9 + 0x168]
cmp word [rcx + 0x16a], 0xb
jb 0x14003aa20
inc rax
cmp bx, 5
jae 0x14003a7ba
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], 4
jmp 0x14003a870
cmp rbx, 5
je 0x14003a858
cmp ebx, 6
jne 0x14003a918
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], 5
lea rbx, [rsp + 0xa0]
mov rcx, rbx
lea rdx, [rsp + 0x30]
mov rdi, r10
call fcn.140008c2a
mov rcx, qword [rsp + 0xd0]
mov qword [rsp + 0x20], rbp
xor edx, edx
mov r8, rdi
lea r9, [rsp + 0x138]
call fcn.140008b51
mov r10, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0xa8]
movups xmm0, xmmword [rbx + 0x10]
movaps xmmword [rsp + 0x180], xmm0
mov r9, qword [rsp + 0xc0]
mov rax, qword [rsp + 0xc8]
mov rbp, qword [rsp + 0xd0]
mov rbx, qword [rsp + 0xd8]
jmp 0x14003a8eb
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], 5
lea r15, [rsp + 0xc0]
lea rdi, [rsp + 0xa0]
mov rcx, rdi
lea rdx, [rsp + 0x30]
call fcn.140008c2a
mov rcx, qword [r15]
mov qword [rsp + 0x20], rbp
mov rdx, rbx
mov r8, qword [rsp + 0x28]
lea r9, [rsp + 0x138]
call fcn.140008b51
mov r10, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0xa8]
movups xmm0, xmmword [rdi + 0x10]
movaps xmmword [rsp + 0x180], xmm0
mov r9, qword [rsp + 0xc0]
mov rax, qword [rsp + 0xc8]
mov rbp, qword [rsp + 0xd0]
mov rbx, qword [rsp + 0xd8]
mov r15, qword [rsp + 0x48]
movabs r8, 0x8000000000000000
cmp rcx, r8
mov rdx, qword [rsp + 0x50]
je 0x14003aa3d
mov qword [rsp + 0x138], rcx
movaps xmm0, xmmword [rsp + 0x180]
jmp 0x14003a75e
mov qword [rsp + 0x28], r10
add rbx, 0xfffffffffffffff9
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], 6
lea r15, [rsp + 0xd0]
jmp 0x14003a878
mov qword [rsp + 0x28], r10
mov rax, qword [rsp + 0x148]
mov qword [rsp + 0xb0], rax
movups xmm0, xmmword [rsp + 0x138]
movaps xmmword [rsp + 0xa0], xmm0
mov r15, qword [rsp + 0x58]
mov rax, qword [r15]
test rax, rax
je 0x14003aced
mov rdi, rax
mov rax, qword [r15 + 8]
mov qword [rsp + 0x168], rax
call fcn.140008adf
mov qword [rax + 0x170], rdi
mov rdx, qword [rsp + 0x168]
inc rdx
mov rcx, rax
call fcn.140008b18
mov qword [r15], rax
mov qword [r15 + 8], rdx
dec rdx
cmp rdx, rbx
jne 0x14003acf9
movzx ecx, word [rax + 0x16a]
cmp rcx, 0xb
mov r15, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x28]
jae 0x14003ad11
lea r8d, [rcx + 1]
mov word [rax + 0x16a], r8w
mov qword [rax + rcx*8 + 8], rdi
imul r9, rcx, 0x18
mov r8, qword [rsp + 0xb0]
mov qword [rax + r9 + 0x70], r8
movaps xmm0, xmmword [rsp + 0xa0]
movups xmmword [rax + r9 + 0x60], xmm0
inc rcx
mov qword [rax + rcx*8 + 0x170], rbp
mov qword [rbp], rax
mov word [rbp + 0x168], cx
jmp 0x14003aa3d
mov qword [rsp + 0x20], rbp
mov rdx, rbx
mov r8, r10
lea r9, [rsp + 0x138]
call fcn.140008b51
mov rdx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x58]
inc qword [rax + 0x10]
movabs rcx, 0x8000000000000000
jmp 0x14003a5e6
mov rdi, qword [rsp + 0x130]
movups xmm0, xmmword [rsp + 0x120]
movaps xmmword [rsp + 0x150], xmm0
mov rax, qword [rsp + 0x150]
xor ecx, ecx
test rax, rax
setne cl
mov rdx, rdi
cmove rdx, rax
lea rbx, [rsp + 0xa0]
mov qword [rbx], rcx
and qword [rbx + 8], 0
mov qword [rsp + 0x160], rdi
mov r8, qword [rsp + 0x158]
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], r8
mov qword [rsp + 0x110], rcx
mov qword [rbx + 0x20], rcx
and qword [rbx + 0x28], 0
mov qword [rsp + 0x118], rax
mov qword [rbx + 0x30], rax
mov qword [rsp + 0x50], r8
mov qword [rbx + 0x38], r8
mov qword [rsp + 0x28], rdx
mov qword [rbx + 0x40], rdx
xor ebp, ebp
mov rsi, qword [rsp + 0x178]
mov r14, qword [rsp + 0x170]
mov rcx, rbx
call fcn.140007fe2
test rax, rax
je 0x14003ac90
mov rcx, qword [rdx + 8]
mov rdx, qword [rdx + 0x10]
mov r8, r14
mov r9, rsi
call fcn.14003af9c
test al, al
jne 0x14003ab19
inc ebp
jmp 0x14003aaed
cmp ebp, 0xffffffff
je 0x14003ac90
mov rcx, r15
mov rdx, r14
mov r8, rsi
call fcn.14000a776
mov rcx, rax
call fcn.14000bdbe
mov rbx, rax
test rax, rax
jne 0x14003ac81
mov qword [rsp + 0x48], r15
call fcn.14000dea4
lea r14, [rsp + 0x180]
mov qword [r14], rax
mov ecx, 5
mov rax, rdi
xor edx, edx
div rcx
mov r15, rax
mov r12, rdi
neg r12
lea r13, [rsp + 0xa0]
and qword [rsp + 0x30], 0
mov rcx, qword [rsp + 0x110]
mov qword [rsp + 0xa0], rcx
and qword [rsp + 0xa8], 0
mov rax, qword [rsp + 0x118]
mov qword [rsp + 0xb0], rax
mov rdx, qword [rsp + 0x50]
mov qword [rsp + 0xb8], rdx
mov qword [rsp + 0xc0], rcx
and qword [rsp + 0xc8], 0
mov qword [rsp + 0x58], 1
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], rdx
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0xe0], rax
mov rcx, r13
call fcn.140007fe2
test rax, rax
je 0x14003ac47
mov rbx, rdx
test rdx, rdx
je 0x14003ac47
mov rcx, r14
call fcn.14000909e
mul rdi
mov rcx, rdx
cmp rdi, rax
jbe 0x14003ac38
mov r8, rax
mov rax, r12
xor edx, edx
div rdi
mov rsi, rdx
cmp r8, rsi
jae 0x14003ac38
mov rcx, r14
call fcn.14000909e
mul rdi
mov rcx, rdx
mov r8, rax
jmp 0x14003ac20
cmp rcx, r15
jae 0x14003abea
lea rax, [rbx + 8]
add rbx, 0x10
jmp 0x14003ac51
lea rax, [rsp + 0x58]
lea rbx, [rsp + 0x30]
mov rdx, qword [rax]
mov r8, qword [rbx]
mov rcx, qword [rsp + 0x48]
call fcn.14000a776
mov rcx, rax
call fcn.14000bdbe
mov rbx, rax
mov edx, 1
xor ecx, ecx
call fcn.14003afc1
test rbx, rbx
je 0x14003ab77
lea rcx, [rsp + 0x150]
call fcn.140009302
jmp 0x14003aca4
lea rcx, [rsp + 0x150]
call fcn.140009302
mov ebp, 0xffffffff
xor ebx, ebx
mov eax, ebp
mov rdx, rbx
add rsp, 0x1c8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, str.assertion_failed:_idx___CAPACITY___v_
lea r8, str._rustc_ef324565d071c6d7e2477a195648549e33d6a465library_alloc_srccollections_btree_node.rsassertion_failed:_edge.height__self.height___1
mov edx, 0x20
call fcn.140004340
lea rcx, str.assertion_failed:_edge.height__self.node.height___1
lea r8, str.___v_
mov edx, 0x35
call fcn.140004340
lea rcx, str._rustc_ef324565d071c6d7e2477a195648549e33d6a465library_alloc_srccollections_btreemapentry.rsH__v_
call fcn.1400054c0
lea rcx, [0x1400b3fbb]
lea r8, str._rustc_ef324565d071c6d7e2477a195648549e33d6a465library_alloc_srccollections_btree_node.rsassertion_failed:_edge.height__self.height___1
mov edx, 0x30
call fcn.140004340
lea rcx, str.assertion_failed:_idx___CAPACITY___v_
lea r8, str._rustc_ef324565d071c6d7e2477a195648549e33d6a465library_alloc_srccollections_btree_node.rsassertion_failed:_edge.height__self.height___1
jmp 0x14003accb