Function at 0x140045320
Capabilities:
Enumerate process modules
Parse pe header
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, 0x948
mov r12, rcx
mov rax, qword [rcx]
cmp byte [rax], 0
jne 0x140045350
mov rcx, qword [r12 + 8]
cmp qword [rcx], 0x64
jbe 0x140045350
xor eax, eax
jmp 0x140046cd3
mov byte [rsp + 0x4f], 0
mov r10, qword [r12 + 0x10]
mov r9, qword [r12 + 0x28]
mov r8, qword [r12 + 0x30]
lea rcx, [rsp + 0x4f]
mov qword [rsp + 0x4c0], rcx
mov qword [rsp + 0x4c8], rax
mov qword [rsp + 0x280], r10
mov qword [rsp + 0x4d0], r10
movups xmm0, xmmword [r12 + 0x18]
movups xmmword [rsp + 0x4d8], xmm0
mov qword [rsp + 0x270], r9
mov qword [rsp + 0x4e8], r9
mov qword [rsp + 0x288], r8
mov qword [rsp + 0x4f0], r8
mov qword [rsp + 0x4f8], rdx
mov qword [rsp + 0x278], rdx
mov rbx, qword [rdx + 8]
mov rax, qword [0x14005d120]
test rax, rax
jne 0x1400459aa
movzx eax, byte [0x14005d030]
mov rcx, qword [0x14005d0f0]
test rcx, rcx
jne 0x140045406
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x14004710c
mov rcx, rax
mov qword [0x14005d0f0], rax
mov r8d, 0x8c0
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x14004710c
mov qword [rsp + 0x1c0], rax
mov qword [rsp + 0x1c8], 4
mov qword [rsp + 0x1d0], 0
mov qword [rsp + 0xd0], 8
xorps xmm0, xmm0
movups xmmword [rsp + 0xd8], xmm0
mov ecx, 8
xor edx, edx
call sub.KERNEL32.dll_CreateToolhelp32Snapshot
cmp rax, 0xffffffffffffffff
je 0x14004582a
mov r14, rax
mov qword [rsp + 0x80], r12
lea rsi, [rsp + 0x510]
mov r8d, 0x438
mov rcx, rsi
xor edx, edx
call sub.msvcrt.dll_memset
mov dword [rsp + 0x510], 0x438
mov rcx, r14
mov rdx, rsi
call sub.KERNEL32.dll_Module32FirstW
cmp eax, 1
jne 0x14004581a
lea r12, [rsp + 0x948]
mov eax, 8
mov qword [rsp + 0x68], rax
xor eax, eax
mov qword [rsp + 0x58], rax
lea r13, [rsp + 0x510]
jmp 0x140045544
mov rcx, qword [rsp + 0xd0]
mov rdx, qword [rsp + 0xe0]
mov rax, rdx
shl rax, 6
movups xmm0, xmmword [rsp + 0x290]
movups xmm1, xmmword [rsp + 0x2a0]
movups xmm2, xmmword [rsp + 0x2b0]
movups xmm3, xmmword [rsp + 0x2c0]
movups xmmword [rcx + rax + 0x30], xmm3
movups xmmword [rcx + rax + 0x20], xmm2
movups xmmword [rcx + rax + 0x10], xmm1
mov qword [rsp + 0x68], rcx
movups xmmword [rcx + rax], xmm0
inc rdx
mov rax, rdx
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0xe0], rdx
mov rcx, r14
mov rdx, r13
call sub.KERNEL32.dll_Module32NextW
cmp eax, 1
jne 0x14004581a
xor r8d, r8d
nop word [rax + rax]
cmp word [rsp + r8*2 + 0x740], 0
je 0x1400455b0
lea rax, [rsp + r8*2]
add rax, 0x740
cmp word [rax + 2], 0
je 0x140045597
cmp word [rax + 4], 0
je 0x14004559c
cmp word [rax + 6], 0
je 0x1400455a2
cmp word [rax + 8], 0
je 0x1400455a8
add r8, 5
add rax, 0xa
cmp rax, r12
jne 0x140045550
mov r8d, 0x104
jmp 0x1400455b0
inc r8
jmp 0x1400455b0
add r8, 2
jmp 0x1400455b0
add r8, 3
jmp 0x1400455b0
add r8, 4
nop dword [rax]
lea rcx, [rsp + 0x200]
lea rdx, [rsp + 0x740]
call fcn.1400270e0
mov rbp, qword [rsp + 0x200]
mov rsi, qword [rsp + 0x210]
lea rcx, [rsp + 0x130]
mov rdx, rbp
mov r8, rsi
call fcn.1400280a0
cmp qword [rsp + 0x130], 0
je 0x1400456b0
mov rdi, qword [rsp + 0x138]
mov r15, qword [rsp + 0x140]
mov rax, qword [rsp + 0x148]
cmp rax, 0x40
jb 0x1400456a0
test r15, r15
je 0x1400456a0
movzx ecx, word [r15]
cmp ecx, 0x5a4d
jne 0x1400456a0
mov edx, dword [r15 + 0x3c]
mov rcx, rax
sub rcx, rdx
setb r8b
lea r9, [r15 + rdx]
cmp rcx, 0x88
setb cl
or cl, r8b
mov ecx, 0
cmove rcx, r9
jne 0x1400456a0
cmp dword [rcx], 0x4550
jne 0x1400456a0
movzx r8d, word [rcx + 0x18]
cmp r8d, 0x20b
jne 0x1400456a0
movzx r8d, word [rcx + 0x14]
cmp r8, 0x70
jb 0x1400456a0
add rdx, 0x88
sub rax, rdx
jb 0x1400456a0
add r8, 0xffffffffffffff90
cmp rax, r8
jb 0x1400456a0
mov eax, dword [rcx + 0x84]
shl rax, 3
cmp rax, r8
jbe 0x1400456d5
nop dword [rax]
mov rcx, r15
call sub.KERNEL32.dll_UnmapViewOfFile
mov rcx, rdi
call sub.KERNEL32.dll_CloseHandle
cmp qword [rsp + 0x208], 0
je 0x140045530
mov rcx, qword [0x14005d0f0]
xor edx, edx
mov r8, rbp
call fcn.140049b94
jmp 0x140045530
mov rax, qword [rcx + 0x30]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x528]
mov qword [rsp + 0x60], rax
movzx eax, byte [0x14005d030]
mov ecx, 0x10
mov edx, 8
call fcn.140019fe0
test rax, rax
je 0x14004711d
mov edx, dword [rsp + 0x530]
mov rcx, qword [rsp + 0x78]
mov qword [rax], rcx
mov qword [rsp + 0x70], rax
mov qword [rax + 8], rdx
mov rax, qword [rsp + 0x208]
mov qword [rsp + 0x50], rax
movzx eax, byte [rsp + 0x218]
mov byte [rsp + 0x88], al
lea rcx, [rsp + 0x219]
mov eax, dword [rcx]
mov ecx, dword [rcx + 3]
mov dword [rsp + 0x130], eax
mov dword [rsp + 0x133], ecx
mov rcx, r15
call sub.KERNEL32.dll_UnmapViewOfFile
mov rcx, rdi
call sub.KERNEL32.dll_CloseHandle
movzx ecx, byte [rsp + 0x88]
cmp cl, 2
je 0x140045530
mov rax, qword [rsp + 0x60]
sub rax, qword [rsp + 0x78]
mov qword [rsp + 0x290], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x298], rax
mov qword [rsp + 0x2a0], 1
mov qword [rsp + 0x2a8], 1
mov qword [rsp + 0x2b0], rbp
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x2b8], rax
mov qword [rsp + 0x2c0], rsi
mov byte [rsp + 0x2c8], cl
mov eax, dword [rsp + 0x130]
mov ecx, dword [rsp + 0x133]
lea rdx, [rsp + 0x2c9]
mov dword [rdx + 3], ecx
mov dword [rdx], eax
mov rdx, qword [rsp + 0x58]
cmp rdx, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0x68]
jne 0x1400454de
lea rcx, [rsp + 0xd0]
call fcn.140028930
jmp 0x1400454ce
mov rcx, r14
call sub.KERNEL32.dll_CloseHandle
mov r12, qword [rsp + 0x80]
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x520], rax
movups xmm0, xmmword [rsp + 0xd0]
mov rax, qword [rsp + 0x1d0]
mov qword [rsp + 0x538], rax
movups xmm1, xmmword [rsp + 0x1c0]
movups xmmword [rsp + 0x528], xmm1
movaps xmmword [rsp + 0x290], xmm0
mov rax, qword [rsp + 0x520]
mov qword [rsp + 0x2a0], rax
mov rax, qword [rsp + 0x528]
mov qword [rsp + 0x2a8], rax
mov rax, qword [rsp + 0x530]
mov qword [rsp + 0x2b0], rax
mov rax, qword [rsp + 0x538]
mov qword [rsp + 0x2b8], rax
mov rsi, qword [0x14005d120]
test rsi, rsi
je 0x140045976
mov rdi, qword [0x14005d130]
test rdi, rdi
je 0x14004590c
lea r14, [rsi + 0x28]
jmp 0x1400458d9
add r14, 0x40
dec rdi
je 0x14004590c
cmp qword [r14], 0
je 0x1400458f1
mov r8, qword [r14 - 8]
mov rcx, qword [0x14005d0f0]
xor edx, edx
call fcn.140049b94
cmp qword [r14 - 0x18], 0
je 0x1400458d0
mov r8, qword [r14 - 0x20]
mov rcx, qword [0x14005d0f0]
xor edx, edx
call fcn.140049b94
jmp 0x1400458d0
cmp qword [0x14005d128], 0
je 0x140045927
mov rcx, qword [0x14005d0f0]
xor edx, edx
mov r8, rsi
call fcn.140049b94
mov rdi, qword [0x14005d138]
mov r15, qword [0x14005d148]
inc r15
mov r14, rdi
nop dword [rax + rax]
cmp r15, 1
je 0x14004595b
lea rcx, [r14 + 8]
add r14, 0x230
dec r15
call fcn.140028b90
jmp 0x140045940
cmp qword [0x14005d140], 0
je 0x140045976
mov rcx, qword [0x14005d0f0]
xor edx, edx
mov r8, rdi
call fcn.140049b94
movaps xmm0, xmmword [rsp + 0x290]
movaps xmm1, xmmword [rsp + 0x2a0]
movaps xmm2, xmmword [rsp + 0x2b0]
movups xmmword [0x14005d140], xmm2
movups xmmword [0x14005d130], xmm1
movups xmmword [0x14005d120], xmm0
mov rax, qword [0x14005d120]
mov rdx, qword [0x14005d130]
test rdx, rdx
je 0x140046c2a
mov rcx, rdx
shl rcx, 6
add rcx, rax
xor r15d, r15d
sub rbx, 1
cmovb rbx, r15
mov r8, rax
mov r13, qword [r8]
mov r10, qword [r8 + 8]
mov r9, qword [r8 + 0x18]
add r8, 0x40
shl r9, 4
nop word cs:[rax + rax]
test r9, r9
je 0x140045a20
mov r11, r10
add r10, 0x10
mov rsi, qword [r11]
add rsi, r13
add r9, 0xfffffffffffffff0
cmp rsi, rbx
ja 0x1400459f0
add rsi, qword [r11 + 8]
cmp rsi, rbx
jbe 0x1400459f0
jmp 0x140045a2d
inc r15
cmp r8, rcx
jne 0x1400459d2
jmp 0x140046c2a
mov rdi, qword [0x14005d148]
test rdi, rdi
je 0x140045a6a
mov rbp, qword [0x14005d138]
imul rcx, rdi, 0x230
xor r8d, r8d
xor r14d, r14d
nop dword [rax]
cmp qword [rbp + r8], r15
je 0x140045b9a
inc r14
add r8, 0x230
cmp rcx, r8
jne 0x140045a50
cmp rdx, r15
jbe 0x140046e17
mov rcx, r15
shl rcx, 6
mov rdx, qword [rax + rcx + 0x20]
mov r8, qword [rax + rcx + 0x30]
lea rcx, [rsp + 0x510]
call fcn.1400280a0
cmp qword [rsp + 0x510], 0
je 0x140046c2a
mov qword [rsp + 0x80], r12
mov r14, qword [rsp + 0x518]
mov r12, qword [rsp + 0x520]
mov rbp, qword [rsp + 0x528]
mov qword [rsp + 0x1c0], 8
xorps xmm0, xmm0
movups xmmword [rsp + 0x1c8], xmm0
mov qword [rsp + 0x1d8], 8
movups xmmword [rsp + 0x1e0], xmm0
xor eax, eax
cmp rbp, 0x40
cmovae rax, r12
jb 0x140045b70
movzx ecx, word [rax]
cmp ecx, 0x5a4d
jne 0x140045b70
mov ecx, dword [rax + 0x3c]
mov rax, rbp
sub rax, rcx
setb dl
lea r8, [r12 + rcx]
cmp rax, 0x88
setb r9b
xor eax, eax
or r9b, dl
cmove rax, r8
jne 0x140045b70
cmp dword [rax], 0x4550
jne 0x140045b70
movzx edx, word [rax + 0x18]
cmp edx, 0x20b
jne 0x140045b70
movzx esi, word [rax + 0x14]
cmp rsi, 0x70
jb 0x140045b70
add rcx, 0x88
mov rdx, rbp
sub rdx, rcx
jb 0x140045b70
add rsi, 0xffffffffffffff90
cmp rdx, rsi
jb 0x140045b70
mov edx, dword [rax + 0x84]
shl rdx, 3
cmp rdx, rsi
jbe 0x14004652e
lea rcx, [rsp + 0x1c0]
call fcn.140028c70
mov rcx, r12
call sub.KERNEL32.dll_UnmapViewOfFile
mov rcx, r14
call sub.KERNEL32.dll_CloseHandle
mov r12, qword [rsp + 0x80]
jmp 0x140046c2a
test r14, r14
mov qword [rsp + 0x80], r12
je 0x140045c42
imul r15, r14, 0x230
lea rsi, [r15 + rbp]
lea rcx, [rsp + 0x510]
mov r8d, 0x230
mov rdx, rsi
call sub.msvcrt.dll_memcpy
lea rdx, [r15 + rbp]
add rdx, 0x230
not r14
add r14, rdi
imul r8, r14, 0x230
mov rcx, rsi
call sub.msvcrt.dll_memmove
lea rsi, [rdi - 1]
mov qword [0x14005d148], rsi
cmp rsi, qword [0x14005d140]
jne 0x140045c0f
mov rcx, rsi
call fcn.14002da90
mov rbp, qword [0x14005d138]
lea rcx, [rbp + 0x230]
imul r8, rsi, 0x230
mov rdx, rbp
call sub.msvcrt.dll_memmove
lea rdx, [rsp + 0x510]
mov r8d, 0x230
mov rcx, rbp
call sub.msvcrt.dll_memcpy
mov qword [0x14005d148], rdi
sub rbx, r13
lea r15, [rbx + 1]
mov r12, qword [rbp + 0x160]
mov rdx, qword [rbp + 0x168]
test rdx, rdx
mov r13, rbp
je 0x140045cb5
xor ecx, ecx
mov r8d, 0xff
mov rax, rdx
mov r9, rdx
jmp 0x140045c78
mov r9, rax
sub rax, rcx
jbe 0x140045cb7
shr rax, 1
add rax, rcx
mov r11, rax
shl r11, 5
xor r10d, r10d
cmp qword [r12 + r11], r15
setne r10b
cmovb r10d, r8d
cmp r10b, 1
je 0x140045c70
movzx ecx, r10b
inc rax
cmp ecx, 0xff
jne 0x14004606b
mov rcx, rax
mov rax, r9
jmp 0x140045c73
xor ecx, ecx
cmp rcx, rdx
ja 0x140046077
test rcx, rcx
je 0x140045e3b
lea rsi, [r13 + 0x158]
shl rcx, 5
lea r14, [rcx + r12]
add r14, 0xffffffffffffffe0
neg rcx
jmp 0x140045cfe
add r14, 0xffffffffffffffe0
add rcx, 0x20
je 0x140045e3b
cmp qword [r14 + 0x18], rbx
jbe 0x140045e3b
cmp qword [r14 + 8], rbx
jbe 0x140045cf0
cmp r15, qword [r14]
jbe 0x140045cf0
mov rcx, qword [r14 + 0x10]
mov rdx, qword [r13 + 0x178]
cmp rcx, rdx
jae 0x1400470fe
imul rdi, rcx, 0x218
add rdi, qword [r13 + 0x170]
lea rcx, [rsp + 0x290]
mov rdx, rdi
mov r8, rsi
call fcn.14002db70
mov qword [rsp + 0x200], rdi
mov qword [rsp + 0x210], rbx
mov qword [rsp + 0x208], rsi
cmp qword [rsp + 0x2c0], 0
mov qword [rsp + 0xc0], r13
je 0x1400461c0
lea rax, [rsp + 0x2c0]
movups xmm0, xmmword [rsp + 0x290]
movups xmm1, xmmword [rsp + 0x2a0]
movups xmm2, xmmword [rsp + 0x2b0]
movaps xmmword [rsp + 0x530], xmm2
movaps xmmword [rsp + 0x520], xmm1
movaps xmmword [rsp + 0x510], xmm0
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x140], rcx
movups xmm0, xmmword [rax]
mov rax, qword [rsp + 0x200]
mov qword [rsp + 0x148], rax
mov rax, qword [rsp + 0x208]
mov qword [rsp + 0x150], rax
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0x158], rax
movaps xmmword [rsp + 0x540], xmm0
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x550], rax
mov rax, qword [rsp + 0x148]
mov qword [rsp + 0x558], rax
mov rax, qword [rsp + 0x150]
mov qword [rsp + 0x560], rax
mov rax, qword [rsp + 0x158]
mov qword [rsp + 0x568], rax
jmp 0x1400461e9
mov dword [rsp + 0x290], 3
mov eax, 3
mov ecx, dword [rsp + 0x2c4]
mov dword [rsp + 0x1f0], ecx
movups xmm0, xmmword [rsp + 0x294]
movups xmm1, xmmword [rsp + 0x2a4]
movups xmm2, xmmword [rsp + 0x2b4]
movaps xmmword [rsp + 0x1e0], xmm2
movaps xmmword [rsp + 0x1d0], xmm1
movaps xmmword [rsp + 0x1c0], xmm0
mov rcx, qword [rsp + 0x2c8]
mov r8, qword [rsp + 0x2d0]
movups xmm0, xmmword [rsp + 0x2d8]
movaps xmmword [rsp + 0x500], xmm0
cmp eax, 5
mov r12, qword [rsp + 0x80]
je 0x140046bdb
mov dword [rsp + 0x290], eax
movaps xmm0, xmmword [rsp + 0x1c0]
movaps xmm1, xmmword [rsp + 0x1d0]
movaps xmm2, xmmword [rsp + 0x1e0]
movups xmmword [rsp + 0x2a4], xmm1
movups xmmword [rsp + 0x2b4], xmm2
mov rdx, rcx
mov ecx, dword [rsp + 0x1f0]
mov dword [rsp + 0x2c4], ecx
movups xmmword [rsp + 0x294], xmm0
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0x2c8], rdx
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x2d0], r8
movaps xmm0, xmmword [rsp + 0x500]
movups xmmword [rsp + 0x2d8], xmm0
add eax, 0xfffffffd
cmp eax, 2
mov ecx, 2
cmovb ecx, eax
test ecx, ecx
je 0x140046085
mov rdx, qword [rsp + 0x2d8]
mov qword [rsp + 0x68], rdx
mov rsi, qword [rsp + 0x2e0]
mov rdx, qword [rsp + 0x2b0]
mov qword [rsp + 0x50], rdx
mov r8, qword [rsp + 0x2b8]
mov qword [rsp + 0x260], r8
lea r8, [rdx + 0x60]
mov qword [rsp + 0x98], r8
lea r8, [rdx + 0x1b8]
mov qword [rsp + 0xc8], r8
add rdx, 0x1c0
mov qword [rsp + 0x268], rdx
mov rdx, qword [rsp + 0x2c0]
mov qword [rsp + 0xb8], rdx
lea rdx, [r13 + 0x190]
mov qword [rsp + 0x58], rdx
cmp ecx, 1
mov qword [rsp + 0x80], r12
mov qword [rsp + 0xc0], r13
jne 0x14004608d
mov rbp, qword [rsp + 0x298]
mov dword [rsp + 0x298], 2
cmp eax, 2
jb 0x140046006
cmp qword [rsp + 0x60], 0
je 0x140046006
mov rcx, qword [0x14005d0f0]
xor edx, edx
mov r8, qword [rsp + 0x70]
call fcn.140049b94
mov dword [rsp + 0x290], 3
lea rcx, [rsp + 0x2a0]
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0xa0], xmm0
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0xb0], rax
mov r13d, 3
mov rax, rcx
mov r12, rsi
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0xe0], rcx
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0xd0], xmm0
mov rcx, qword [rsp + 0x58]
mov rdx, rbx
call fcn.140033b30
mov rsi, rax
mov rdi, rdx
jmp 0x140046722
mov rcx, rax
cmp rcx, rdx
jbe 0x140045cc0
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_addr2line_0.21.0_srclib.rs
call fcn.1400143a0
ud2
mov r14b, 1
jmp 0x140046bac
mov rbp, qword [rsp + 0x290]
lea rax, [rsp + 0x298]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x200], xmm0
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x210], rax
mov dword [rsp + 0x290], 2
cmp rsi, qword [rsp + 0x68]
je 0x140046190
lea r12, [rsi - 8]
mov qword [rsp + 0x2e0], r12
mov rdi, qword [rsi - 8]
mov r15d, dword [rdi + 0x28]
mov r14d, dword [rdi + 0x2c]
xor r13d, r13d
test r15d, r15d
setne byte [rsp + 0x78]
xor esi, esi
test r14d, r14d
setne byte [rsp + 0x88]
cmp qword [rdi], 0
je 0x14004669d
mov rax, qword [rsp + 0x98]
cmp dword [rax], 0x2f
je 0x14004669d
mov rax, qword [rdi + 8]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x50]
cmp qword [rax + 0x1b0], 0
jne 0x14004663d
lea rcx, [rsp + 0x510]
mov rdx, qword [rsp + 0x98]
call fcn.1400314e0
lea rcx, [rsp + 0x130]
lea r8, [rsp + 0x510]
mov rdx, qword [rsp + 0x50]
mov r9, qword [rsp + 0x260]
call fcn.140031970
mov rax, qword [rsp + 0x50]
cmp qword [rax + 0x1b0], 0
je 0x140046613
lea rcx, [rsp + 0x130]
call fcn.140033a60
jmp 0x14004663d
mov rcx, qword [rsp + 0xb8]
mov rsi, qword [rcx + 0x28]
test rsi, rsi
mov rax, qword [rsp + 0x60]
je 0x1400464b5
mov rdi, qword [rcx + 0x30]
mov rcx, qword [rsp + 0x50]
movzx r14d, word [rcx + 0x210]
jmp 0x1400464ba
lea rcx, [rsp + 0x510]
lea rdx, [rsp + 0x200]
lea r8, [rsp + 0x290]
call fcn.14002df00
mov qword [rsp + 0x540], 0
mov qword [rsp + 0x130], rbx
mov qword [rsp + 0x138], rdi
mov qword [rsp + 0x140], rsi
mov qword [rsp + 0x148], rsi
mov qword [rsp + 0x150], rbx
mov qword [rsp + 0x158], r15
mov qword [rsp + 0x160], r12
mov qword [rsp + 0x168], r14
mov qword [rsp + 0x170], r15
mov qword [rsp + 0x178], rbx
mov byte [rsp + 0x180], 0
lea rcx, [rsp + 0x290]
lea rdx, [rsp + 0x510]
lea r8, [rsp + 0x130]
call fcn.140030d90
cmp byte [rsp + 0x340], 2
je 0x1400464a1
lea r14, [rsp + 0x2c0]
lea rsi, [rsp + 0xe1]
lea r12, [rsp + 0x160]
lea r13, [rsp + 0x510]
lea rbp, [rsp + 0x200]
lea rdi, [rsp + 0xd0]
lea r15, [rsp + 0x290]
nop word cs:[rax + rax]
movups xmm0, xmmword [rsp + 0x290]
movups xmm1, xmmword [rsp + 0x2a0]
movups xmm2, xmmword [rsp + 0x2b0]
movaps xmmword [rsp + 0x530], xmm2
movaps xmmword [rsp + 0x520], xmm1
movaps xmmword [rsp + 0x510], xmm0
mov r8d, 0x88
lea rcx, [rsp + 0x130]
mov rdx, r14
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x510]
lock dec qword [rax]
jne 0x14004630c
mov rcx, r13
call fcn.140031410
movups xmm0, xmmword [rsp + 0x130]
movups xmm1, xmmword [rsp + 0x140]
movups xmm2, xmmword [rsp + 0x150]
movaps xmmword [rsp + 0x510], xmm0
movaps xmmword [rsp + 0x520], xmm1
movaps xmmword [rsp + 0x530], xmm2
mov rax, qword [rsp + 0x510]
mov rcx, qword [rsp + 0x520]
movzx edx, byte [rax + 0x200]
cmp edx, 0x4b
je 0x140046371
cmp edx, 0x4c
jne 0x14004639d
mov byte [rax + 0x200], 0x4b
mov qword [rax + 0x208], 0
jmp 0x14004638f
mov r8, qword [rax + 0x208]
test r8, r8
je 0x14004638f
mov rcx, qword [r8]
add rcx, 0x10
add r8, 8
mov dl, 2
mov rax, r8
jmp 0x140046398
mov rcx, qword [rcx]
add rcx, 0x10
xor edx, edx
xor r8d, r8d
jmp 0x1400463cd
mov rcx, qword [rax + 0x200]
movzx edx, byte [rax + 0x208]
mov r8d, dword [rax + 0x20c]
mov dword [rsp + 0x203], r8d
mov eax, dword [rax + 0x209]
mov dword [rsp + 0x200], eax
mov r8d, 1
mov r9d, dword [rsp + 0x200]
mov r10d, dword [rsp + 0x203]
mov dword [rsi + 3], r10d
mov dword [rsi], r9d
mov qword [rsp + 0xd0], r8
mov qword [rsp + 0xd8], rcx
mov byte [rsp + 0xe0], dl
mov qword [rsp + 0xe8], rax
mov rcx, rbp
lea rdx, [rsp + 0x528]
mov r8, rdi
call fcn.14002df00
mov qword [rsp + 0x230], 0
mov rax, qword [r12 + 0x50]
mov qword [rsp + 0x120], rax
movups xmm0, xmmword [r12 + 0x40]
movaps xmmword [rsp + 0x110], xmm0
movups xmm0, xmmword [r12]
movups xmm1, xmmword [r12 + 0x10]
movups xmm2, xmmword [r12 + 0x20]
movups xmm3, xmmword [r12 + 0x30]
movaps xmmword [rsp + 0x100], xmm3
movaps xmmword [rsp + 0xf0], xmm2
movaps xmmword [rsp + 0xe0], xmm1
movaps xmmword [rsp + 0xd0], xmm0
mov rcx, r13
mov rdx, rbp
mov r8, rdi
call fcn.140030d90
mov r8d, 0xb8
mov rcx, r15
mov rdx, r13
call sub.msvcrt.dll_memcpy
cmp byte [rsp + 0x340], 2
jne 0x1400462b0
mov eax, dword [rsp + 0x290]
mov r13, qword [rsp + 0xc0]
jmp 0x140045e4b
mov r14w, 2
test rax, rax
je 0x1400464d2
mov rcx, qword [0x14005d0f0]
xor edx, edx
mov r8, qword [rsp + 0x70]
call fcn.140049b94
mov dword [rsp + 0x290], 3
lea rcx, [rsp + 0x298]
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0xa0], xmm0
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0xb0], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0xd0], xmm0
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0xe0], rax
mov r13d, 3
mov r12, qword [rsp + 0x68]
cmp r14w, 2
je 0x140046053
jmp 0x140046722
add rsi, rcx
mov rcx, rbp
sub rcx, rsi
jb 0x140045b70
movzx edx, word [rax + 6]
mov qword [rsp + 0x78], rdx
lea rdx, [rdx*8]
lea rdx, [rdx + rdx*4]
cmp rcx, rdx
jb 0x140045b70
add rsi, r12
mov ecx, dword [rax + 0xc]
test rcx, rcx
je 0x140046e28
mov edx, dword [rax + 0x10]
mov qword [rsp + 0x88], rdx
add rdx, rdx
lea r10, [rdx + rdx*8]
mov rdx, rbp
sub rdx, rcx
setb r8b
lea r9, [r12 + rcx]
cmp rdx, r10
setb dl
xor r11d, r11d
or dl, r8b
cmove r11, r9
jne 0x140045b70
add r10, rcx
mov rcx, rbp
sub rcx, r10
jb 0x140045b70
cmp rcx, 4
jb 0x140045b70
mov qword [rsp + 0x68], r11
mov ecx, dword [r12 + r10]
mov qword [rsp + 0xb8], r10
add rcx, r10
mov qword [rsp + 0x90], rcx
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x98], rax
mov qword [rsp + 0x130], 8
movups xmmword [rsp + 0x138], xmm0
cmp qword [rsp + 0x88], 0
je 0x140046e6a
mov r8d, 8
xor edx, edx
xor edi, edi
jmp 0x140046d86
movups xmm0, xmmword [rsp + 0x130]
movups xmm1, xmmword [rsp + 0x140]
mov rcx, qword [rsp + 0xc8]
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx], xmm0
mov qword [rax + 0x1b0], 1
xor ecx, ecx
mov rax, qword [rsp + 0xc8]
cmp qword [rax], 0
cmove rax, qword [rsp + 0x268]
mov edx, 1
cmove rcx, rdx
test rcx, rcx
je 0x140046678
mov ecx, r14d
mov r14b, 1
cmp byte [rax], 0x4b
jne 0x140046d17
mov rax, qword [rax + 8]
mov r14d, ecx
test rax, rax
je 0x14004669d
mov rdx, qword [rsp + 0x90]
cmp rdx, qword [rax + 8]
jae 0x14004669d
mov rcx, qword [rax]
lea rdx, [rdx + rdx*2]
mov rax, qword [rcx + rdx*8]
mov rcx, qword [rcx + rdx*8 + 0x10]
jmp 0x14004669f
xor eax, eax
movzx edx, byte [rsp + 0x78]
mov r13b, dl
movzx edx, byte [rsp + 0x88]
mov sil, dl
mov dword [rsp + 0x290], r13d
mov dword [rsp + 0x294], r15d
mov dword [rsp + 0x298], esi
mov dword [rsp + 0x29c], r14d
mov qword [rsp + 0x2a0], rax
mov qword [rsp + 0x2a8], rcx
mov rsi, qword [rdi + 0x18]
test rsi, rsi
je 0x140046ce7
mov rdi, qword [rdi + 0x20]
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0xb0], rax
movaps xmm0, xmmword [rsp + 0x200]
movaps xmmword [rsp + 0xa0], xmm0
movaps xmmword [rsp + 0xd0], xmm0
mov qword [rsp + 0xe0], rax
lea rcx, [rsp + 0x518]
mov rax, qword [rsp + 0xe0]
mov qword [rcx + 0x10], rax
movaps xmm0, xmmword [rsp + 0xd0]
movups xmmword [rcx], xmm0
mov qword [rsp + 0x510], rbp
mov qword [rsp + 0x530], rbx
mov qword [rsp + 0x538], rsi
mov qword [rsp + 0x540], rdi
lea rcx, [rsp + 0x4c0]
lea rdx, [rsp + 0x510]
call fcn.140047300
nop word cs:[rax + rax]
add r13d, 0xfffffffd
cmp r13d, 2
mov eax, 2
cmovb eax, r13d
cmp eax, 1
je 0x1400468b0
cmp eax, 2
jne 0x140046b99
mov rbp, qword [rsp + 0x290]
lea rax, [rsp + 0x298]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x200], xmm0
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x210], rax
mov dword [rsp + 0x290], 2
cmp r12, qword [rsp + 0x68]
je 0x140046949
lea rdi, [r12 - 8]
mov qword [rsp + 0x2e0], rdi
mov r12, qword [r12 - 8]
mov r14d, dword [r12 + 0x28]
mov esi, dword [r12 + 0x2c]
xor r13d, r13d
test r14d, r14d
setne byte [rsp + 0x78]
xor r15d, r15d
test esi, esi
setne byte [rsp + 0x88]
cmp qword [r12], 0
je 0x140046a80
mov rax, qword [rsp + 0x98]
cmp dword [rax], 0x2f
je 0x140046a80
mov rax, qword [r12 + 8]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x50]
cmp qword [rax + 0x1b0], 0
jne 0x140046a1e
lea rcx, [rsp + 0x510]
mov rdx, qword [rsp + 0x98]
call fcn.1400314e0
lea rcx, [rsp + 0x130]
mov rdx, qword [rsp + 0x50]
lea r8, [rsp + 0x510]
mov r9, qword [rsp + 0x260]
call fcn.140031970
mov rax, qword [rsp + 0x50]
cmp qword [rax + 0x1b0], 0
je 0x1400469f4
lea rcx, [rsp + 0x130]
call fcn.140033a60
jmp 0x140046a1e
mov rbp, qword [rsp + 0x298]
mov dword [rsp + 0x298], 2
cmp r13d, 2
jb 0x1400468e4
cmp qword [rsp + 0x60], 0
je 0x1400468e4
mov rcx, qword [0x14005d0f0]
xor edx, edx
mov r8, qword [rsp + 0x70]
call fcn.140049b94
mov dword [rsp + 0x290], 3
lea rcx, [rsp + 0x2a0]
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0xa0], xmm0
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0xb0], rax
mov r13d, 3
mov rax, rcx
mov rdi, r12
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0xe0], rcx
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0xd0], xmm0
mov rcx, qword [rsp + 0x58]
mov rdx, rbx
call fcn.140033b30
mov rsi, rax
mov r12, rdx
jmp 0x140046b10
mov rcx, qword [rsp + 0xb8]
mov rsi, qword [rcx + 0x28]
test rsi, rsi
mov rax, qword [rsp + 0x60]
je 0x1400469e8
mov r12, qword [rcx + 0x30]
mov rcx, qword [rsp + 0x50]
movzx r14d, word [rcx + 0x210]
test rax, rax
je 0x14004698c
mov rcx, qword [0x14005d0f0]
xor edx, edx
mov r8, qword [rsp + 0x70]
call fcn.140049b94
mov dword [rsp + 0x290], 3
lea rcx, [rsp + 0x298]
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0xa0], xmm0
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0xb0], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0xd0], xmm0
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0xe0], rax
mov r13d, 3
mov rdi, qword [rsp + 0x68]
cmp r14w, 2
je 0x140046931
jmp 0x140046b10
mov r14w, 2
test rax, rax
jne 0x140046979
jmp 0x14004698c
movups xmm0, xmmword [rsp + 0x130]
movups xmm1, xmmword [rsp + 0x140]
mov rcx, qword [rsp + 0xc8]
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx], xmm0
mov qword [rax + 0x1b0], 1
mov rax, qword [rsp + 0xc8]
cmp qword [rax], 0
cmove rax, qword [rsp + 0x268]
mov ecx, 0
mov edx, 1
cmove rcx, rdx
test rcx, rcx
je 0x140046a53
cmp byte [rax], 0x4b
jne 0x140046d14
mov rax, qword [rax + 8]
test rax, rax
je 0x140046a80
mov rdx, qword [rsp + 0x90]
cmp rdx, qword [rax + 8]
jae 0x140046a80
mov rcx, qword [rax]
lea rdx, [rdx + rdx*2]
mov rax, qword [rcx + rdx*8]
mov rcx, qword [rcx + rdx*8 + 0x10]
jmp 0x140046a82
xor eax, eax
movzx edx, byte [rsp + 0x78]
mov r13b, dl
movzx edx, byte [rsp + 0x88]
mov r15b, dl
mov dword [rsp + 0x290], r13d
mov dword [rsp + 0x294], r14d
mov dword [rsp + 0x298], r15d
mov dword [rsp + 0x29c], esi
mov qword [rsp + 0x2a0], rax
mov qword [rsp + 0x2a8], rcx
mov rsi, qword [r12 + 0x18]
test rsi, rsi
je 0x140046b6c
mov r12, qword [r12 + 0x20]
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0xb0], rax
movaps xmm0, xmmword [rsp + 0x200]
movaps xmmword [rsp + 0xa0], xmm0
movaps xmmword [rsp + 0xd0], xmm0
mov qword [rsp + 0xe0], rax
nop word [rax + rax]
mov rax, qword [rsp + 0xe0]
lea rcx, [rsp + 0x518]
mov qword [rcx + 0x10], rax
movaps xmm0, xmmword [rsp + 0xd0]
movups xmmword [rcx], xmm0
mov qword [rsp + 0x510], rbp
mov qword [rsp + 0x530], rbx
mov qword [rsp + 0x538], rsi
mov qword [rsp + 0x540], r12
lea rcx, [rsp + 0x4c0]
lea rdx, [rsp + 0x510]
call fcn.140047300
mov r12, rdi
jmp 0x140046780
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0xb0], rax
movaps xmm0, xmmword [rsp + 0x200]
movaps xmmword [rsp + 0xa0], xmm0
lea rax, [rsp + 0xa0]
jmp 0x14004691a
mov r13, qword [rsp + 0xc0]
xor r14d, r14d
mov r12, qword [rsp + 0x80]
mov eax, dword [rsp + 0x290]
add eax, 0xfffffffd
cmp eax, 2
jb 0x140046bd6
cmp qword [rsp + 0x60], 0
je 0x140046bd6
mov rcx, qword [0x14005d0f0]
xor edx, edx
mov r8, qword [rsp + 0x70]
call fcn.140049b94
test r14b, r14b
je 0x140046c2a
add r13, 0x190
mov rcx, r13
mov rdx, rbx
call fcn.140033b30
test rax, rax
je 0x140046c2a
mov dword [rsp + 0x510], 3
mov qword [rsp + 0x518], rax
mov qword [rsp + 0x520], rdx
mov qword [rsp + 0x528], rbx
lea rcx, [rsp + 0x4c0]
lea rdx, [rsp + 0x510]
call fcn.140047300
cmp byte [rsp + 0x4f], 0
mov rsi, qword [rsp + 0x288]
jne 0x140046cc5
mov rax, qword [rsp + 0x280]
cmp byte [rax], 0
je 0x140046cc5
mov rax, qword [rsp + 0x270]
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x138], 0
mov rax, qword [rsp + 0x278]
mov rdx, qword [rax + 8]
mov qword [rsp + 0x510], 3
mov qword [rsp + 0x290], 2
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x20], 0
lea rcx, [rsp + 0x130]
lea r8, [rsp + 0x510]
lea r9, [rsp + 0x290]
call fcn.140041e30
mov byte [rsi], al
mov rax, qword [rsp + 0x130]
inc qword [rax + 0x18]
mov rax, qword [r12 + 8]
inc qword [rax]
cmp byte [rsi], 0
sete al
add rsp, 0x948
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0xb0], rax
movaps xmm0, xmmword [rsp + 0x200]
movaps xmmword [rsp + 0xa0], xmm0
lea rax, [rsp + 0xa0]
jmp 0x14004603c
xor r14d, r14d
cmp qword [rsp + 0x60], 0
mov r12, qword [rsp + 0x80]
mov r13, qword [rsp + 0xc0]
jne 0x140046bc3
jmp 0x140046bd6
mov r9, qword [rsp + 0x50]
add r9, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x70]
add rcx, r9
mov rax, rdx
shl rax, 4
mov qword [r8 + rax], rcx
mov rcx, qword [rsp + 0x60]
mov qword [r8 + rax + 8], rcx
inc rdx
mov qword [rsp + 0x140], rdx
mov rax, qword [rsp + 0x58]
add rdi, rax
inc rdi
cmp rdi, qword [rsp + 0x88]
jae 0x140046e60
lea rcx, [rdi + rdi*8]
mov r9, qword [rsp + 0x68]
movzx eax, byte [r9 + rcx*2 + 0x11]
mov qword [rsp + 0x58], rax
movzx eax, word [r9 + rcx*2 + 0xc]
test rax, rax
je 0x140046d6d
movzx r9d, word [r9 + rcx*2 + 0xe]
and r9d, 0x30
cmp r9w, 0x20
jne 0x140046d6d
dec rax
cmp rax, qword [rsp + 0x78]
jae 0x1400470dc
mov r9, qword [rsp + 0x68]
lea rcx, [r9 + rcx*2]
mov qword [rsp + 0x60], rcx
mov ecx, dword [rcx + 8]
mov qword [rsp + 0x50], rcx
lea rax, [rax + rax*4]
mov eax, dword [rsi + rax*8 + 0xc]
mov qword [rsp + 0x70], rax
cmp rdx, qword [rsp + 0x138]
jne 0x140046d38
lea rcx, [rsp + 0x130]
call fcn.1400298d0
mov r8, qword [rsp + 0x130]
mov rdx, qword [rsp + 0x140]
jmp 0x140046d38
lea r8, str.library_std_src...._backtrace_src_symbolizegimli.rs
mov rcx, r15
call fcn.140013ac0
ud2
mov qword [rsp + 0x130], 8
movups xmmword [rsp + 0x138], xmm0
mov edi, 8
xor eax, eax
mov qword [rsp + 0x90], rax
xor eax, eax
mov qword [rsp + 0xb8], rax
xor eax, eax
mov qword [rsp + 0x58], rax
xor edx, edx
jmp 0x140046e79
mov rdi, qword [rsp + 0x130]
jmp 0x140046e71
xor edx, edx
mov edi, 8
mov rax, r12
mov qword [rsp + 0x58], r12
test rdx, rdx
je 0x140046e88
bsr rax, rdx
xor rax, 0x3f
jmp 0x140046e8d
mov eax, 0x40
mov r9d, 0x40
sub r9d, eax
mov rcx, rdi
xor r8d, r8d
call fcn.140028d30
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x100], rax
movups xmm0, xmmword [rsp + 0x130]
movups xmmword [rsp + 0xf0], xmm0
mov qword [rsp + 0xd0], r12
mov qword [rsp + 0xd8], rbp
mov qword [rsp + 0xe0], rsi
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0xe8], rax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x110], rbp
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x118], rax
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x200], 0
mov qword [rsp + 0x130], 0
lea rcx, [rsp + 0x510]
lea rdx, [rsp + 0xd0]
lea r8, [rsp + 0x200]
lea r9, [rsp + 0x130]
call fcn.140029990
movzx esi, byte [rsp + 0x510]
cmp sil, 0x17
je 0x140045b70
lea rdx, [rsp + 0x511]
lea rcx, [rsp + 0x291]
mov r8d, 0x1df
call sub.msvcrt.dll_memcpy
movups xmm0, xmmword [rsp + 0x1c0]
movups xmm1, xmmword [rsp + 0x1d0]
movups xmm2, xmmword [rsp + 0x1e0]
movups xmmword [rsp + 0x488], xmm0
movups xmmword [rsp + 0x498], xmm1
movups xmmword [rsp + 0x4a8], xmm2
mov byte [rsp + 0x290], sil
mov qword [rsp + 0x470], r14
mov qword [rsp + 0x478], r12
mov qword [rsp + 0x480], rbp
mov rsi, qword [0x14005d148]
cmp rsi, 4
jne 0x140047028
mov qword [0x14005d148], 3
mov edx, 0x690
add rdx, qword [0x14005d138]
lea rcx, [rsp + 0x510]
mov r8d, 0x230
call sub.msvcrt.dll_memcpy
cmp byte [rsp + 0x518], 0x17
je 0x140047023
lea rcx, [rsp + 0x518]
call fcn.140028b90
mov esi, 3
lea rcx, [rsp + 0x518]
lea rdx, [rsp + 0x290]
mov r8d, 0x228
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x510], r15
cmp rsi, qword [0x14005d140]
jne 0x14004705c
mov rcx, rsi
call fcn.14002da90
mov rbp, qword [0x14005d138]
test rsi, rsi
je 0x1400470b6
lea rcx, [rbp + 0x230]
imul r8, rsi, 0x230
mov rdx, rbp
call sub.msvcrt.dll_memmove
lea rdx, [rsp + 0x510]
mov r8d, 0x230
mov rcx, rbp
call sub.msvcrt.dll_memcpy
inc rsi
mov qword [0x14005d148], rsi
jne 0x140045c42
lea r8, str.library_std_src...._backtrace_src_symbolizegimli.rs
xor ecx, ecx
xor edx, edx
call fcn.140013ac0
ud2
lea rdx, [rsp + 0x510]
mov r8d, 0x230
mov rcx, rbp
call sub.msvcrt.dll_memcpy
mov qword [0x14005d148], 1
jmp 0x140045c42
cmp qword [rsp + 0x138], 0
je 0x140045b70
mov rcx, qword [0x14005d0f0]
xor edx, edx
call fcn.140049b94
jmp 0x140045b70
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_addr2line_0.21.0_srclib.rs
call fcn.140013ac0
ud2
mov ecx, 8
mov edx, 0x8c0
call fcn.140012d60
ud2
mov ecx, 8
mov edx, 0x10
call fcn.140012d60
ud2