Function at 0x1400638c0
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, 0xab8
mov qword [rsp + 0x128], r9
mov qword [rsp + 0xb0], r8
mov rbp, rdx
test rcx, rcx
je 0x140063918
mov rbp, qword [rbp + 8]
test rbp, rbp
je 0x14006391d
dec rbp
mov rax, qword [0x1400dd1c8]
test rax, rax
je 0x14006392b
mov rdx, qword [0x1400dd1d8]
test rdx, rdx
jne 0x140063e72
jmp 0x140064e7a
test rbp, rbp
jne 0x1400638f4
xor ebp, ebp
mov rax, qword [0x1400dd1c8]
test rax, rax
jne 0x140063903
mov rax, qword [0x1400cd318]
movzx eax, byte [rax]
mov ecx, 0x8c0
mov edx, 8
call fcn.140010800
test rax, rax
je 0x14006539b
mov qword [rsp + 0x40], rax
mov qword [rsp + 0xb8], 8
xorps xmm0, xmm0
movups xmmword [rsp + 0xc0], xmm0
mov ecx, 8
xor edx, edx
call sub.KERNEL32.dll_CreateToolhelp32Snapshot
cmp rax, 0xffffffffffffffff
je 0x140063d13
mov rbx, rax
mov qword [rsp + 0x38], rbp
lea rsi, [rsp + 0x680]
mov r8d, 0x438
mov rcx, rsi
xor edx, edx
call sub.msvcrt.dll_memset
mov dword [rsp + 0x680], 0x438
mov rcx, rbx
mov rdx, rsi
call sub.KERNEL32.dll_Module32FirstW
cmp eax, 1
jne 0x140063d06
lea r15, [rsp + 0xab8]
mov eax, 8
mov qword [rsp + 0x30], rax
xor r14d, r14d
jmp 0x140063a69
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
sub rcx, rax
mov rax, r14
shl rax, 6
mov qword [r8 + rax], rcx
mov qword [r8 + rax + 8], rsi
mov qword [r8 + rax + 0x10], 1
mov qword [r8 + rax + 0x18], 1
mov qword [r8 + rax + 0x20], rdi
mov rcx, qword [rsp + 0x28]
mov qword [r8 + rax + 0x28], rcx
mov qword [r8 + rax + 0x30], r13
mov byte [r8 + rax + 0x38], bpl
mov ecx, dword [rsp + 0x220]
mov edx, dword [rsp + 0x223]
mov dword [r8 + rax + 0x39], ecx
mov qword [rsp + 0x30], r8
mov dword [r8 + rax + 0x3c], edx
inc r14
mov qword [rsp + 0xc8], r14
nop dword [rax + rax]
mov rcx, rbx
lea rdx, [rsp + 0x680]
call sub.KERNEL32.dll_Module32NextW
cmp eax, 1
jne 0x140063d06
xor r8d, r8d
nop dword [rax]
cmp word [rsp + r8*2 + 0x8b0], 0
je 0x140063ad0
lea rax, [rsp + r8*2]
add rax, 0x8b0
cmp word [rax + 2], 0
je 0x140063ab7
cmp word [rax + 4], 0
je 0x140063abc
cmp word [rax + 6], 0
je 0x140063ac2
cmp word [rax + 8], 0
je 0x140063ac8
add r8, 5
add rax, 0xa
cmp rax, r15
jne 0x140063a70
mov r8d, 0x104
jmp 0x140063ad0
inc r8
jmp 0x140063ad0
add r8, 2
jmp 0x140063ad0
add r8, 3
jmp 0x140063ad0
add r8, 4
nop dword [rax]
lea rcx, [rsp + 0x450]
lea rdx, [rsp + 0x8b0]
call fcn.14003ee90
mov rdi, qword [rsp + 0x450]
mov r13, qword [rsp + 0x460]
lea rcx, [rsp + 0x220]
mov rdx, rdi
mov r8, r13
call fcn.140063660
cmp qword [rsp + 0x220], 0
je 0x140063c10
mov r12, qword [rsp + 0x228]
mov rbp, qword [rsp + 0x230]
mov rsi, qword [rsp + 0x238]
mov r9d, 0x40
mov rcx, rbp
mov rdx, rsi
xor r8d, r8d
call fcn.1400668f0
test rax, rax
je 0x140063c00
cmp rdx, 0x40
jb 0x140063c00
movzx ecx, word [rax]
cmp ecx, 0x5a4d
jne 0x140063c00
mov r8d, dword [rax + 0x3c]
mov r9d, 0x88
mov rcx, rbp
mov rdx, rsi
mov qword [rsp + 0x28], r8
call fcn.1400668f0
test rax, rax
je 0x140063c00
cmp rdx, 0x88
jb 0x140063c00
cmp dword [rax], 0x4550
jne 0x140063c00
movzx ecx, word [rax + 0x18]
cmp ecx, 0x20b
jne 0x140063c00
movzx r9d, word [rax + 0x14]
cmp r9, 0x70
jb 0x140063c00
mov r8, qword [rsp + 0x28]
add r8, 0x88
add r9, 0xffffffffffffff90
mov qword [rsp + 0x28], rax
mov rcx, rbp
mov rdx, rsi
call fcn.1400668f0
mov rcx, qword [rsp + 0x28]
test rax, rax
je 0x140063c00
mov r8, rdx
mov r9d, dword [rcx + 0x84]
lea rcx, [rsp + 0x220]
mov rdx, rax
call fcn.1400678f0
mov rax, qword [rsp + 0x28]
cmp qword [rsp + 0x220], 0
je 0x140063c34
mov rcx, rbp
call sub.KERNEL32.dll_UnmapViewOfFile
mov rcx, r12
call sub.KERNEL32.dll_CloseHandle
mov rdx, qword [rsp + 0x458]
test rdx, rdx
je 0x140063a50
mov r8d, 1
mov rcx, rdi
call fcn.140010810
jmp 0x140063a50
mov rsi, qword [rax + 0x30]
mov rax, qword [rsp + 0x698]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x458]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400cd318]
movzx eax, byte [rax]
mov ecx, 0x10
mov edx, 8
call fcn.140010800
test rax, rax
je 0x1400653ba
mov ecx, dword [rsp + 0x6a0]
mov qword [rsp + 0x50], rsi
mov qword [rax], rsi
mov rsi, rax
mov qword [rax + 8], rcx
movzx edx, byte [rsp + 0x468]
lea rcx, [rsp + 0x469]
mov eax, dword [rcx]
mov ecx, dword [rcx + 3]
mov dword [rsp + 0x220], eax
mov dword [rsp + 0x223], ecx
mov rcx, rbp
mov ebp, edx
call sub.KERNEL32.dll_UnmapViewOfFile
mov rcx, r12
call sub.KERNEL32.dll_CloseHandle
cmp bpl, 2
je 0x140063a50
cmp r14, qword [rsp + 0xc0]
mov r8, qword [rsp + 0x30]
jne 0x1400639d8
lea rcx, [rsp + 0xb8]
mov rdx, r14
call fcn.14001d0d0
mov rax, qword [rsp + 0x50]
mov r8, qword [rsp + 0xb8]
mov r14, qword [rsp + 0xc8]
jmp 0x1400639dd
mov rcx, rbx
call sub.KERNEL32.dll_CloseHandle
mov rbp, qword [rsp + 0x38]
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x690], rax
movups xmm0, xmmword [rsp + 0xb8]
movaps xmmword [rsp + 0x680], xmm0
mov rsi, qword [0x1400dd1c8]
test rsi, rsi
je 0x140063e1b
mov rdi, qword [0x1400dd1d8]
test rdi, rdi
je 0x140063d9e
lea rbx, [rsi + 0x28]
jmp 0x140063d69
add rbx, 0x40
dec rdi
je 0x140063d9e
mov rdx, qword [rbx]
test rdx, rdx
je 0x140063d80
mov rcx, qword [rbx - 8]
mov r8d, 1
call fcn.140010810
mov rdx, qword [rbx - 0x18]
test rdx, rdx
je 0x140063d60
mov rcx, qword [rbx - 0x20]
shl rdx, 4
mov r8d, 8
call fcn.140010810
jmp 0x140063d60
mov rdx, qword [0x1400dd1d0]
test rdx, rdx
je 0x140063dbc
shl rdx, 6
mov r8d, 8
mov rcx, rsi
call fcn.140010810
mov rsi, qword [0x1400dd1e0]
mov rbx, qword [0x1400dd1f0]
lea rcx, [rsi + 8]
inc rbx
nop word cs:[rax + rax]
cmp rbx, 1
je 0x140063dfa
lea rdi, [rcx + 0x230]
dec rbx
call fcn.1400139f0
mov rcx, rdi
jmp 0x140063de0
mov rax, qword [0x1400dd1e8]
test rax, rax
je 0x140063e1b
imul rdx, rax, 0x230
mov r8d, 8
mov rcx, rsi
call fcn.140010810
mov rax, qword [rsp + 0x690]
mov qword [0x1400dd1d8], rax
movaps xmm0, xmmword [rsp + 0x680]
movups xmmword [0x1400dd1c8], xmm0
mov rax, qword [rsp + 0x40]
mov qword [0x1400dd1e0], rax
mov qword [0x1400dd1e8], 4
mov qword [0x1400dd1f0], 0
mov rax, qword [0x1400dd1c8]
mov rdx, qword [0x1400dd1d8]
test rdx, rdx
je 0x140064e7a
mov rcx, rdx
shl rcx, 6
add rcx, rax
xor esi, esi
mov r8, rax
mov rbx, 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 0x140063ed0
mov r11, r10
add r10, 0x10
mov rdi, qword [r11]
add rdi, rbx
add r9, 0xfffffffffffffff0
cmp rdi, rbp
ja 0x140063ea0
add rdi, qword [r11 + 8]
cmp rdi, rbp
jbe 0x140063ea0
jmp 0x140063edd
inc rsi
cmp r8, rcx
jne 0x140063e81
jmp 0x140064e7a
mov r14, qword [0x1400dd1f0]
test r14, r14
je 0x140063f19
mov r12, qword [0x1400dd1e0]
imul rdi, r14, 0x230
xor ecx, ecx
xor r15d, r15d
nop dword [rax]
cmp qword [r12 + r15], rsi
je 0x1400640e8
add r15, 0x230
dec rcx
cmp rdi, r15
jne 0x140063f00
cmp rdx, rsi
jbe 0x140064f8a
mov rcx, rsi
shl rcx, 6
mov rdx, qword [rax + rcx + 0x20]
mov r8, qword [rax + rcx + 0x30]
lea rcx, [rsp + 0x680]
call fcn.140063660
cmp qword [rsp + 0x680], 0
je 0x140064e7a
mov r14, qword [rsp + 0x688]
mov r15, qword [rsp + 0x690]
mov r12, qword [rsp + 0x698]
mov qword [rsp + 0x140], 8
xorps xmm0, xmm0
movups xmmword [rsp + 0x148], xmm0
mov qword [rsp + 0x158], 8
movups xmmword [rsp + 0x160], xmm0
mov r9d, 0x40
mov rcx, r15
mov rdx, r12
xor r8d, r8d
call fcn.1400668f0
test rax, rax
je 0x1400640c6
cmp rdx, 0x40
jb 0x1400640c6
movzx ecx, word [rax]
cmp ecx, 0x5a4d
jne 0x1400640c6
mov edi, dword [rax + 0x3c]
mov r9d, 0x88
mov rcx, r15
mov rdx, r12
mov r8, rdi
call fcn.1400668f0
mov r13, rax
test rax, rax
je 0x1400640c6
cmp rdx, 0x88
jb 0x1400640c6
cmp dword [r13], 0x4550
jne 0x1400640c6
movzx eax, word [r13 + 0x18]
cmp eax, 0x20b
jne 0x1400640c6
movzx r9d, word [r13 + 0x14]
cmp r9, 0x70
jb 0x1400640c6
add rdi, 0x88
add r9, 0xffffffffffffff90
mov rcx, r15
mov rdx, r12
mov r8, rdi
mov qword [rsp + 0x38], r9
call fcn.1400668f0
test rax, rax
je 0x1400640c6
mov r8, rdx
mov r9d, dword [r13 + 0x84]
lea rcx, [rsp + 0xb8]
mov rdx, rax
call fcn.1400678f0
cmp qword [rsp + 0xb8], 0
mov r8, qword [rsp + 0x38]
jne 0x1400640c6
add r8, rdi
movzx edi, word [r13 + 6]
lea rax, [rdi*8]
lea r9, [rax + rax*4]
mov rcx, r15
mov rdx, r12
mov qword [rsp + 0x38], r9
call fcn.1400668f0
test rax, rax
sete cl
cmp qword [rsp + 0x38], rdx
seta dl
xor r8d, r8d
or dl, cl
mov ecx, 0x1f
cmovne rdi, rcx
mov qword [rsp + 0x38], rdi
cmove r8, rax
mov qword [rsp + 0x40], r8
je 0x140064ec5
lea rcx, [rsp + 0x140]
call fcn.140013b40
mov rcx, r15
call sub.KERNEL32.dll_UnmapViewOfFile
mov rcx, r14
call sub.KERNEL32.dll_CloseHandle
jmp 0x140064e7a
test rcx, rcx
je 0x140064189
lea rsi, [r12 + r15]
lea rcx, [rsp + 0x220]
mov r8d, 0x230
mov rdx, rsi
call sub.msvcrt.dll_memcpy
lea rdx, [r12 + r15]
add rdx, 0x230
sub rdi, r15
add rdi, 0xfffffffffffffdd0
mov rcx, rsi
mov r8, rdi
call sub.msvcrt.dll_memmove
lea rsi, [r14 - 1]
mov qword [0x1400dd1f0], rsi
cmp rsi, qword [0x1400dd1e8]
jne 0x140064155
lea rcx, [0x1400dd1e0]
mov rdx, rsi
call fcn.14001dc90
mov r12, qword [0x1400dd1e0]
lea rcx, [r12 + 0x230]
imul r8, rsi, 0x230
mov rdx, r12
call sub.msvcrt.dll_memmove
lea rdx, [rsp + 0x220]
mov r8d, 0x230
mov rcx, r12
call sub.msvcrt.dll_memcpy
mov qword [0x1400dd1f0], r14
sub rbp, rbx
mov qword [rsp + 0x38], rbp
lea rbx, [rbp + 1]
mov r14, qword [r12 + 0x160]
mov rdx, qword [r12 + 0x168]
xor ecx, ecx
test rdx, rdx
je 0x140064209
mov r8d, 0xff
mov rax, rdx
mov r9, rdx
jmp 0x1400641c8
mov r9, rax
sub rax, rcx
jbe 0x140064209
shr rax, 1
add rax, rcx
mov r11, rax
shl r11, 5
xor r10d, r10d
cmp qword [r14 + r11], rbx
setne r10b
cmovb r10d, r8d
cmp r10b, 1
je 0x1400641c0
movzx ecx, r10b
inc rax
cmp ecx, 0xff
jne 0x140064206
mov rcx, rax
mov rax, r9
sub rax, rcx
ja 0x1400641c8
jmp 0x140064209
mov rcx, rax
cmp rcx, rdx
ja 0x1400653ac
mov eax, 3
test rcx, rcx
mov qword [rsp + 0x80], r12
je 0x1400643ad
mov r8, r12
lea rsi, [r12 + 0x158]
shl rcx, 5
lea r15, [rcx + r14]
add r15, 0xffffffffffffffe0
neg rcx
mov rdx, qword [rsp + 0x38]
jmp 0x14006425e
add r15, 0xffffffffffffffe0
add rcx, 0x20
je 0x1400643aa
cmp qword [r15 + 0x18], rdx
jbe 0x140064398
cmp qword [r15 + 8], rdx
jbe 0x140064250
cmp rbx, qword [r15]
jbe 0x140064250
mov rcx, qword [r15 + 0x10]
mov rdx, qword [r8 + 0x178]
cmp rcx, rdx
jae 0x140065343
imul rdi, rcx, 0x218
add rdi, qword [r8 + 0x170]
lea rcx, [rsp + 0x220]
mov rdx, rdi
mov r8, rsi
call fcn.140028d30
mov qword [rsp + 0xb8], rdi
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xc0], rsi
cmp qword [rsp + 0x250], 0
je 0x140064630
lea rax, [rsp + 0x250]
movups xmm0, xmmword [rsp + 0x220]
movups xmm1, xmmword [rsp + 0x230]
movups xmm2, xmmword [rsp + 0x240]
movaps xmmword [rsp + 0x6a0], xmm2
movaps xmmword [rsp + 0x690], xmm1
movaps xmmword [rsp + 0x680], xmm0
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x460], rcx
movups xmm0, xmmword [rax]
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x468], rax
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x470], rax
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x478], rax
movaps xmmword [rsp + 0x6b0], xmm0
mov rax, qword [rsp + 0x460]
mov qword [rsp + 0x6c0], rax
mov rax, qword [rsp + 0x468]
mov qword [rsp + 0x6c8], rax
mov rax, qword [rsp + 0x470]
mov qword [rsp + 0x6d0], rax
mov rax, qword [rsp + 0x478]
mov qword [rsp + 0x6d8], rax
jmp 0x140064659
mov r12, r8
cmp eax, 5
mov rdi, qword [rsp + 0x38]
jne 0x1400643bb
jmp 0x140064e25
mov r12, r8
cmp eax, 5
mov rdi, qword [rsp + 0x38]
je 0x140064e25
mov rcx, qword [rsp + 0x258]
mov qword [rsp + 0x70], rcx
mov rcx, qword [rsp + 0x260]
mov qword [rsp + 0x60], rcx
lea rcx, [rcx*8]
mov qword [rsp + 0x68], rcx
lea ecx, [rax - 3]
cmp ecx, 2
mov edx, 2
cmovb edx, ecx
test edx, edx
je 0x140064525
mov r8d, dword [rsp + 0x224]
mov esi, dword [rsp + 0x228]
mov r10d, dword [rsp + 0x22c]
mov r9, qword [rsp + 0x230]
mov qword [rsp + 0x28], r9
mov r9, qword [rsp + 0x238]
mov qword [rsp + 0x30], r9
mov r14, qword [rsp + 0x240]
mov r9, qword [rsp + 0x248]
mov qword [rsp + 0x118], r9
mov r9, qword [rsp + 0x250]
mov r11, qword [rsp + 0x268]
mov qword [rsp + 0x98], r11
mov r11, qword [rsp + 0x270]
mov qword [rsp + 0x50], r11
lea r11, [r14 + 0x60]
mov qword [rsp + 0x90], r11
lea r11, [r14 + 0x1b8]
mov qword [rsp + 0x88], r11
lea r11, [r14 + 0x1c0]
mov qword [rsp + 0x120], r11
mov r11, qword [rsp + 0x80]
add r11, 0x190
mov qword [rsp + 0xa0], r11
cmp edx, 1
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x138], r9
jne 0x14006452c
mov qword [rsp + 0x78], r8
mov qword [rsp + 0x58], r10
mov rbp, r10
shl rbp, 0x20
or rbp, rsi
mov eax, 2
mov qword [rsp + 0x40], rax
mov esi, 3
cmp ecx, 2
jb 0x1400644fe
cmp qword [rsp + 0x60], 0
je 0x1400644fe
mov r8d, 8
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x68]
call fcn.140010810
mov r12, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x28]
mov rcx, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0x38]
call fcn.140065880
mov rdi, rax
mov r15, rdx
jmp 0x140064a53
xor esi, esi
jmp 0x140064df6
mov eax, eax
mov rbp, r8
shl rbp, 0x20
or rbp, rax
mov rbx, r10
shl rbx, 0x20
or rbx, rsi
mov rax, qword [rsp + 0x50]
cmp rax, qword [rsp + 0x98]
je 0x14006460d
mov r14, qword [rax - 8]
mov eax, dword [r14 + 0x28]
mov ecx, dword [r14 + 0x2c]
xor esi, esi
mov qword [rsp + 0x78], rax
test eax, eax
setne dil
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x58], rcx
test ecx, ecx
setne r15b
cmp qword [r14], 0
je 0x140064a16
mov rax, qword [rsp + 0x90]
cmp dword [rax], 0x2f
je 0x140064a16
mov r13, qword [r14 + 8]
mov rax, qword [rsp + 0x48]
cmp qword [rax + 0x1b0], 0
jne 0x1400649c0
lea rcx, [rsp + 0x680]
mov rdx, qword [rsp + 0x90]
call fcn.140027f60
mov r12, qword [rsp + 0x48]
lea rcx, [rsp + 0x220]
lea r8, [rsp + 0x680]
mov rdx, r12
mov r9, qword [rsp + 0x118]
call fcn.14002ca10
cmp qword [r12 + 0x1b0], 0
je 0x140064995
lea rcx, [rsp + 0x220]
call fcn.140013ec0
jmp 0x1400649c0
mov rdi, qword [r9 + 0x28]
test rdi, rdi
je 0x140064938
mov r15, qword [r9 + 0x30]
mov rax, qword [rsp + 0x48]
movzx r13d, word [rax + 0x210]
jmp 0x14006493d
lea rcx, [rsp + 0x680]
lea rdx, [rsp + 0xb8]
lea r8, [rsp + 0x220]
call fcn.1400290c0
mov qword [rsp + 0x6b0], 0
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x450], rax
mov qword [rsp + 0x458], rdi
mov qword [rsp + 0x460], rsi
mov qword [rsp + 0x468], rsi
mov qword [rsp + 0x470], rax
mov qword [rsp + 0x478], rbx
mov qword [rsp + 0x480], r14
mov qword [rsp + 0x488], r15
mov qword [rsp + 0x490], rbx
mov qword [rsp + 0x498], rax
mov byte [rsp + 0x4a0], 0
lea rcx, [rsp + 0x220]
lea rdx, [rsp + 0x680]
lea r8, [rsp + 0x450]
call fcn.14002c320
cmp byte [rsp + 0x2d0], 2
je 0x140064916
lea rbx, [rsp + 0x181]
lea rdi, [rsp + 0x698]
lea r14, [rsp + 0x480]
lea r15, [rsp + 0x450]
lea r12, [rsp + 0x680]
lea r13, [rsp + 0xb8]
lea rbp, [rsp + 0x170]
lea rsi, [rsp + 0x220]
nop word cs:[rax + rax]
movups xmm0, xmmword [rsp + 0x220]
movups xmm1, xmmword [rsp + 0x230]
movups xmm2, xmmword [rsp + 0x240]
movaps xmmword [rsp + 0x6a0], xmm2
movaps xmmword [rsp + 0x690], xmm1
movaps xmmword [rsp + 0x680], xmm0
mov r8d, 0x88
mov rcx, r15
lea rdx, [rsp + 0x250]
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x680]
lock dec qword [rax]
jne 0x14006478c
mov rcx, r12
call fcn.14001cdc0
movups xmm0, xmmword [rsp + 0x450]
movups xmm1, xmmword [rsp + 0x460]
movups xmm2, xmmword [rsp + 0x470]
movaps xmmword [rsp + 0x680], xmm0
movaps xmmword [rsp + 0x690], xmm1
movaps xmmword [rsp + 0x6a0], xmm2
mov rax, qword [rsp + 0x680]
mov rcx, qword [rsp + 0x690]
movzx edx, byte [rax + 0x200]
cmp edx, 0x4b
je 0x1400647f1
cmp edx, 0x4c
jne 0x14006481d
mov byte [rax + 0x200], 0x4b
mov qword [rax + 0x208], 0
jmp 0x14006480f
mov r8, qword [rax + 0x208]
test r8, r8
je 0x14006480f
mov rcx, qword [r8]
add rcx, 0x10
add r8, 8
mov dl, 2
mov rax, r8
jmp 0x140064818
mov rcx, qword [rcx]
add rcx, 0x10
xor edx, edx
xor r8d, r8d
jmp 0x14006484d
mov rcx, qword [rax + 0x200]
movzx edx, byte [rax + 0x208]
mov r8d, dword [rax + 0x20c]
mov dword [rsp + 0xbb], r8d
mov eax, dword [rax + 0x209]
mov dword [rsp + 0xb8], eax
mov r8d, 1
mov r9d, dword [rsp + 0xb8]
mov r10d, dword [rsp + 0xbb]
mov dword [rbx + 3], r10d
mov dword [rbx], r9d
mov qword [rsp + 0x170], r8
mov qword [rsp + 0x178], rcx
mov byte [rsp + 0x180], dl
mov qword [rsp + 0x188], rax
mov rcx, r13
mov rdx, rdi
mov r8, rbp
call fcn.1400290c0
mov qword [rsp + 0xe8], 0
mov rax, qword [r14 + 0x50]
mov qword [rsp + 0x1c0], rax
movups xmm0, xmmword [r14 + 0x40]
movaps xmmword [rsp + 0x1b0], xmm0
movups xmm0, xmmword [r14]
movups xmm1, xmmword [r14 + 0x10]
movups xmm2, xmmword [r14 + 0x20]
movups xmm3, xmmword [r14 + 0x30]
movaps xmmword [rsp + 0x1a0], xmm3
movaps xmmword [rsp + 0x190], xmm2
movaps xmmword [rsp + 0x180], xmm1
movaps xmmword [rsp + 0x170], xmm0
mov rcx, r12
mov rdx, r13
mov r8, rbp
call fcn.14002c320
mov r8d, 0xb8
mov rcx, rsi
mov rdx, r12
call sub.msvcrt.dll_memcpy
cmp byte [rsp + 0x2d0], 2
jne 0x140064730
mov eax, dword [rsp + 0x220]
mov r12, qword [rsp + 0x80]
cmp eax, 5
mov rdi, qword [rsp + 0x38]
jne 0x1400643bb
jmp 0x140064e25
mov r13w, 2
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x58], r10
mov qword [rsp + 0x78], r8
cmp qword [rsp + 0x60], 0
je 0x140064969
mov r8d, 8
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x68]
call fcn.140010810
mov esi, 3
mov r14, qword [rsp + 0x30]
mov r12, qword [rsp + 0x28]
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x50], rax
cmp r13w, 2
je 0x140064508
jmp 0x140064a53
movups xmm0, xmmword [rsp + 0x220]
movups xmm1, xmmword [rsp + 0x230]
mov rax, qword [rsp + 0x88]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
mov qword [r12 + 0x1b0], 1
xor ecx, ecx
mov rax, qword [rsp + 0x88]
cmp qword [rax], 0
cmove rax, qword [rsp + 0x120]
mov edx, 1
cmove rcx, rdx
test rcx, rcx
je 0x1400649f2
cmp byte [rax], 0x4b
jne 0x140064ead
mov rax, qword [rax + 8]
test rax, rax
je 0x140064a16
cmp r13, qword [rax + 8]
jae 0x140064a16
mov rcx, qword [rax]
lea rdx, [r13*2]
add rdx, r13
mov rax, qword [rcx + rdx*8]
mov rcx, qword [rcx + rdx*8 + 0x10]
jmp 0x140064a18
xor eax, eax
add qword [rsp + 0x50], 0xfffffffffffffff8
mov sil, dil
mov rdx, qword [rsp + 0x40]
mov dl, r15b
mov qword [rsp + 0x40], rdx
mov rdi, qword [r14 + 0x18]
test rdi, rdi
je 0x140064e8f
mov r15, qword [r14 + 0x20]
mov r14, qword [rsp + 0x30]
mov r12, qword [rsp + 0x28]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x680], rbp
mov qword [rsp + 0x688], rbx
mov qword [rsp + 0x690], r12
mov qword [rsp + 0x698], r14
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x6a0], rax
mov qword [rsp + 0x6a8], rdi
mov qword [rsp + 0x6b0], r15
mov rax, qword [rsp + 0x128]
mov rax, qword [rax + 0x20]
lea rdx, [rsp + 0x680]
mov rcx, qword [rsp + 0xb0]
mov qword [rsp + 0xa8], rax
call rax
jmp 0x140064b24
mov r15, qword [r15 + 0x20]
mov r12, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x28]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x680], rbx
mov qword [rsp + 0x688], r14
mov qword [rsp + 0x690], rbp
mov qword [rsp + 0x698], r12
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x6a0], rax
mov qword [rsp + 0x6a8], rdi
mov qword [rsp + 0x6b0], r15
mov rcx, qword [rsp + 0xb0]
lea rdx, [rsp + 0x680]
call qword [rsp + 0xa8]
lea ecx, [rsi - 3]
cmp ecx, 2
mov eax, 2
cmovb eax, ecx
cmp eax, 1
je 0x140064c40
cmp eax, 2
jne 0x140064dee
mov eax, esi
mov rbx, qword [rsp + 0x78]
shl rbx, 0x20
or rbx, rax
mov eax, dword [rsp + 0x40]
mov r14, qword [rsp + 0x58]
shl r14, 0x20
or r14, rax
mov rax, qword [rsp + 0x50]
cmp rax, qword [rsp + 0x98]
je 0x140064cad
mov r15, qword [rax - 8]
mov eax, dword [r15 + 0x28]
mov ecx, dword [r15 + 0x2c]
xor esi, esi
mov qword [rsp + 0x78], rax
test eax, eax
setne dil
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x58], rcx
test ecx, ecx
setne bpl
cmp qword [r15], 0
je 0x140064db0
mov rax, qword [rsp + 0x90]
cmp dword [rax], 0x2f
je 0x140064db0
mov rax, qword [r15 + 8]
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0x48]
cmp qword [rax + 0x1b0], 0
jne 0x140064d52
lea r13, [rsp + 0x680]
mov rcx, r13
mov rdx, qword [rsp + 0x90]
call fcn.140027f60
mov r12, qword [rsp + 0x48]
lea rcx, [rsp + 0x220]
mov rdx, r12
mov r8, r13
mov r9, qword [rsp + 0x118]
call fcn.14002ca10
cmp qword [r12 + 0x1b0], 0
je 0x140064d27
lea rcx, [rsp + 0x220]
call fcn.140013ec0
jmp 0x140064d52
mov eax, dword [rsp + 0x40]
mov rbx, qword [rsp + 0x58]
shl rbx, 0x20
or rbx, rax
mov eax, 2
mov qword [rsp + 0x40], rax
mov esi, 3
cmp ecx, 2
jb 0x140064c81
cmp qword [rsp + 0x60], 0
je 0x140064c81
mov r8d, 8
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x68]
call fcn.140010810
mov r12, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x30]
mov r14, qword [rsp + 0x28]
mov rcx, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0x38]
call fcn.140065880
mov rdi, rax
mov r15, rdx
jmp 0x140064ad0
mov rax, qword [rsp + 0x138]
mov rdi, qword [rax + 0x28]
test rdi, rdi
je 0x140064d18
mov r15, qword [rax + 0x30]
mov rax, qword [rsp + 0x48]
movzx r13d, word [rax + 0x210]
cmp qword [rsp + 0x60], 0
je 0x140064cec
mov r8d, 8
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x68]
call fcn.140010810
mov esi, 3
mov r12, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x28]
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x50], rax
cmp r13w, 2
jne 0x140064ad0
jmp 0x140064c90
mov r13w, 2
cmp qword [rsp + 0x60], 0
jne 0x140064cd7
jmp 0x140064cec
movups xmm0, xmmword [rsp + 0x220]
movups xmm1, xmmword [rsp + 0x230]
mov rax, qword [rsp + 0x88]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
mov qword [r12 + 0x1b0], 1
mov rax, qword [rsp + 0x88]
cmp qword [rax], 0
cmove rax, qword [rsp + 0x120]
mov ecx, 0
mov edx, 1
cmove rcx, rdx
test rcx, rcx
je 0x140064d87
cmp byte [rax], 0x4b
jne 0x140064ea8
mov rax, qword [rax + 8]
test rax, rax
je 0x140064db0
mov rdx, qword [rsp + 0x130]
cmp rdx, qword [rax + 8]
jae 0x140064db0
mov rcx, qword [rax]
lea rdx, [rdx + rdx*2]
mov rax, qword [rcx + rdx*8]
mov rcx, qword [rcx + rdx*8 + 0x10]
jmp 0x140064db2
xor eax, eax
add qword [rsp + 0x50], 0xfffffffffffffff8
mov sil, dil
mov rdx, qword [rsp + 0x40]
mov dl, bpl
mov qword [rsp + 0x40], rdx
mov rdi, qword [r15 + 0x18]
test rdi, rdi
jne 0x140064ab8
mov r12, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x28]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], rcx
jmp 0x140064c90
mov sil, 1
mov rdi, qword [rsp + 0x38]
cmp ecx, 2
jb 0x140064e18
cmp qword [rsp + 0x60], 0
je 0x140064e18
mov r8d, 8
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x68]
call fcn.140010810
test sil, sil
mov r12, qword [rsp + 0x80]
jne 0x140064e7a
add r12, 0x190
mov rcx, r12
mov rdx, rdi
call fcn.140065880
test rax, rax
je 0x140064e7a
mov dword [rsp + 0x680], 3
mov qword [rsp + 0x688], rax
mov qword [rsp + 0x690], rdx
mov qword [rsp + 0x698], rdi
lea rdx, [rsp + 0x680]
mov rcx, qword [rsp + 0xb0]
mov rax, qword [rsp + 0x128]
call qword [rax + 0x20]
nop
add rsp, 0xab8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov r14, qword [rsp + 0x30]
mov r12, qword [rsp + 0x28]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], rcx
jmp 0x140064508
mov sil, 1
jmp 0x140064eaf
xor esi, esi
cmp qword [rsp + 0x60], 0
mov rdi, qword [rsp + 0x38]
jne 0x140064e03
jmp 0x140064e18
mov edi, dword [r13 + 0xc]
test rdi, rdi
je 0x140065093
mov eax, dword [r13 + 0x10]
mov qword [rsp + 0x58], rax
add rax, rax
lea r9, [rax + rax*8]
mov rcx, r15
mov rdx, r12
mov r8, rdi
mov qword [rsp + 0x30], r9
call fcn.1400668f0
mov qword [rsp + 0x28], rax
test rax, rax
je 0x1400640c6
cmp qword [rsp + 0x30], rdx
ja 0x1400640c6
mov r8, qword [rsp + 0x30]
add r8, rdi
mov r9d, 4
mov rcx, r15
mov rdx, r12
mov qword [rsp + 0x30], r8
call fcn.1400668f0
test rax, rax
je 0x1400640c6
cmp rdx, 4
jb 0x1400640c6
mov eax, dword [rax]
add rax, qword [rsp + 0x30]
mov qword [rsp + 0x48], rax
mov rax, qword [r13 + 0x30]
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0xb8], 8
xorps xmm0, xmm0
movups xmmword [rsp + 0xc0], xmm0
cmp qword [rsp + 0x58], 0
je 0x140065351
mov eax, 8
xor edx, edx
xor edi, edi
mov r13, qword [rsp + 0x38]
jmp 0x140064fe9
lea r8, [0x1400b1478]
mov rcx, rsi
call fcn.1400915b0
ud2
mov r10, qword [rsp + 0x50]
add r13, qword [rsp + 0xa0]
mov r8, qword [rsp + 0x78]
add r8, r13
mov rcx, rdx
shl rcx, 4
mov qword [rax + rcx], r8
mov r8, qword [rsp + 0xa8]
mov qword [rax + rcx + 8], r8
inc rdx
mov qword [rsp + 0xc8], rdx
mov r13, qword [rsp + 0x38]
add rdi, r10
inc rdi
cmp rdi, qword [rsp + 0x58]
jae 0x1400650d5
lea rcx, [rdi + rdi*8]
mov r9, qword [rsp + 0x28]
movzx r10d, byte [r9 + rcx*2 + 0x11]
movzx r8d, word [r9 + rcx*2 + 0xc]
test r8, r8
je 0x140064fd8
movzx r9d, word [r9 + rcx*2 + 0xe]
and r9d, 0x30
cmp r9w, 0x20
jne 0x140064fd8
mov qword [rsp + 0x50], r10
dec r8
lea r9, [r8 + r8*4]
mov r10, qword [rsp + 0x40]
lea r9, [r10 + r9*8]
cmp r8, r13
mov r8d, 0x1d
cmovae r9, r8
jae 0x14006536e
test r9, r9
je 0x14006536e
mov r8, qword [rsp + 0x28]
lea rcx, [r8 + rcx*2]
mov qword [rsp + 0xa8], rcx
mov r13d, dword [rcx + 8]
mov ecx, dword [r9 + 0xc]
mov qword [rsp + 0x78], rcx
cmp rdx, qword [rsp + 0xc0]
jne 0x140064f9b
lea rcx, [rsp + 0xb8]
call fcn.14001d4c0
mov rax, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0xc8]
jmp 0x140064f9b
mov qword [rsp + 0xb8], 8
xorps xmm0, xmm0
movups xmmword [rsp + 0xc0], xmm0
mov ecx, 8
xor eax, eax
mov qword [rsp + 0x48], rax
xor eax, eax
mov qword [rsp + 0x30], rax
xor edi, edi
xor edx, edx
mov r13, qword [rsp + 0x38]
test rdx, rdx
je 0x1400650e5
bsr rax, rdx
xor rax, 0x3f
jmp 0x1400650ea
mov rcx, qword [rsp + 0xb8]
mov rdi, r15
test rdx, rdx
jne 0x1400650cb
mov eax, 0x40
mov r9d, 0x40
sub r9d, eax
xor r8d, r8d
call fcn.140015140
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x1f8], rax
movups xmm0, xmmword [rsp + 0xb8]
movups xmmword [rsp + 0x1e8], xmm0
mov qword [rsp + 0x1c8], r15
mov qword [rsp + 0x1d0], r12
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x1d8], rax
mov qword [rsp + 0x1e0], r13
mov qword [rsp + 0x200], rdi
mov qword [rsp + 0x208], r12
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x210], rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x218], rax
mov qword [rsp + 0x170], 0
mov qword [rsp + 0xb8], 0
lea rcx, [rsp + 0x680]
lea rdx, [rsp + 0x1c8]
lea r8, [rsp + 0x170]
lea r9, [rsp + 0xb8]
call fcn.14005ef00
movzx edi, byte [rsp + 0x680]
cmp dil, 0x17
je 0x1400640c6
lea rdx, [rsp + 0x681]
lea rcx, [rsp + 0x451]
mov r8d, 0x1df
call sub.msvcrt.dll_memcpy
movups xmm0, xmmword [rsp + 0x140]
movups xmm1, xmmword [rsp + 0x150]
movups xmm2, xmmword [rsp + 0x160]
movups xmmword [rsp + 0x648], xmm0
movups xmmword [rsp + 0x658], xmm1
movups xmmword [rsp + 0x668], xmm2
mov byte [rsp + 0x450], dil
mov qword [rsp + 0x630], r14
mov qword [rsp + 0x638], r15
mov qword [rsp + 0x640], r12
mov r15, qword [0x1400dd1f0]
cmp r15, 4
jne 0x140065281
mov qword [0x1400dd1f0], 3
mov rdi, qword [0x1400dd1e8]
mov edx, 0x690
add rdx, qword [0x1400dd1e0]
lea rcx, [rsp + 0x680]
mov r8d, 0x230
call sub.msvcrt.dll_memcpy
cmp byte [rsp + 0x688], 0x17
je 0x140065279
lea rcx, [rsp + 0x688]
call fcn.1400139f0
mov r15d, 3
jmp 0x140065288
mov rdi, qword [0x1400dd1e8]
lea r14, [rsp + 0x688]
lea rdx, [rsp + 0x450]
mov r8d, 0x228
mov rcx, r14
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x680], rsi
cmp r15, rdi
jne 0x1400652c2
lea rcx, [0x1400dd1e0]
mov rdx, rdi
call fcn.14001dc90
mov r12, qword [0x1400dd1e0]
test r15, r15
je 0x14006531d
lea rcx, [r12 + 0x230]
imul r8, r15, 0x230
mov rdx, r12
call sub.msvcrt.dll_memmove
lea rdx, [rsp + 0x680]
mov r8d, 0x230
mov rcx, r12
call sub.msvcrt.dll_memcpy
inc r15
mov qword [0x1400dd1f0], r15
jne 0x140064189
lea r8, [0x1400b1490]
xor ecx, ecx
xor edx, edx
call fcn.1400915b0
ud2
lea rdx, [rsp + 0x680]
mov r8d, 0x230
mov rcx, r12
call sub.msvcrt.dll_memcpy
mov qword [0x1400dd1f0], 1
jmp 0x140064189
lea r8, str._rust_deps_addr2line_0.21.0_srclib.rs
call fcn.1400915b0
ud2
xor edx, edx
mov ecx, 8
mov rdi, r15
mov r13, qword [rsp + 0x38]
test rdx, rdx
jne 0x1400650cb
jmp 0x1400650e5
mov rdx, qword [rsp + 0xc0]
test rdx, rdx
je 0x1400640c6
mov rcx, qword [rsp + 0xb8]
shl rdx, 4
mov r8d, 8
call fcn.140010810
jmp 0x1400640c6
mov ecx, 8
mov edx, 0x8c0
call fcn.140082340
ud2
lea r8, str._rust_deps_addr2line_0.21.0_srclib.rs
call fcn.140097880
ud2
mov ecx, 8
mov edx, 0x10
call fcn.140082340
ud2