Function at 0x140085920
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, 0x8c8
mov r13, r8
mov qword [rsp + 0x108], rdx
mov rbx, qword [rcx + 8]
mov rax, qword [0x1401d2178]
test rax, rax
je 0x140085963
mov rdx, qword [0x1401d2188]
test rdx, rdx
jne 0x140085f4a
jmp 0x14008713e
movzx eax, byte [0x1401d21e9]
mov rcx, qword [0x1401d2138]
test rcx, rcx
jne 0x14008598e
call sub.KERNEL32.dll_GetProcessHeap
test rax, rax
je 0x14008757c
mov rcx, rax
mov qword [0x1401d2138], rax
mov r8d, 0x8c0
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x14008757c
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x118], 4
mov qword [rsp + 0x120], 0
mov qword [rsp + 0xb0], 8
xorps xmm0, xmm0
movups xmmword [rsp + 0xb8], xmm0
mov ecx, 8
xor edx, edx
call sub.KERNEL32.dll_CreateToolhelp32Snapshot
cmp rax, 0xffffffffffffffff
je 0x140085db1
mov r14, rax
mov qword [rsp + 0x68], r13
lea rsi, [rsp + 0x490]
mov r8d, 0x438
mov rcx, rsi
xor edx, edx
call sub.msvcrt.dll_memset
mov dword [rsp + 0x490], 0x438
mov rcx, r14
mov rdx, rsi
call sub.KERNEL32.dll_Module32FirstW
cmp eax, 1
jne 0x140085da4
lea r12, [rsp + 0x8c8]
mov eax, 8
mov qword [rsp + 0x50], rax
xor eax, eax
mov qword [rsp + 0x20], rax
lea r13, [rsp + 0x490]
jmp 0x140085ad4
mov rcx, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0xc0]
mov rax, rdx
shl rax, 6
movups xmm0, xmmword [rsp + 0x250]
movups xmm1, xmmword [rsp + 0x260]
movups xmm2, xmmword [rsp + 0x270]
movups xmm3, xmmword [rsp + 0x280]
movups xmmword [rcx + rax + 0x30], xmm3
movups xmmword [rcx + rax + 0x20], xmm2
movups xmmword [rcx + rax + 0x10], xmm1
mov qword [rsp + 0x50], rcx
movups xmmword [rcx + rax], xmm0
inc rdx
mov rax, rdx
mov qword [rsp + 0x20], rdx
mov qword [rsp + 0xc0], rdx
nop dword [rax + rax]
mov rcx, r14
mov rdx, r13
call sub.KERNEL32.dll_Module32NextW
cmp eax, 1
jne 0x140085da4
xor r8d, r8d
nop word [rax + rax]
cmp word [rsp + r8*2 + 0x6c0], 0
je 0x140085b40
lea rax, [rsp + r8*2]
add rax, 0x6c0
cmp word [rax + 2], 0
je 0x140085b27
cmp word [rax + 4], 0
je 0x140085b2c
cmp word [rax + 6], 0
je 0x140085b32
cmp word [rax + 8], 0
je 0x140085b38
add r8, 5
add rax, 0xa
cmp rax, r12
jne 0x140085ae0
mov r8d, 0x104
jmp 0x140085b40
inc r8
jmp 0x140085b40
add r8, 2
jmp 0x140085b40
add r8, 3
jmp 0x140085b40
add r8, 4
nop dword [rax]
lea rcx, [rsp + 0x1e0]
lea rdx, [rsp + 0x6c0]
call fcn.1400841f0
mov rbp, qword [rsp + 0x1e0]
mov rdi, qword [rsp + 0x1f0]
lea rcx, [rsp + 0x150]
mov rdx, rbp
mov r8, rdi
call fcn.140087880
cmp qword [rsp + 0x150], 0
je 0x140085c40
mov rsi, qword [rsp + 0x158]
mov r15, qword [rsp + 0x160]
mov rax, qword [rsp + 0x168]
cmp rax, 0x40
jb 0x140085c30
test r15, r15
je 0x140085c30
movzx ecx, word [r15]
cmp ecx, 0x5a4d
jne 0x140085c30
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 0x140085c30
cmp dword [rcx], 0x4550
jne 0x140085c30
movzx r8d, word [rcx + 0x18]
cmp r8d, 0x20b
jne 0x140085c30
movzx r8d, word [rcx + 0x14]
cmp r8, 0x70
jb 0x140085c30
add rdx, 0x88
sub rax, rdx
jb 0x140085c30
add r8, 0xffffffffffffff90
cmp rax, r8
jb 0x140085c30
mov eax, dword [rcx + 0x84]
shl rax, 3
cmp rax, r8
jbe 0x140085c65
nop dword [rax]
mov rcx, r15
call sub.KERNEL32.dll_UnmapViewOfFile
mov rcx, rsi
call sub.KERNEL32.dll_CloseHandle
cmp qword [rsp + 0x1e8], 0
je 0x140085ac0
mov rcx, qword [0x1401d2138]
xor edx, edx
mov r8, rbp
call sub.KERNEL32.dll_HeapFree
jmp 0x140085ac0
mov rax, qword [rcx + 0x30]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x4a8]
mov qword [rsp + 0x58], rax
movzx eax, byte [0x1401d21e9]
mov ecx, 0x10
mov edx, 8
call fcn.1400b5180
test rax, rax
je 0x14008759b
mov edx, dword [rsp + 0x4b0]
mov rcx, qword [rsp + 0x28]
mov qword [rax], rcx
mov qword [rsp + 0x30], rax
mov qword [rax + 8], rdx
mov rax, qword [rsp + 0x1e8]
mov qword [rsp + 0x48], rax
movzx eax, byte [rsp + 0x1f8]
mov byte [rsp + 0x60], al
lea rcx, [rsp + 0x1f9]
mov eax, dword [rcx]
mov ecx, dword [rcx + 3]
mov dword [rsp + 0x150], eax
mov dword [rsp + 0x153], ecx
mov rcx, r15
call sub.KERNEL32.dll_UnmapViewOfFile
mov rcx, rsi
call sub.KERNEL32.dll_CloseHandle
movzx ecx, byte [rsp + 0x60]
cmp cl, 2
je 0x140085ac0
mov rax, qword [rsp + 0x58]
sub rax, qword [rsp + 0x28]
mov qword [rsp + 0x250], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x258], rax
mov qword [rsp + 0x260], 1
mov qword [rsp + 0x268], 1
mov qword [rsp + 0x270], rbp
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x278], rax
mov qword [rsp + 0x280], rdi
mov byte [rsp + 0x288], cl
mov eax, dword [rsp + 0x150]
mov ecx, dword [rsp + 0x153]
lea rdx, [rsp + 0x289]
mov dword [rdx + 3], ecx
mov dword [rdx], eax
mov rdx, qword [rsp + 0x20]
cmp rdx, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0x50]
jne 0x140085a66
lea rcx, [rsp + 0xb0]
call fcn.140087b60
jmp 0x140085a56
mov rcx, r14
call sub.KERNEL32.dll_CloseHandle
mov r13, qword [rsp + 0x68]
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x4a0], rax
movups xmm0, xmmword [rsp + 0xb0]
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x4b8], rax
movups xmm1, xmmword [rsp + 0x110]
movups xmmword [rsp + 0x4a8], xmm1
movaps xmmword [rsp + 0x250], xmm0
mov rax, qword [rsp + 0x4a0]
mov qword [rsp + 0x260], rax
mov rax, qword [rsp + 0x4a8]
mov qword [rsp + 0x268], rax
mov rax, qword [rsp + 0x4b0]
mov qword [rsp + 0x270], rax
mov rax, qword [rsp + 0x4b8]
mov qword [rsp + 0x278], rax
mov rsi, qword [0x1401d2178]
test rsi, rsi
je 0x140085f06
mov rdi, qword [0x1401d2188]
test rdi, rdi
je 0x140085e9c
lea r14, [rsi + 0x28]
jmp 0x140085e69
add r14, 0x40
dec rdi
je 0x140085e9c
cmp qword [r14], 0
je 0x140085e81
mov r8, qword [r14 - 8]
mov rcx, qword [0x1401d2138]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
cmp qword [r14 - 0x18], 0
je 0x140085e60
mov r8, qword [r14 - 0x20]
mov rcx, qword [0x1401d2138]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
jmp 0x140085e60
cmp qword [0x1401d2180], 0
je 0x140085eb7
mov rcx, qword [0x1401d2138]
xor edx, edx
mov r8, rsi
call sub.KERNEL32.dll_HeapFree
mov rsi, qword [0x1401d2190]
mov r15, qword [0x1401d21a0]
inc r15
mov r14, rsi
nop dword [rax + rax]
cmp r15, 1
je 0x140085eeb
lea rcx, [r14 + 8]
add r14, 0x230
dec r15
call fcn.140087dc0
jmp 0x140085ed0
cmp qword [0x1401d2198], 0
je 0x140085f06
mov rcx, qword [0x1401d2138]
xor edx, edx
mov r8, rsi
call sub.KERNEL32.dll_HeapFree
movaps xmm0, xmmword [rsp + 0x250]
movaps xmm1, xmmword [rsp + 0x260]
movaps xmm2, xmmword [rsp + 0x270]
movups xmmword [0x1401d2198], xmm2
movups xmmword [0x1401d2188], xmm1
movups xmmword [0x1401d2178], xmm0
mov rax, qword [0x1401d2178]
mov rdx, qword [0x1401d2188]
test rdx, rdx
je 0x14008713e
mov rcx, rdx
shl rcx, 6
add rcx, rax
xor r15d, r15d
sub rbx, 1
cmovb rbx, r15
mov r8, rax
mov rdi, 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 0x140085fb0
mov r11, r10
add r10, 0x10
mov rsi, qword [r11]
add rsi, rdi
add r9, 0xfffffffffffffff0
cmp rsi, rbx
ja 0x140085f80
add rsi, qword [r11 + 8]
cmp rsi, rbx
jbe 0x140085f80
jmp 0x140085fbd
inc r15
cmp r8, rcx
jne 0x140085f62
jmp 0x14008713e
mov r14, qword [0x1401d21a0]
test r14, r14
je 0x140085ffa
mov rbp, qword [0x1401d2190]
imul rcx, r14, 0x230
xor r8d, r8d
xor r12d, r12d
nop dword [rax]
cmp qword [rbp + r8], r15
je 0x14008611d
inc r12
add r8, 0x230
cmp rcx, r8
jne 0x140085fe0
cmp rdx, r15
jbe 0x140087282
mov rcx, r15
shl rcx, 6
mov rdx, qword [rax + rcx + 0x20]
mov r8, qword [rax + rcx + 0x30]
lea rcx, [rsp + 0x490]
call fcn.140087880
cmp qword [rsp + 0x490], 0
je 0x14008713e
mov rsi, r13
mov r14, qword [rsp + 0x498]
mov r12, qword [rsp + 0x4a0]
mov r13, qword [rsp + 0x4a8]
mov qword [rsp + 0x110], 8
xorps xmm0, xmm0
movups xmmword [rsp + 0x118], xmm0
mov qword [rsp + 0x128], 8
movups xmmword [rsp + 0x130], xmm0
xor eax, eax
cmp r13, 0x40
cmovae rax, r12
jb 0x1400860fb
movzx ecx, word [rax]
cmp ecx, 0x5a4d
jne 0x1400860fb
mov ecx, dword [rax + 0x3c]
mov rax, r13
sub rax, rcx
setb dl
lea r8, [r12 + rcx]
cmp rax, 0x88
setb r9b
xor eax, eax
or r9b, dl
cmove rax, r8
jne 0x1400860fb
cmp dword [rax], 0x4550
jne 0x1400860fb
movzx edx, word [rax + 0x18]
cmp edx, 0x20b
jne 0x1400860fb
movzx ebp, word [rax + 0x14]
cmp rbp, 0x70
jb 0x1400860fb
add rcx, 0x88
mov rdx, r13
sub rdx, rcx
jb 0x1400860fb
add rbp, 0xffffffffffffff90
cmp rdx, rbp
jb 0x1400860fb
mov edx, dword [rax + 0x84]
shl rdx, 3
cmp rdx, rbp
jbe 0x140086a6d
lea rcx, [rsp + 0x110]
call fcn.140087ea0
mov rcx, r12
call sub.KERNEL32.dll_UnmapViewOfFile
mov rcx, r14
call sub.KERNEL32.dll_CloseHandle
jmp 0x14008713e
test r12, r12
je 0x1400861bd
imul r15, r12, 0x230
lea rsi, [r15 + rbp]
lea rcx, [rsp + 0x490]
mov r8d, 0x230
mov rdx, rsi
call sub.msvcrt.dll_memcpy
lea rdx, [r15 + rbp]
add rdx, 0x230
not r12
add r12, r14
imul r8, r12, 0x230
mov rcx, rsi
call sub.msvcrt.dll_memmove
lea rsi, [r14 - 1]
mov qword [0x1401d21a0], rsi
cmp rsi, qword [0x1401d2198]
jne 0x14008618a
mov rcx, rsi
call fcn.14008cd00
mov rbp, qword [0x1401d2190]
lea rcx, [rbp + 0x230]
imul r8, rsi, 0x230
mov rdx, rbp
call sub.msvcrt.dll_memmove
lea rdx, [rsp + 0x490]
mov r8d, 0x230
mov rcx, rbp
call sub.msvcrt.dll_memcpy
mov qword [0x1401d21a0], r14
sub rbx, rdi
lea r14, [rbx + 1]
mov r15, qword [rbp + 0x160]
mov rdx, qword [rbp + 0x168]
xor ecx, ecx
test rdx, rdx
je 0x140086239
mov r8d, 0xff
mov rax, rdx
mov r9, rdx
jmp 0x1400861f8
mov r9, rax
sub rax, rcx
jbe 0x140086239
shr rax, 1
add rax, rcx
mov r11, rax
shl r11, 5
xor r10d, r10d
cmp qword [r15 + r11], r14
setne r10b
cmovb r10d, r8d
cmp r10b, 1
je 0x1400861f0
movzx ecx, r10b
inc rax
cmp ecx, 0xff
jne 0x140086236
mov rcx, rax
mov rax, r9
sub rax, rcx
ja 0x1400861f8
jmp 0x140086239
mov rcx, rax
cmp rcx, rdx
ja 0x14008758d
test rcx, rcx
je 0x1400863c4
lea rsi, [rbp + 0x158]
shl rcx, 5
lea r12, [rcx + r15]
add r12, 0xffffffffffffffe0
neg rcx
jmp 0x14008627e
add r12, 0xffffffffffffffe0
add rcx, 0x20
je 0x1400863c4
cmp qword [r12 + 0x18], rbx
jbe 0x1400863c4
cmp qword [r12 + 8], rbx
jbe 0x140086270
cmp r14, qword [r12]
jbe 0x140086270
mov rcx, qword [r12 + 0x10]
mov rdx, qword [rbp + 0x178]
cmp rcx, rdx
jae 0x14008756e
imul rdi, rcx, 0x218
add rdi, qword [rbp + 0x170]
lea rcx, [rsp + 0x250]
mov rdx, rdi
mov r8, rsi
call fcn.14008cde0
mov qword [rsp + 0x1e0], rdi
mov qword [rsp + 0x1f0], rbx
mov qword [rsp + 0x1e8], rsi
cmp qword [rsp + 0x280], 0
mov qword [rsp + 0x68], r13
mov qword [rsp + 0x90], rbp
je 0x140086704
lea rax, [rsp + 0x280]
movups xmm0, xmmword [rsp + 0x250]
movups xmm1, xmmword [rsp + 0x260]
movups xmm2, xmmword [rsp + 0x270]
movaps xmmword [rsp + 0x4b0], xmm2
movaps xmmword [rsp + 0x4a0], xmm1
movaps xmmword [rsp + 0x490], xmm0
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x160], rcx
movups xmm0, xmmword [rax]
mov rax, qword [rsp + 0x1e0]
mov qword [rsp + 0x168], rax
mov rax, qword [rsp + 0x1e8]
mov qword [rsp + 0x170], rax
mov rax, qword [rsp + 0x1f0]
mov qword [rsp + 0x178], rax
movaps xmmword [rsp + 0x4c0], xmm0
mov rax, qword [rsp + 0x160]
mov qword [rsp + 0x4d0], rax
mov rax, qword [rsp + 0x168]
mov qword [rsp + 0x4d8], rax
mov rax, qword [rsp + 0x170]
mov qword [rsp + 0x4e0], rax
mov rax, qword [rsp + 0x178]
mov qword [rsp + 0x4e8], rax
jmp 0x14008672d
mov dword [rsp + 0x250], 3
mov eax, 3
mov ecx, dword [rsp + 0x284]
mov dword [rsp + 0x140], ecx
movups xmm0, xmmword [rsp + 0x254]
movups xmm1, xmmword [rsp + 0x264]
movups xmm2, xmmword [rsp + 0x274]
movaps xmmword [rsp + 0x130], xmm2
movaps xmmword [rsp + 0x120], xmm1
movaps xmmword [rsp + 0x110], xmm0
mov rdx, qword [rsp + 0x288]
mov r8, qword [rsp + 0x290]
movups xmm0, xmmword [rsp + 0x298]
movaps xmmword [rsp + 0x480], xmm0
cmp eax, 5
je 0x1400870f0
mov dword [rsp + 0x250], eax
movaps xmm0, xmmword [rsp + 0x110]
movaps xmm1, xmmword [rsp + 0x120]
movaps xmm2, xmmword [rsp + 0x130]
movups xmmword [rsp + 0x264], xmm1
movups xmmword [rsp + 0x274], xmm2
mov ecx, dword [rsp + 0x140]
mov dword [rsp + 0x284], ecx
movups xmmword [rsp + 0x254], xmm0
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x288], rdx
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x290], r8
movaps xmm0, xmmword [rsp + 0x480]
movups xmmword [rsp + 0x298], xmm0
add eax, 0xfffffffd
cmp eax, 2
mov ecx, 2
cmovb ecx, eax
test ecx, ecx
je 0x1400865e0
mov rdx, qword [rsp + 0x298]
mov qword [rsp + 0x28], rdx
mov rsi, qword [rsp + 0x2a0]
mov rdx, qword [rsp + 0x270]
mov r8, qword [rsp + 0x278]
mov qword [rsp + 0x240], r8
lea r8, [rdx + 0x60]
mov qword [rsp + 0x38], r8
lea r8, [rdx + 0x1b8]
mov qword [rsp + 0x98], r8
lea r8, [rdx + 0x1c0]
mov qword [rsp + 0x248], r8
mov r8, qword [rsp + 0x280]
mov qword [rsp + 0xa8], r8
lea r8, [rbp + 0x190]
mov qword [rsp + 0x50], r8
cmp ecx, 1
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x68], r13
mov qword [rsp + 0x90], rbp
jne 0x1400865e8
mov r15, qword [rsp + 0x258]
mov dword [rsp + 0x258], 2
cmp eax, 2
jb 0x14008657e
cmp qword [rsp + 0x30], 0
je 0x14008657e
mov rcx, qword [0x1401d2138]
xor edx, edx
mov r8, qword [rsp + 0x48]
call sub.KERNEL32.dll_HeapFree
mov dword [rsp + 0x250], 3
lea rcx, [rsp + 0x260]
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x70], xmm0
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x80], rax
mov r13d, 3
mov rax, rcx
mov rbp, rsi
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0xc0], rcx
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0xb0], xmm0
mov rcx, qword [rsp + 0x50]
mov rdx, rbx
call fcn.140092e10
mov rsi, rax
mov rdi, rdx
jmp 0x140086c52
mov sil, 1
jmp 0x1400870c1
mov r15, qword [rsp + 0x250]
lea rax, [rsp + 0x258]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x1e0], xmm0
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x1f0], rax
mov dword [rsp + 0x250], 2
cmp rsi, qword [rsp + 0x28]
je 0x1400866de
lea rbp, [rsi - 8]
mov qword [rsp + 0x2a0], rbp
mov rdi, qword [rsi - 8]
mov r14d, dword [rdi + 0x28]
mov esi, dword [rdi + 0x2c]
xor r13d, r13d
test r14d, r14d
setne byte [rsp + 0x20]
xor r12d, r12d
test esi, esi
setne byte [rsp + 0x60]
cmp qword [rdi], 0
je 0x140086bd3
mov rax, qword [rsp + 0x38]
cmp dword [rax], 0x2f
je 0x140086bd3
mov rax, qword [rdi + 8]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x40]
cmp qword [rax + 0x1b0], 0
jne 0x140086b78
lea rcx, [rsp + 0x490]
mov rdx, qword [rsp + 0x38]
call fcn.1400907c0
lea rcx, [rsp + 0x150]
lea r8, [rsp + 0x490]
mov rdx, qword [rsp + 0x40]
mov r9, qword [rsp + 0x240]
call fcn.140090c50
mov rax, qword [rsp + 0x40]
cmp qword [rax + 0x1b0], 0
je 0x140086b4e
lea rcx, [rsp + 0x150]
call fcn.140092d40
jmp 0x140086b78
mov rax, qword [rsp + 0xa8]
mov rsi, qword [rax + 0x28]
test rsi, rsi
je 0x1400869f4
mov rdi, qword [rax + 0x30]
movzx r14d, word [rdx + 0x210]
jmp 0x1400869f9
lea rcx, [rsp + 0x490]
lea rdx, [rsp + 0x1e0]
lea r8, [rsp + 0x250]
call fcn.14008d180
mov qword [rsp + 0x4c0], 0
mov qword [rsp + 0x150], rbx
mov qword [rsp + 0x158], rdi
mov qword [rsp + 0x160], rsi
mov qword [rsp + 0x168], rsi
mov qword [rsp + 0x170], rbx
mov qword [rsp + 0x178], r14
mov qword [rsp + 0x180], r15
mov qword [rsp + 0x188], r12
mov qword [rsp + 0x190], r14
mov qword [rsp + 0x198], rbx
mov byte [rsp + 0x1a0], 0
lea rcx, [rsp + 0x250]
lea rdx, [rsp + 0x490]
lea r8, [rsp + 0x150]
call fcn.140090060
cmp byte [rsp + 0x300], 2
je 0x1400869db
lea rdi, [rsp + 0xc1]
lea r14, [rsp + 0x180]
lea r12, [rsp + 0x150]
lea r13, [rsp + 0x490]
lea rbp, [rsp + 0x1e0]
lea rsi, [rsp + 0xb0]
lea r15, [rsp + 0x250]
nop dword [rax + rax]
movups xmm0, xmmword [rsp + 0x250]
movups xmm1, xmmword [rsp + 0x260]
movups xmm2, xmmword [rsp + 0x270]
movaps xmmword [rsp + 0x4b0], xmm2
movaps xmmword [rsp + 0x4a0], xmm1
movaps xmmword [rsp + 0x490], xmm0
mov r8d, 0x88
mov rcx, r12
lea rdx, [rsp + 0x280]
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x490]
lock dec qword [rax]
jne 0x14008684c
mov rcx, r13
call fcn.1400906f0
movups xmm0, xmmword [rsp + 0x150]
movups xmm1, xmmword [rsp + 0x160]
movups xmm2, xmmword [rsp + 0x170]
movaps xmmword [rsp + 0x490], xmm0
movaps xmmword [rsp + 0x4a0], xmm1
movaps xmmword [rsp + 0x4b0], xmm2
mov rax, qword [rsp + 0x490]
mov rcx, qword [rsp + 0x4a0]
movzx edx, byte [rax + 0x200]
cmp edx, 0x4b
je 0x1400868b1
cmp edx, 0x4c
jne 0x1400868dd
mov byte [rax + 0x200], 0x4b
mov qword [rax + 0x208], 0
jmp 0x1400868cf
mov r8, qword [rax + 0x208]
test r8, r8
je 0x1400868cf
mov rcx, qword [r8]
add rcx, 0x10
add r8, 8
mov dl, 2
mov rax, r8
jmp 0x1400868d8
mov rcx, qword [rcx]
add rcx, 0x10
xor edx, edx
xor r8d, r8d
jmp 0x14008690d
mov rcx, qword [rax + 0x200]
movzx edx, byte [rax + 0x208]
mov r8d, dword [rax + 0x20c]
mov dword [rsp + 0x1e3], r8d
mov eax, dword [rax + 0x209]
mov dword [rsp + 0x1e0], eax
mov r8d, 1
mov r9d, dword [rsp + 0x1e0]
mov r10d, dword [rsp + 0x1e3]
mov dword [rdi + 3], r10d
mov dword [rdi], r9d
mov qword [rsp + 0xb0], r8
mov qword [rsp + 0xb8], rcx
mov byte [rsp + 0xc0], dl
mov qword [rsp + 0xc8], rax
mov rcx, rbp
lea rdx, [rsp + 0x4a8]
mov r8, rsi
call fcn.14008d180
mov qword [rsp + 0x210], 0
mov rax, qword [r14 + 0x50]
mov qword [rsp + 0x100], rax
movups xmm0, xmmword [r14 + 0x40]
movaps xmmword [rsp + 0xf0], xmm0
movups xmm0, xmmword [r14]
movups xmm1, xmmword [r14 + 0x10]
movups xmm2, xmmword [r14 + 0x20]
movups xmm3, xmmword [r14 + 0x30]
movaps xmmword [rsp + 0xe0], xmm3
movaps xmmword [rsp + 0xd0], xmm2
movaps xmmword [rsp + 0xc0], xmm1
movaps xmmword [rsp + 0xb0], xmm0
mov rcx, r13
mov rdx, rbp
mov r8, rsi
call fcn.140090060
mov r8d, 0xb8
mov rcx, r15
mov rdx, r13
call sub.msvcrt.dll_memcpy
cmp byte [rsp + 0x300], 2
jne 0x1400867f0
mov eax, dword [rsp + 0x250]
mov r13, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x90]
jmp 0x1400863d4
mov r14w, 2
cmp qword [rsp + 0x30], 0
je 0x140086a14
mov rcx, qword [0x1401d2138]
xor edx, edx
mov r8, qword [rsp + 0x48]
call sub.KERNEL32.dll_HeapFree
mov dword [rsp + 0x250], 3
lea rcx, [rsp + 0x258]
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x70], xmm0
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x80], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0xb0], xmm0
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0xc0], rax
mov r13d, 3
mov rbp, qword [rsp + 0x28]
cmp r14w, 2
je 0x1400865c8
jmp 0x140086c52
add rbp, rcx
mov rcx, r13
sub rcx, rbp
jb 0x1400860fb
movzx edx, word [rax + 6]
mov qword [rsp + 0x60], rdx
lea rdx, [rdx*8]
lea rdx, [rdx + rdx*4]
cmp rcx, rdx
jb 0x1400860fb
add rbp, r12
mov ecx, dword [rax + 0xc]
test rcx, rcx
je 0x140087293
mov edx, dword [rax + 0x10]
mov qword [rsp + 0x58], rdx
add rdx, rdx
lea r10, [rdx + rdx*8]
mov rdx, r13
sub rdx, rcx
setb r8b
lea r9, [r12 + rcx]
cmp rdx, r10
setb dl
xor r11d, r11d
or dl, r8b
cmove r11, r9
mov qword [rsp + 0x28], r11
jne 0x1400860fb
add r10, rcx
mov rcx, r13
sub rcx, r10
jb 0x1400860fb
cmp rcx, 4
jb 0x1400860fb
mov ecx, dword [r12 + r10]
mov qword [rsp + 0x38], r10
add rcx, r10
mov qword [rsp + 0xa0], rcx
mov rax, qword [rax + 0x30]
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0x150], 8
movups xmmword [rsp + 0x158], xmm0
cmp qword [rsp + 0x58], 0
je 0x1400872cd
mov r8d, 8
xor edx, edx
xor ecx, ecx
mov rax, qword [rsp + 0x28]
jmp 0x1400871ef
movups xmm0, xmmword [rsp + 0x150]
movups xmm1, xmmword [rsp + 0x160]
mov rcx, qword [rsp + 0x98]
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx], xmm0
mov qword [rax + 0x1b0], 1
xor ecx, ecx
mov rax, qword [rsp + 0x98]
cmp qword [rax], 0
cmove rax, qword [rsp + 0x248]
mov edx, 1
cmove rcx, rdx
test rcx, rcx
je 0x140086bb1
mov ecx, esi
mov sil, 1
cmp byte [rax], 0x4b
jne 0x14008717c
mov rax, qword [rax + 8]
mov esi, ecx
test rax, rax
je 0x140086bd3
mov rdx, qword [rsp + 0x58]
cmp rdx, qword [rax + 8]
jae 0x140086bd3
mov rcx, qword [rax]
lea rdx, [rdx + rdx*2]
mov rax, qword [rcx + rdx*8]
mov rcx, qword [rcx + rdx*8 + 0x10]
jmp 0x140086bd5
xor eax, eax
movzx edx, byte [rsp + 0x20]
mov r13b, dl
movzx edx, byte [rsp + 0x60]
mov r12b, dl
mov dword [rsp + 0x250], r13d
mov dword [rsp + 0x254], r14d
mov dword [rsp + 0x258], r12d
mov dword [rsp + 0x25c], esi
mov qword [rsp + 0x260], rax
mov qword [rsp + 0x268], rcx
mov rsi, qword [rdi + 0x18]
test rsi, rsi
je 0x140087153
mov rdi, qword [rdi + 0x20]
mov rax, qword [rsp + 0x1f0]
mov qword [rsp + 0x80], rax
movaps xmm0, xmmword [rsp + 0x1e0]
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0xb0], xmm0
mov qword [rsp + 0xc0], rax
lea rcx, [rsp + 0x498]
mov rax, qword [rsp + 0xc0]
mov qword [rcx + 0x10], rax
movaps xmm0, xmmword [rsp + 0xb0]
movups xmmword [rcx], xmm0
mov qword [rsp + 0x490], r15
mov qword [rsp + 0x4b0], rbx
mov qword [rsp + 0x4b8], rsi
mov qword [rsp + 0x4c0], rdi
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x20]
lea rdx, [rsp + 0x490]
mov rcx, qword [rsp + 0x108]
mov qword [rsp + 0x20], rax
call rax
nop word cs:[rax + rax]
add r13d, 0xfffffffd
cmp r13d, 2
mov eax, 2
cmovb eax, r13d
cmp eax, 1
je 0x140086de0
cmp eax, 2
jne 0x1400870b2
mov rsi, qword [rsp + 0x250]
lea rax, [rsp + 0x258]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x1e0], xmm0
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x1f0], rax
mov dword [rsp + 0x250], 2
cmp rbp, qword [rsp + 0x28]
je 0x140086e76
lea r14, [rbp - 8]
mov qword [rsp + 0x2a0], r14
mov rbp, qword [rbp - 8]
mov r12d, dword [rbp + 0x28]
mov edi, dword [rbp + 0x2c]
xor r13d, r13d
test r12d, r12d
setne byte [rsp + 0x60]
xor r15d, r15d
test edi, edi
setne byte [rsp + 0x58]
cmp qword [rbp], 0
je 0x140086fb0
mov rax, qword [rsp + 0x38]
cmp dword [rax], 0x2f
je 0x140086fb0
mov rax, qword [rbp + 8]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x40]
cmp qword [rax + 0x1b0], 0
jne 0x140086f49
lea rcx, [rsp + 0x490]
mov rdx, qword [rsp + 0x38]
call fcn.1400907c0
lea rcx, [rsp + 0x150]
mov rdx, qword [rsp + 0x40]
lea r8, [rsp + 0x490]
mov r9, qword [rsp + 0x240]
call fcn.140090c50
mov rax, qword [rsp + 0x40]
cmp qword [rax + 0x1b0], 0
je 0x140086f1f
lea rcx, [rsp + 0x150]
call fcn.140092d40
jmp 0x140086f49
mov rsi, qword [rsp + 0x258]
mov dword [rsp + 0x258], 2
cmp r13d, 2
jb 0x140086e14
cmp qword [rsp + 0x30], 0
je 0x140086e14
mov rcx, qword [0x1401d2138]
xor edx, edx
mov r8, qword [rsp + 0x48]
call sub.KERNEL32.dll_HeapFree
mov dword [rsp + 0x250], 3
lea rcx, [rsp + 0x260]
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x70], xmm0
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x80], rax
mov r13d, 3
mov rax, rcx
mov r14, rbp
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0xc0], rcx
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0xb0], xmm0
mov rcx, qword [rsp + 0x50]
mov rdx, rbx
call fcn.140092e10
mov rdi, rax
mov rbp, rdx
jmp 0x140087030
mov rax, qword [rsp + 0xa8]
mov rdi, qword [rax + 0x28]
test rdi, rdi
je 0x140086f10
mov rbp, qword [rax + 0x30]
mov rax, qword [rsp + 0x40]
movzx r15d, word [rax + 0x210]
cmp qword [rsp + 0x30], 0
je 0x140086eb7
mov rcx, qword [0x1401d2138]
xor edx, edx
mov r8, qword [rsp + 0x48]
call sub.KERNEL32.dll_HeapFree
mov dword [rsp + 0x250], 3
lea rcx, [rsp + 0x258]
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x70], xmm0
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x80], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0xb0], xmm0
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0xc0], rax
mov r13d, 3
mov r14, qword [rsp + 0x28]
cmp r15w, 2
je 0x140086e5e
jmp 0x140087030
mov r15w, 2
cmp qword [rsp + 0x30], 0
jne 0x140086ea4
jmp 0x140086eb7
movups xmm0, xmmword [rsp + 0x150]
movups xmm1, xmmword [rsp + 0x160]
mov rcx, qword [rsp + 0x98]
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx], xmm0
mov qword [rax + 0x1b0], 1
mov rax, qword [rsp + 0x98]
cmp qword [rax], 0
cmove rax, qword [rsp + 0x248]
mov ecx, 0
mov edx, 1
cmove rcx, rdx
test rcx, rcx
je 0x140086f7e
cmp byte [rax], 0x4b
jne 0x14008717a
mov rax, qword [rax + 8]
test rax, rax
je 0x140086fb0
mov rdx, qword [rsp + 0xa0]
cmp rdx, qword [rax + 8]
jae 0x140086fb0
mov rcx, qword [rax]
lea rdx, [rdx + rdx*2]
mov rax, qword [rcx + rdx*8]
mov rcx, qword [rcx + rdx*8 + 0x10]
jmp 0x140086fb2
xor eax, eax
movzx edx, byte [rsp + 0x60]
mov r13b, dl
movzx edx, byte [rsp + 0x58]
mov r15b, dl
mov dword [rsp + 0x250], r13d
mov dword [rsp + 0x254], r12d
mov dword [rsp + 0x258], r15d
mov dword [rsp + 0x25c], edi
mov qword [rsp + 0x260], rax
mov qword [rsp + 0x268], rcx
mov rdi, qword [rbp + 0x18]
test rdi, rdi
je 0x14008708b
mov rbp, qword [rbp + 0x20]
mov rax, qword [rsp + 0x1f0]
mov qword [rsp + 0x80], rax
movaps xmm0, xmmword [rsp + 0x1e0]
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0xb0], xmm0
mov qword [rsp + 0xc0], rax
nop
mov rax, qword [rsp + 0xc0]
lea rcx, [rsp + 0x498]
mov qword [rcx + 0x10], rax
movaps xmm0, xmmword [rsp + 0xb0]
movups xmmword [rcx], xmm0
mov qword [rsp + 0x490], rsi
mov qword [rsp + 0x4b0], rbx
mov qword [rsp + 0x4b8], rdi
mov qword [rsp + 0x4c0], rbp
mov rcx, qword [rsp + 0x108]
lea rdx, [rsp + 0x490]
call qword [rsp + 0x20]
mov rbp, r14
jmp 0x140086cc0
mov rax, qword [rsp + 0x1f0]
mov qword [rsp + 0x80], rax
movaps xmm0, xmmword [rsp + 0x1e0]
movaps xmmword [rsp + 0x70], xmm0
lea rax, [rsp + 0x70]
jmp 0x140086e47
mov r13, qword [rsp + 0x68]
xor esi, esi
mov rbp, qword [rsp + 0x90]
mov eax, dword [rsp + 0x250]
add eax, 0xfffffffd
cmp eax, 2
jb 0x1400870eb
cmp qword [rsp + 0x30], 0
je 0x1400870eb
mov rcx, qword [0x1401d2138]
xor edx, edx
mov r8, qword [rsp + 0x48]
call sub.KERNEL32.dll_HeapFree
test sil, sil
je 0x14008713e
add rbp, 0x190
mov rcx, rbp
mov rdx, rbx
call fcn.140092e10
test rax, rax
je 0x14008713e
mov dword [rsp + 0x490], 3
mov qword [rsp + 0x498], rax
mov qword [rsp + 0x4a0], rdx
mov qword [rsp + 0x4a8], rbx
lea rdx, [rsp + 0x490]
mov rcx, qword [rsp + 0x108]
call qword [r13 + 0x20]
nop
add rsp, 0x8c8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rsp + 0x1f0]
mov qword [rsp + 0x80], rax
movaps xmm0, xmmword [rsp + 0x1e0]
movaps xmmword [rsp + 0x70], xmm0
lea rax, [rsp + 0x70]
jmp 0x1400865b1
xor esi, esi
cmp qword [rsp + 0x30], 0
mov r13, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x90]
jne 0x1400870d8
jmp 0x1400870eb
mov r9, qword [rsp + 0x40]
add r9, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0x48]
add rcx, r9
mov rax, rdx
shl rax, 4
mov qword [r8 + rax], rcx
mov rcx, qword [rsp + 0x30]
mov qword [r8 + rax + 8], rcx
inc rdx
mov qword [rsp + 0x160], rdx
mov rcx, qword [rsp + 0x20]
mov rax, qword [rsp + 0x50]
add rcx, rax
inc rcx
cmp rcx, qword [rsp + 0x58]
mov rax, qword [rsp + 0x28]
jae 0x1400872c3
mov qword [rsp + 0x20], rcx
lea rcx, [rcx + rcx*8]
movzx r9d, byte [rax + rcx*2 + 0x11]
mov qword [rsp + 0x50], r9
mov r9, rax
movzx eax, word [rax + rcx*2 + 0xc]
test rax, rax
je 0x1400871cf
movzx r9d, word [r9 + rcx*2 + 0xe]
and r9d, 0x30
cmp r9w, 0x20
jne 0x1400871cf
dec rax
cmp rax, qword [rsp + 0x60]
jae 0x14008754c
mov r9, qword [rsp + 0x28]
lea rcx, [r9 + rcx*2]
mov qword [rsp + 0x30], rcx
mov ecx, dword [rcx + 8]
mov qword [rsp + 0x40], rcx
lea rax, [rax + rax*4]
mov eax, dword [rbp + rax*8 + 0xc]
mov qword [rsp + 0x48], rax
cmp rdx, qword [rsp + 0x158]
jne 0x14008719a
lea rcx, [rsp + 0x150]
call fcn.140088b10
mov r8, qword [rsp + 0x150]
mov rdx, qword [rsp + 0x160]
jmp 0x14008719a
lea r8, [0x14015a5e8]
mov rcx, r15
call fcn.140005d60
ud2
mov qword [rsp + 0x150], 8
movups xmmword [rsp + 0x158], xmm0
mov ecx, 8
xor eax, eax
mov qword [rsp + 0xa0], rax
xor eax, eax
xor edx, edx
mov qword [rsp + 0x20], rdx
xor edx, edx
jmp 0x1400872e1
mov rcx, qword [rsp + 0x150]
jmp 0x1400872d4
xor edx, edx
mov ecx, 8
mov rax, r12
mov qword [rsp + 0x20], r12
mov rax, qword [rsp + 0x38]
test rdx, rdx
mov qword [rsp + 0x38], rax
je 0x1400872f5
bsr rax, rdx
xor rax, 0x3f
jmp 0x1400872fa
mov eax, 0x40
mov r9d, 0x40
sub r9d, eax
mov qword [rsp + 0x50], rcx
xor r8d, r8d
call fcn.140087f60
mov rax, qword [rsp + 0x160]
mov qword [rsp + 0xe0], rax
movups xmm0, xmmword [rsp + 0x150]
movups xmmword [rsp + 0xd0], xmm0
mov qword [rsp + 0xb0], r12
mov qword [rsp + 0xb8], r13
mov qword [rsp + 0xc0], rbp
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0xe8], rax
mov qword [rsp + 0xf0], r13
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0xf8], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x1e0], 0
mov qword [rsp + 0x150], 0
lea rcx, [rsp + 0x490]
lea rdx, [rsp + 0xb0]
lea r8, [rsp + 0x1e0]
lea r9, [rsp + 0x150]
call fcn.140088bd0
movzx ebp, byte [rsp + 0x490]
cmp bpl, 0x17
je 0x1400860fb
lea rdx, [rsp + 0x491]
lea rcx, [rsp + 0x251]
mov r8d, 0x1df
call sub.msvcrt.dll_memcpy
movups xmm0, xmmword [rsp + 0x110]
movups xmm1, xmmword [rsp + 0x120]
movups xmm2, xmmword [rsp + 0x130]
movups xmmword [rsp + 0x448], xmm0
movups xmmword [rsp + 0x458], xmm1
movups xmmword [rsp + 0x468], xmm2
mov byte [rsp + 0x250], bpl
mov qword [rsp + 0x430], r14
mov qword [rsp + 0x438], r12
mov qword [rsp + 0x440], r13
mov r14, qword [0x1401d21a0]
cmp r14, 4
mov r13, rsi
jne 0x140087498
mov qword [0x1401d21a0], 3
mov edx, 0x690
add rdx, qword [0x1401d2190]
lea rcx, [rsp + 0x490]
mov r8d, 0x230
call sub.msvcrt.dll_memcpy
cmp byte [rsp + 0x498], 0x17
je 0x140087492
lea rcx, [rsp + 0x498]
call fcn.140087dc0
mov r14d, 3
lea rcx, [rsp + 0x498]
lea rdx, [rsp + 0x250]
mov r8d, 0x228
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x490], r15
cmp r14, qword [0x1401d2198]
jne 0x1400874cc
mov rcx, r14
call fcn.14008cd00
mov rbp, qword [0x1401d2190]
test r14, r14
je 0x140087526
lea rcx, [rbp + 0x230]
imul r8, r14, 0x230
mov rdx, rbp
call sub.msvcrt.dll_memmove
lea rdx, [rsp + 0x490]
mov r8d, 0x230
mov rcx, rbp
call sub.msvcrt.dll_memcpy
inc r14
mov qword [0x1401d21a0], r14
jne 0x1400861bd
lea r8, [0x14015a600]
xor ecx, ecx
xor edx, edx
call fcn.140005d60
ud2
lea rdx, [rsp + 0x490]
mov r8d, 0x230
mov rcx, rbp
call sub.msvcrt.dll_memcpy
mov qword [0x1401d21a0], 1
jmp 0x1400861bd
cmp qword [rsp + 0x158], 0
je 0x1400860fb
mov rcx, qword [0x1401d2138]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
jmp 0x1400860fb
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_addr2line_0.21.0_srclib.rs
call fcn.140005d60
ud2
mov ecx, 8
mov edx, 0x8c0
call fcn.1400034d0
ud2
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_addr2line_0.21.0_srclib.rs
call fcn.140006660
ud2
mov ecx, 8
mov edx, 0x10
call fcn.1400034d0
ud2