Function at 0x140018580
Capabilities:
Inspect section memory permissions
Resolve function by parsing pe exports
Terminate process

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xb0]
sub rsp, 0x1b0
mov rax, qword [0x140131c10]
xor rax, rsp
mov qword [rbp + 0xa0], rax
mov rax, rcx
mov qword [rbp + 0x30], rdx
mov rdi, rcx
lea r8, [rcx + 0xb0]
neg rax
sbb rcx, rcx
and rcx, r8
mov r8, rdx
mov rdx, rdi
mov rax, qword [rcx]
lea rcx, [rbp + 0x60]
mov qword [rbp - 0x28], rax
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], rax
call fcn.1400164d0
mov r14, qword [rbp + 0x70]
mov edx, 0x46
mov rcx, qword [rbp + 0x78]
mov qword [rsp + 0x50], r14
mov r13, qword [r14]
mov qword [rbp - 0x80], r13
call fcn.14003a238
lea rcx, [rbp + 0x60]
mov qword [rbp + 0x28], rax
call fcn.14003a6cc
mov rcx, qword [rbp + 0x78]
mov edx, 0x69
movzx ebx, ax
mov word [rsp + 0x48], bx
call fcn.14003a238
mov rcx, qword [rbp + 0x78]
xor r15d, r15d
test rax, rax
mov r11d, r15d
setne r11b
lea edx, [r15 + 0x6a]
call fcn.14003a238
mov ecx, ebx
lea edx, [r15 + 1]
test rax, rax
mov esi, r15d
mov eax, ebx
mov rbx, qword [rbp + 0x90]
setne sil
and ecx, edx
shr rbx, 0x2b
or esi, r11d
and ebx, edx
mov dword [rbp - 0x78], ecx
mov rcx, qword [rbp + 0x78]
lea edx, [r15 + 0x49]
and eax, 0x20
mov qword [rbp - 0x50], rbx
xor r11d, r11d
mov dword [rsp + 0x44], esi
mov dword [rbp - 0x30], r11d
mov dword [rsp + 0x64], eax
call fcn.14003a238
mov ecx, r11d
lea edx, [r15 + 0x3f]
test rax, rax
setne cl
mov dword [rsp + 0x38], ecx
mov rcx, qword [rbp + 0x78]
call fcn.14003a238
mov ecx, r11d
lea edx, [r15 + 0x50]
test rax, rax
setne cl
mov dword [rsp + 0x60], ecx
mov rcx, qword [rbp + 0x78]
call fcn.14003a238
mov rcx, qword [rbp + 0x78]
lea edx, [r15 + 0x66]
test rax, rax
mov r12d, r11d
setne r12b
call fcn.14003a238
test rax, rax
mov ecx, r11d
setne cl
mov dword [rbp - 0x38], ecx
lea edx, [r15 + 0x67]
mov rcx, qword [rbp + 0x78]
call fcn.14003a238
test rax, rax
mov ecx, r11d
mov rax, qword [rdi + 8]
setne cl
mov qword [rbp - 0x18], rax
mov dword [rbp - 0x34], ecx
mov rcx, rax
call fcn.14002eb54
lea edx, [r15 + 0x27]
movzx ecx, byte [rax + 0x18]
mov dword [rsp + 0x5c], ecx
mov rcx, qword [rbp + 0x78]
call fcn.14003a238
mov rcx, qword [rbp + 0x78]
lea edx, [r15 + 0x68]
mov qword [rbp + 0x20], rax
call fcn.14003a238
mov rcx, qword [rbp + 0x78]
lea edx, [r11 + 0x15]
mov r15, rax
call fcn.14003a238
mov rcx, qword [rbp + 0x78]
lea edx, [r11 + 0x16]
mov qword [rbp], rax
call fcn.14003a238
mov rcx, qword [rbp + 0x78]
lea edx, [r11 + 0x17]
mov qword [rbp + 0x38], rax
call fcn.14003a238
mov rcx, qword [rbp + 0x78]
lea edx, [r11 + 0x1a]
mov qword [rbp + 0x40], rax
call fcn.14003a238
mov rcx, qword [rbp + 0x78]
lea edx, [r11 + 0x1c]
mov qword [rbp + 0x48], rax
mov rax, qword [rbp + 0x90]
shr rax, 0x1e
and eax, 1
mov byte [rsp + 0x3c], r11b
mov qword [rbp - 0x58], rax
mov dword [rsp + 0x68], r11d
call fcn.14003a238
test rax, rax
je 0x1400187c0
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x818
mov rcx, rdi
call fcn.14003b748
xor r11d, r11d
mov rcx, qword [rbp + 0x78]
mov edx, 0x32
call fcn.14003a238
test rax, rax
jne 0x1400187c0
mov rcx, qword [rbp + 0x78]
lea edx, [rax + 0xc]
call fcn.14003a238
mov rcx, qword [rbp + 0x78]
mov edx, 0x3a
call fcn.14003a238
mov rcx, qword [0x140134380]
mov eax, dword [rcx]
shr eax, 4
xor eax, dword [rdi + 0xbc]
and eax, 0x400
xor dword [rdi + 0xbc], eax
test dword [rcx + 0x38], 0x40000000
je 0x14001882f
test ebx, ebx
je 0x14001882f
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x9d3
mov rcx, rdi
call fcn.14003b748
xor r11d, r11d
cmp dword [rsp + 0x60], r11d
je 0x140018857
cmp qword [r13 + 0x110], r11
je 0x140018857
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x9ec
mov rcx, rdi
call fcn.14003b748
xor r11d, r11d
test ebx, ebx
jne 0x1400188e2
lea r9, [0x14012cf68]
mov dword [rsp + 0x20], r11d
lea r8, [0x14012d4f8]
xor edx, edx
mov rcx, r13
call fcn.1400cbdc8
test rax, rax
je 0x140018887
mov rcx, qword [r13 + 0x40]
jmp 0x14001888e
lea rcx, [0x1400f48cb]
call fcn.14002c904
xor r11d, r11d
test eax, eax
je 0x1400188ae
cmp dword [rsp + 0x60], r11d
jne 0x1400188e2
mov rax, qword [r14 + 0x18]
cmp qword [rax + 0x210], r11
jne 0x1400188e2
mov rax, qword [0x140134380]
test dword [rax + 0x38], 0x20000000
je 0x1400188dd
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x9d3
mov rcx, rdi
call fcn.14003b748
mov rax, qword [0x140134380]
xor r11d, r11d
bts dword [rax + 0x38], 0x1e
mov rax, qword [rbp + 0x90]
mov ecx, 1
shr rax, 0x1c
test cl, al
je 0x140018938
lea edx, [rcx + 0x1c]
mov rcx, qword [rbp + 0x78]
call fcn.14003a238
test rax, rax
je 0x140018923
cmp dword [rax + 0x30], r11d
je 0x140018919
cmp qword [rax + 0x28], 0xffff
jle 0x140018938
jmp 0x140018923
cmp qword [rax + 0x20], 0xffff
jg 0x140018938
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x7e6
mov rcx, rdi
call fcn.14003b748
mov rcx, qword [rbp + 0x78]
xor eax, eax
mov r14b, al
mov byte [rsp + 0x30], al
mov byte [rsp + 0x34], al
mov ebx, eax
mov byte [rsp + 0x35], al
lea edx, [rax + 0x14]
call fcn.14003a238
mov r11, rax
test rax, rax
je 0x140018a41
mov esi, 1
lea r13d, [rsi + 3]
mov ecx, dword [r11 + 0x20]
cmp ecx, 9
jg 0x1400189d5
je 0x1400189b5
sub ecx, esi
je 0x1400189b5
sub ecx, esi
je 0x1400189b0
sub ecx, r13d
je 0x1400189a1
sub ecx, esi
je 0x140018997
cmp ecx, esi
jne 0x140018a1f
mov ebx, 7
jmp 0x14001899a
mov ebx, r13d
mov byte [rsp + 0x30], sil
jmp 0x140018a1f
mov ebx, r13d
mov byte [rsp + 0x30], sil
mov byte [rsp + 0x34], sil
jmp 0x140018a1f
mov r14b, sil
jmp 0x140018a1f
mov rax, qword [rbp + 0x90]
shr rax, 0x1c
test sil, al
je 0x140018a1f
mov rcx, r11
call fcn.14002d980
mov r8d, 0x99d
jmp 0x140018a10
cmp ecx, 0xb
jle 0x140018a02
cmp ecx, 0xc
je 0x1400189fb
cmp ecx, 0xd
je 0x140018a02
cmp ecx, 0x13
jne 0x140018a1f
mov rax, qword [rbp + 0x90]
shr rax, 0x1c
test sil, al
jne 0x140018a1f
jmp 0x1400189c5
mov byte [rsp + 0x35], sil
jmp 0x140018a1f
mov rcx, r11
call fcn.14002d980
mov r8d, 0x818
mov r9, rax
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
mov rcx, qword [rbp + 0x78]
mov edx, 0x14
call fcn.14003a238
mov r11, rax
test rax, rax
jne 0x14001896c
mov esi, dword [rsp + 0x44]
mov r13, qword [rbp - 0x80]
mov rcx, qword [rbp]
test rcx, rcx
je 0x140018ad6
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400cd70e.0]
lea r9, [0x14012cf68]
xor edx, edx
mov rsi, rax
lea r8, [0x14012d4f8]
xor eax, eax
mov rcx, rdi
mov dword [rsp + 0x20], eax
call fcn.1400cbdc8
test rax, rax
je 0x140018a87
mov rcx, qword [rdi + 0x40]
jmp 0x140018a8e
lea rcx, [0x1400f48cb]
mov rax, qword [rsi]
movsxd rbx, ebx
add rbx, rcx
mov rcx, rsi
mov rax, qword [rax + 0x98]
call qword [case.0x1400cd70e.0]
mov r8, rbx
mov rcx, r13
mov rdx, rax
call fcn.14001615c
xor ebx, ebx
test eax, eax
jne 0x140018ad0
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x7e5
mov rcx, rdi
call fcn.14003b748
mov esi, dword [rsp + 0x44]
jmp 0x140018ad8
xor ebx, ebx
test r14b, r14b
je 0x140018af8
cmp byte [rsp + 0x30], bl
jne 0x140018af8
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x82c
mov rcx, rdi
call fcn.14003b748
test r15, r15
je 0x140018b09
mov eax, 4
or dword [r13 + 0xec], eax
mov rcx, qword [rbp + 0x30]
mov rcx, qword [rcx]
mov rax, qword [rcx]
mov rax, qword [rax + 0x58]
call qword [case.0x1400cd70e.0]
mov r13d, ebx
lea rdx, [rbp - 0x74]
test eax, eax
mov rcx, rdi
sete r13b
call fcn.1400302d0
xor r11d, r11d
test eax, eax
jne 0x140018b51
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x8ea
mov rcx, rdi
call fcn.14003b748
xor r11d, r11d
mov rcx, qword [rbp + 0x78]
mov edx, 0x5c
call fcn.14003a238
mov rcx, qword [rbp + 0x78]
test rax, rax
mov ebx, r11d
mov edx, 0x5b
setne bl
call fcn.14003a238
test rax, rax
mov ecx, r11d
setne cl
mov dword [rbp - 0x60], ecx
test rax, rax
je 0x140018ba6
test ebx, ebx
je 0x140018baa
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x8ef
mov rcx, rdi
call fcn.14003b748
mov ecx, dword [rbp - 0x60]
xor r11d, r11d
test ebx, ebx
jne 0x140018bc6
mov r14, qword [rsp + 0x50]
mov rax, qword [r14 + 0x18]
cmp qword [rax + 0x2f8], r11
jne 0x140018bcb
mov eax, r11d
mov ebx, 1
jmp 0x140018bd2
mov r14, qword [rsp + 0x50]
mov ebx, 1
mov eax, ebx
test ecx, ecx
jne 0x140018c29
test eax, eax
je 0x140018c29
mov rax, qword [0x140134380]
mov dword [rbp - 0x5c], ebx
cmp byte [rax + 0x15], r11b
jne 0x140018c2d
test dword [rax + 4], 0x800
jne 0x140018c2d
mov al, byte [rbp + 0x90]
shr al, 7
test bl, al
je 0x140018c2d
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test bl, al
jne 0x140018c2d
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x8b6
mov rcx, rdi
call fcn.14003b748
xor r11d, r11d
jmp 0x140018c2d
mov dword [rbp - 0x5c], r11d
mov rcx, qword [rbp + 0x78]
mov edx, 0x40
call fcn.14003a238
test rax, rax
jne 0x140018c50
mov rax, qword [r14 + 0x18]
mov ecx, r11d
cmp qword [rax + 0x218], r11
je 0x140018c55
mov ecx, 0x10000
mov eax, dword [rdi + 0xbc]
btr eax, 0x10
or eax, ecx
mov dword [rdi + 0xbc], eax
bt eax, 0x10
jae 0x140018ca4
test r15, r15
je 0x140018c88
mov r9d, 0x8eb
mov qword [rsp + 0x20], r11
mov rcx, r15
call fcn.14003b994
xor r11d, r11d
test esi, esi
je 0x140018ca4
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x8fc
mov rcx, rdi
call fcn.14003b748
xor r11d, r11d
mov rax, qword [rbp + 0x90]
mov esi, 2
shr rax, 0x21
mov r15d, 0x9cf
test bl, al
jne 0x140018ccb
cmp qword [rbp + 0x28], r11
jne 0x140018ccb
mov byte [rsp + 0x32], r11b
jmp 0x140018d29
mov rax, qword [rbp + 0x90]
shr rax, 0x2b
mov byte [rsp + 0x32], bl
test bl, al
je 0x140018cf4
lea r9, str.async
mov r8d, r15d
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
movabs rax, 0x200000000
or qword [rbp + 0x90], rax
mov rax, qword [0x140134380]
cmp dword [rax + 0x5c], esi
jne 0x140018d26
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x988
mov rcx, rdi
call fcn.14003b748
xor r11d, r11d
cmp dword [rsp + 0x64], r11d
jne 0x140018d36
cmp dword [rbp - 0x78], r11d
je 0x140018d92
test dword [rdi + 0xbc], 0x10000
jne 0x140018d92
mov eax, dword [rsp + 0x5c]
cmp eax, 0x12
je 0x140018d92
cmp eax, 0x23
je 0x140018d58
mov r8d, 0x8f0
jmp 0x140018d80
mov rcx, qword [rbp + 0x78]
mov edx, r11d
mov eax, r11d
cmp qword [rcx + 0x310], r11
setne dl
cmp qword [rcx + 0x308], r11
setne al
cmp edx, eax
je 0x140018d92
mov r8d, 0x936
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
xor r11d, r11d
mov rsi, qword [rbp + 0x20]
test rsi, rsi
je 0x140018f4d
cmp dword [rbp - 0x50], r11d
je 0x140018dbe
lea r9, str.call_as
mov r8d, r15d
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
xor r11d, r11d
mov rbx, qword [rsi + 0x40]
cmp dword [rbp - 0x58], r11d
je 0x140018de4
lea r9, str.call_as
mov r8d, 0x9a7
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
xor r11d, r11d
test rbx, rbx
jne 0x140018e59
mov rax, qword [rsi + 0x38]
lea rdx, [rbp + 0x10]
mov rcx, qword [rbp - 0x80]
mov qword [rbp + 0x10], rax
mov dword [rbp + 0x18], 2
movaps xmm0, xmmword [rbp + 0x10]
mov rcx, qword [rcx + 0xd8]
movdqa xmmword [rbp + 0x10], xmm0
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x1400cd70e.0]
xor r11d, r11d
mov rbx, rax
test rax, rax
jne 0x140018e55
mov rcx, qword [r14 + 0x18]
cmp qword [rcx + 0x218], r11
je 0x140018f41
mov rcx, qword [rsi + 0x38]
mov r9d, 0x8e3
mov qword [rsp + 0x20], rcx
mov rcx, rsi
call fcn.14003b994
jmp 0x140018f3e
mov qword [rsi + 0x40], rax
or dword [rbx + 0xbc], 8
cmp byte [rbx + 0x18], 0x1b
jne 0x140018e82
mov rax, qword [rbx]
mov edx, 0x3f
mov rcx, rbx
mov rax, qword [rax + 0x20]
call qword [case.0x1400cd70e.0]
xor r11d, r11d
test eax, eax
jne 0x140018ec7
lea r9, [0x14012cf68]
mov dword [rsp + 0x20], r11d
lea r8, [0x14012d4f8]
xor edx, edx
mov rcx, rbx
call fcn.1400cbdc8
test rax, rax
je 0x140018eaa
mov rax, qword [rbx + 0x40]
jmp 0x140018eb1
lea rax, [0x1400f48cb]
mov r9d, 0x8e2
mov qword [rsp + 0x20], rax
mov rcx, rsi
call fcn.14003b994
xor r11d, r11d
mov rcx, qword [0x1401343b0]
mov edx, r11d
mov rax, qword [rcx + 8]
jmp 0x140018ee1
cmp qword [rax + 0x18], rbx
je 0x140018ee8
mov rax, qword [rax + 8]
cmp rax, rcx
jne 0x140018ed7
jmp 0x140018eed
mov edx, 1
neg edx
sbb rax, rax
test rbx, rax
je 0x140018f36
lea r9, [0x14012cf68]
mov dword [rsp + 0x20], r11d
lea r8, [0x14012d4f8]
xor edx, edx
mov rcx, rbx
call fcn.1400cbdc8
test rax, rax
je 0x140018f1f
mov rax, qword [rbx + 0x40]
jmp 0x140018f26
lea rax, [0x1400f48cb]
mov qword [rsp + 0x20], rax
mov r9d, 0x8ed
jmp 0x140018e48
mov rdx, rbx
call fcn.14005bee0
xor r11d, r11d
mov qword [rdi + 0x100], rbx
mov ebx, 1
cmp dword [rsp + 0x60], r11d
je 0x14001900a
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x803
mov rcx, rdi
call fcn.14003b748
xor r11d, r11d
bts qword [rbp + 0x90], 0x1a
mov r15d, ebx
cmp dword [rbp - 0x58], r11d
je 0x140018f9e
lea r9, str.local
mov r8d, 0x9a7
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
xor r11d, r11d
mov rcx, qword [rbp + 0x78]
mov edx, 0x63
call fcn.14003a238
test rax, rax
jne 0x140018fc3
mov rax, qword [r14 + 0x18]
mov dword [rsp + 0x74], r11d
cmp qword [rax + 0x330], r11
je 0x140018fc7
mov dword [rsp + 0x74], ebx
test dword [rdi + 0xb8], 0xf000000
jne 0x140019035
lea rcx, [rbp + 0x60]
mov rax, qword [rcx]
cmp byte [rax + 0x18], 0x1e
je 0x140018fec
mov rcx, qword [rcx + 8]
test rcx, rcx
jne 0x140018fd7
mov rcx, r11
mov r12, qword [rbp - 0x80]
test rcx, rcx
jne 0x140019039
test r12, r12
je 0x140019039
test r15d, r15d
jne 0x140019039
bts qword [rbp + 0x90], 7
jmp 0x140019042
mov rax, qword [r14 + 0x18]
cmp qword [rax + 0x210], r11
jne 0x140018f70
mov r15d, r11d
test r12d, r12d
je 0x140018f9e
xor r9d, r9d
mov r8d, 0x9bf
jmp 0x140018f8f
mov r12, qword [rbp - 0x80]
btr qword [rbp + 0x90], 7
mov rcx, qword [rbp + 0x78]
mov edx, 0x5d
call fcn.14003a238
mov qword [rbp + 0x50], rax
test rax, rax
je 0x140019077
movzx ecx, word [rax + 0x3c]
shl ecx, 0x10
xor ecx, dword [rdi + 0xb8]
and ecx, 0xff0000
xor dword [rdi + 0xb8], ecx
mov ecx, dword [rax + 0x38]
jmp 0x14001909c
movzx eax, word [r12 + 0xe4]
shl eax, 0x10
xor eax, dword [rdi + 0xb8]
and eax, 0xff0000
xor dword [rdi + 0xb8], eax
mov ecx, dword [r12 + 0xe8]
mov dword [rdi + 0x118], ecx
mov edx, 0x9b
mov rcx, qword [rbp + 0x78]
call fcn.14003a238
test rax, rax
je 0x1400190bc
mov qword [rdi + 0xf0], rax
mov rax, qword [rbp + 0x78]
cmp qword [rax + 0xa0], r11
je 0x1400190ed
test dword [rdi + 0xbc], 0x10000
jne 0x140019143
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x9e9
mov rcx, rdi
call fcn.14003b748
xor r11d, r11d
movzx esi, byte [rdi + 0xba]
test sil, 2
je 0x140019103
bts qword [rbp + 0x90], 0x10
cmp dword [rsp + 0x44], r11d
jne 0x1400192cf
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x18]
cmp qword [rax + 0x360], r11
jne 0x1400192cf
cmp qword [rax + 0x368], r11
jne 0x1400192cf
mov r14d, r11d
mov dword [rsp + 0x44], r11d
mov ebx, 1
jmp 0x140019344
mov dword [rdi + 0xc8], ebx
mov rcx, qword [rbp + 0x78]
mov edx, 0x11
call fcn.14003a238
mov rbx, rax
test rax, rax
je 0x1400190ed
mov rdx, qword [rax + 0x20]
mov rcx, qword [rdx]
mov rax, qword [rcx + 0xb8]
mov rcx, rdx
call qword [case.0x1400cd70e.0]
mov rsi, qword [rbx + 0x28]
mov r14, rax
mov rcx, qword [rsi]
mov rax, qword [rcx + 0xd8]
mov rcx, rsi
call qword [case.0x1400cd70e.0]
test al, al
jne 0x1400191c4
mov rcx, qword [rsi]
mov rax, qword [rcx + 0x30]
mov rcx, rsi
call qword [case.0x1400cd70e.0]
test eax, eax
je 0x14001925f
mov eax, 1
cmp dword [rsi + 0x20], eax
je 0x1400191c4
mov eax, 4
cmp dword [rsi + 0x20], eax
jne 0x14001925f
lea rbx, [rdi + 0xd0]
mov rcx, qword [rbx + 8]
cmp rcx, rbx
jmp 0x1400191e8
cmp qword [rcx + 0x18], r14
je 0x140019286
mov rax, qword [rcx + 8]
mov rcx, rax
cmp rax, rbx
mov eax, 0
cmove rcx, rax
test rcx, rcx
jne 0x1400191d4
lea ecx, [rax + 0x28]
call qword [sym.imp.msvcrt.dll_malloc]
nop dword [rax + rax]
xor r11d, r11d
test rax, rax
je 0x1400192ac
add dword [0x140134854], 0x28
mov qword [rax + 0x10], rax
mov qword [rax + 8], rax
mov qword [rax], r11
mov qword [rax + 0x18], r14
mov qword [rax + 0x20], rsi
mov rcx, qword [rbx + 8]
mov qword [rax + 8], rcx
mov qword [rax + 0x10], rbx
mov rcx, qword [rbx + 8]
cmp rcx, rbx
je 0x140019244
mov qword [rcx + 0x10], rax
mov qword [rbx + 8], rax
cmp qword [rbx + 0x10], rbx
jne 0x140019252
mov qword [rbx + 0x10], rax
mov eax, 1
add dword [rbx + 0x18], eax
jmp 0x140019149
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x9e9
mov rcx, rdi
call fcn.14003b748
mov ecx, 0x9e9
call qword [sym.imp.msvcrt.dll_exit]
nop dword [rax + rax]
int3
mov ebx, 0x9e8
lea rdx, [rbp + 0x60]
mov r8d, ebx
xor r9d, r9d
mov rcx, rdi
call fcn.14003b748
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_exit]
nop dword [rax + rax]
int3
mov ebx, 0x7d5
xor edx, edx
mov r8d, ebx
xor r9d, r9d
xor ecx, ecx
call fcn.1400c9744
mov ecx, ebx
call qword [sym.imp.msvcrt.dll_exit]
nop dword [rax + rax]
int3
mov rax, qword [0x140134380]
mov ebx, 1
mov r14d, ebx
mov dword [rsp + 0x44], ebx
test dword [rax], 0x4000
je 0x140019344
test sil, sil
jns 0x14001932f
cmp dword [rax + 0x58], 0x28
jne 0x14001930e
lea r9, str.:oicf_pickling
mov r8d, 0x997
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
mov rax, qword [0x140134380]
bts dword [rax + 0x38], 0x10
cmp dword [rax + 0x58], 0x28
jne 0x140019344
lea r9, str.:oicf_pickling
mov r8d, 0x997
jmp 0x140019338
xor r9d, r9d
mov r8d, 0x947
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
mov rax, qword [rbp + 0x78]
xor ecx, ecx
cmp qword [rax + 0x308], rcx
jne 0x14001935e
cmp qword [rax + 0x310], rcx
jne 0x14001935e
mov ebx, ecx
test r14d, r14d
je 0x140019383
test ebx, ebx
je 0x140019383
test sil, sil
js 0x140019383
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x965
mov rcx, rdi
call fcn.14003b748
xor ecx, ecx
cmp dword [rbp - 0x60], ecx
jne 0x140019396
cmp dword [rbp - 0x5c], ecx
jne 0x140019396
test r14d, r14d
jne 0x140019396
test ebx, ebx
je 0x1400193b4
cmp dword [rbp - 0x58], ecx
je 0x1400193b4
lea r9, str.code_nocode_encode_decode
mov r8d, 0x9a7
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
test r13d, r13d
jne 0x140019453
mov ebx, dword [rsp + 0x38]
xor r13d, r13d
cmp dword [rsp + 0x60], r13d
jne 0x140019427
test ebx, ebx
je 0x140019433
movzx eax, word [r12 + 0xe2]
lea ecx, [r13 + 1]
mov word [rdi + 0xb8], ax
add word [r12 + 0xe2], cx
mov al, byte [rbp + 0x90]
shr al, 7
test cl, al
je 0x140019494
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test cl, al
jne 0x140019494
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x8cf
mov rcx, rdi
call fcn.14003b748
jmp 0x140019494
test dword [rdi + 0xbc], 0x10000
je 0x140019494
movzx eax, word [r12 + 0xe0]
mov word [rdi + 0xb8], ax
mov eax, 1
add word [r12 + 0xe0], ax
jmp 0x140019494
mov al, byte [rbp + 0x90]
mov ecx, 1
shr al, 7
test cl, al
je 0x140019610
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test cl, al
jne 0x14001948d
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x8f2
mov rcx, rdi
call fcn.14003b748
xor r13d, r13d
mov ebx, dword [rsp + 0x38]
mov rax, qword [rbp + 0x78]
mov ecx, r13d
mov edx, 0x8b
cmp qword [rax + 0x308], r13
setne cl
cmp qword [rax + 0x310], r13
mov dword [rsp + 0x78], ecx
mov eax, 4
mov ecx, r13d
setne cl
or qword [rbp + 0x90], rax
mov eax, 1
mov dword [rbp - 0x64], ecx
mov dword [rbp + 0x80], eax
mov rcx, rdi
mov rax, qword [rdi]
mov rax, qword [rax + 0x20]
call qword [case.0x1400cd70e.0]
test eax, eax
je 0x14001951f
mov al, byte [rbp + 0x90]
mov ecx, 1
shr al, 7
test cl, al
je 0x14001951f
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test cl, al
jne 0x14001951f
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x8e8
mov rcx, rdi
call fcn.14003b748
mov rcx, qword [rbp - 0x18]
lea rdx, [rbp + 0x60]
mov rax, qword [rcx]
mov rax, qword [rax + 0xb0]
call qword [case.0x1400cd70e.0]
mov rax, qword [rbp + 0x98]
mov r8d, 1
mov rcx, rax
mov dword [rbp + 0x80], r13d
shr rcx, 0x31
and ecx, r8d
shr rax, 0x2e
mov qword [rbp + 0x10], rcx
test r8b, al
je 0x14001959f
mov al, byte [rbp + 0x90]
shr al, 7
test r8b, al
je 0x14001959f
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test r8b, al
jne 0x14001959f
lea r9, str.return_value
mov r8d, 0x9af
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
mov r8d, 1
test qword [rbp + 0x98], 0x8040000
mov r9d, 0x80000
mov rcx, qword [0x140134380]
je 0x1400196e0
test dword [rcx + 0x38], r9d
jne 0x1400196e0
test r14d, r14d
je 0x14001969a
test byte [rcx + 0x1a], 0x20
mov esi, 1
je 0x1400198f2
mov al, byte [rbp + 0x90]
shr al, 7
test sil, al
je 0x1400198f2
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test sil, al
jne 0x1400198f2
mov r8d, 0x96f
jmp 0x140019b1c
lea rcx, [rbp + 0x60]
call fcn.14003a55c
mov rbx, qword [rax]
mov rcx, rbx
mov rax, qword [rbx]
mov rax, qword [rax + 0x58]
call qword [case.0x1400cd70e.0]
xor r13d, r13d
test eax, eax
jne 0x140019661
cmp byte [rbx + 0x18], 0x2d
je 0x140019661
mov rax, qword [rbp + 0x90]
lea ecx, [r13 + 1]
shr rax, 0x1a
test cl, al
jne 0x140019661
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x8f1
mov rcx, rdi
call fcn.14003b748
mov eax, 1
test byte [rbp + 0x90], al
je 0x140019490
cmp dword [rbp - 0x58], r13d
je 0x140019490
lea r9, str.function_pointer
mov r8d, 0x9a7
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
jmp 0x140019490
mov rcx, rdi
call fcn.140030130
mov esi, 1
test eax, eax
je 0x1400198f2
mov al, byte [rbp + 0x90]
shr al, 7
test sil, al
je 0x1400198f2
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test sil, al
jne 0x1400198f2
mov r8d, 0x8c6
jmp 0x140019b1c
mov rax, qword [rbp + 0x98]
shr rax, 0x1a
test r8b, al
je 0x140019736
mov rcx, rdi
call fcn.140030130
mov esi, 1
test eax, eax
je 0x1400198f2
mov al, byte [rbp + 0x90]
shr al, 7
test sil, al
je 0x1400198f2
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test sil, al
jne 0x1400198f2
mov r8d, 0x8c7
jmp 0x140019b1c
mov edx, dword [rcx + 0x5c]
lea eax, [rdx - 2]
cmp eax, r8d
jbe 0x140019797
mov rax, qword [rbp + 0x98]
shr rax, 0xa
test r8b, al
je 0x140019797
mov rcx, rdi
call fcn.140030130
mov esi, 1
test eax, eax
je 0x1400198f2
mov al, byte [rbp + 0x90]
shr al, 7
test sil, al
je 0x1400198f2
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test sil, al
jne 0x1400198f2
mov r8d, 0x8cc
jmp 0x140019b1c
lea eax, [rdx - 2]
cmp eax, r8d
jbe 0x1400197fd
mov rax, qword [rbp + 0x98]
test rax, 0x18000
je 0x1400197fd
shr rax, 0x13
test r8b, al
je 0x1400197fd
mov rcx, rdi
call fcn.140030130
test eax, eax
je 0x1400198ed
mov al, byte [rbp + 0x90]
mov esi, 1
shr al, 7
test sil, al
je 0x1400198f2
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test sil, al
jne 0x1400198f2
mov r8d, 0x8cd
jmp 0x140019b1c
mov edx, dword [rsp + 0x5c]
lea eax, [rdx - 3]
test eax, 0xfffffffa
jne 0x140019856
cmp edx, 8
je 0x140019856
mov rcx, rdi
call fcn.140030130
mov esi, 1
test eax, eax
je 0x1400198f2
mov al, byte [rbp + 0x90]
shr al, 7
test sil, al
je 0x1400198f2
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test sil, al
jne 0x1400198f2
mov r8d, 0x981
jmp 0x140019b1c
test dword [rcx + 0x38], r9d
jne 0x140019b30
cmp edx, 5
jne 0x14001986b
test byte [rcx + 0x1a], 0x20
je 0x140019877
lea eax, [rdx - 1]
cmp eax, r8d
ja 0x140019b30
mov eax, esi
and eax, 0x80
test r14d, r14d
je 0x1400198d1
test eax, eax
je 0x1400198ed
test byte [rcx + 0x1a], 0x20
je 0x140019897
mov esi, 1
jmp 0x1400195df
mov rcx, rdi
call fcn.140030130
mov esi, 1
test eax, eax
je 0x1400198f2
mov al, byte [rbp + 0x90]
shr al, 7
test sil, al
je 0x1400198f2
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test sil, al
jne 0x1400198f2
mov r8d, 0x96e
jmp 0x140019b1c
test eax, eax
je 0x140019ad1
test dword [rdi + 0xbc], 0x10000
je 0x140019aba
or dword [rcx + 0x38], 0x20
mov esi, 1
test ebx, ebx
je 0x1400199a7
mov al, byte [rbp + 0x98]
shr al, 3
test sil, al
je 0x14001993b
mov al, byte [rbp + 0x90]
shr al, 7
test sil, al
je 0x14001993b
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test sil, al
jne 0x14001993b
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x8a7
mov rcx, rdi
call fcn.14003b748
mov rax, qword [rbp + 0x98]
shr rax, 0x31
test sil, al
je 0x140019982
mov al, byte [rbp + 0x90]
shr al, 7
test sil, al
je 0x140019982
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test sil, al
jne 0x140019982
lea r9, str._system_handle_
mov r8d, 0x8a7
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
test dword [rdi + 0xbc], 0x10000
je 0x1400199a7
lea r9, str._callback_
mov r8d, 0x900
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
mov rax, qword [rbp + 0x98]
shr rax, 0x19
test sil, al
je 0x1400199bf
bts dword [rdi + 0xb8], 0x1c
test dword [rdi + 0xbc], 0x10000
je 0x140019a1b
test r15d, r15d
jne 0x140019a1b
mov rax, qword [rbp + 0x98]
shr rax, 0x1e
test sil, al
jne 0x140019a1b
mov rcx, qword [rbp + 0x90]
mov rax, rcx
shr rax, 0x16
test sil, al
jne 0x140019a1b
mov al, cl
shr al, 7
test sil, al
je 0x140019a1b
shr rcx, 0x1a
test sil, cl
jne 0x140019a1b
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x8dd
mov rcx, rdi
call fcn.14003b748
cmp dword [rbp - 0x50], r13d
je 0x140019a46
mov rax, qword [rbp + 0x98]
shr rax, 0x1e
test sil, al
jne 0x140019a46
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x9d4
mov rcx, rdi
call fcn.14003b748
mov rax, qword [r12]
mov rcx, r12
mov rax, qword [rax + 0x100]
call qword [case.0x1400cd70e.0]
test eax, eax
jne 0x140019bb5
mov rax, qword [rbp + 0x90]
shr rax, 0x26
test sil, al
je 0x140019bb5
lea rcx, [rbp - 0x10]
call fcn.14003cfe0
mov rbx, rax
test rax, rax
je 0x140019bad
lea r9, [0x14012cf68]
mov dword [rsp + 0x20], r13d
lea r8, [0x14012d4f8]
xor edx, edx
mov rcx, rax
call fcn.1400cbdc8
test rax, rax
je 0x140019b94
mov r9, qword [rbx + 0x40]
jmp 0x140019b9b
mov rcx, rdi
call fcn.140030130
test eax, eax
je 0x1400198ed
mov esi, 1
jmp 0x140019af0
test sil, 0x42
je 0x1400198ed
mov rcx, rdi
call fcn.140030130
mov esi, 1
test eax, eax
je 0x1400198f2
mov al, byte [rbp + 0x90]
shr al, 7
test sil, al
je 0x1400198f2
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test sil, al
jne 0x1400198f2
mov r8d, 0x8f3
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
jmp 0x1400198f2
mov eax, dword [rbp - 0x74]
mov esi, 1
test eax, eax
je 0x1400198f2
add eax, 0xffffff7e
cmp eax, esi
jbe 0x1400198f2
test r15d, r15d
jne 0x1400198f2
mov rcx, rdi
call fcn.140030130
test eax, eax
je 0x1400198f2
mov al, byte [rbp + 0x90]
shr al, 7
test sil, al
je 0x1400198f2
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test sil, al
jne 0x1400198f2
mov r8d, 0x904
jmp 0x140019b1c
lea r9, [0x1400f48cb]
mov r8d, 0x944
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
mov rax, qword [rbp - 0x10]
mov qword [rbp - 0x28], rax
mov rax, qword [rbp + 0x90]
mov ebx, r13d
mov r14, rax
mov dword [rsp + 0x58], r13d
shr r14, 0x25
and rax, 0xfffffffffffffffb
and r14d, esi
mov dword [rsp + 0x5c], r13d
or rax, 2
mov qword [rbp - 0x10], r14
mov r14d, r13d
mov dword [rbp - 0x68], r13d
mov esi, r13d
mov dword [rbp - 0x70], r13d
mov dword [rbp - 0x6c], r13d
mov r9, r13
mov dword [rsp + 0x70], r13d
mov r10, r13
mov qword [rbp - 0x20], r13
xor r15d, r15d
mov qword [rbp - 0x48], r13
mov qword [rbp - 0x40], r13
mov qword [rbp - 0x18], r13
mov byte [rsp + 0x31], r13b
mov byte [rsp + 0x33], r13b
mov r13, qword [rbp - 0x28]
mov qword [rbp + 0x90], rax
mov dword [rbp - 0x74], ebx
mov dword [rsp + 0x40], r14d
mov r12, r13
test r13, r13
je 0x140019c3a
mov r13, qword [r13 + 0x58]
jmp 0x140019c3d
mov r13, r15
test r12, r12
je 0x14001a9a9
movzx r15d, byte [rdi + 0xba]
mov rcx, r12
call fcn.14002eb54
lea rdx, [rbp + 0x60]
mov qword [rbp - 0x18], r10
mov rcx, r12
mov qword [rbp - 0x40], r9
mov qword [rbp - 0x48], r12
movzx r14d, byte [rax + 0x18]
xor eax, eax
mov qword [rbp + 0x98], rax
mov dword [rbp + 0x88], eax
mov rax, qword [r12]
mov rax, qword [rax + 0xb0]
call qword [case.0x1400cd70e.0]
mov eax, dword [r12 + 0x98]
xor r9d, r9d
cmp byte [rsp + 0x31], r9b
jne 0x140019ca9
mov byte [rsp + 0x31], r9b
test al, 2
je 0x140019cae
mov byte [rsp + 0x31], 1
mov ecx, 4
test cl, al
je 0x140019cf5
cmp r14d, 0xa
je 0x140019cd2
mov r8d, 0x963
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
xor r9d, r9d
cmp byte [rsp + 0x33], r9b
je 0x140019fe1
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x950
mov rcx, rdi
call fcn.14003b748
xor r9d, r9d
mov ecx, 1
cmp dword [rsp + 0x38], r9d
je 0x140019db4
mov al, byte [rbp + 0x98]
shr al, 3
test cl, al
je 0x140019d48
mov al, byte [rbp + 0x90]
shr al, 7
test cl, al
je 0x140019d48
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test cl, al
jne 0x140019d48
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x8a7
mov rcx, rdi
call fcn.14003b748
mov ecx, 1
mov rax, qword [rbp + 0x98]
shr rax, 0x31
test cl, al
je 0x140019d8c
mov al, byte [rbp + 0x90]
shr al, 7
test cl, al
je 0x140019d8c
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test cl, al
jne 0x140019d8c
lea r9, str._system_handle_
mov r8d, 0x8a7
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
test dword [rdi + 0xbc], 0x10000
je 0x140019db1
lea r9, str._callback_
mov r8d, 0x900
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
xor r9d, r9d
cmp dword [rbp - 0x50], r9d
je 0x140019e2a
mov al, byte [rbp + 0x90]
mov ecx, 1
shr al, 3
test cl, al
je 0x140019de8
lea r9, str.handle
mov r8d, 0x9cf
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
xor r9d, r9d
cmp dword [rsp + 0x38], r9d
je 0x140019e0b
lea r9, str.callback
mov r8d, 0x9cf
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
xor r9d, r9d
cmp dword [rbp - 0x58], r9d
je 0x140019e2a
lea r9, str.typelibrary
mov r8d, 0x9cf
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
mov rax, qword [rbp + 0x98]
mov r10d, 1
shr rax, 0x23
test r10b, al
je 0x140019e85
mov rcx, rdi
call fcn.1400301e8
test eax, eax
je 0x140019e85
mov al, byte [rbp + 0x90]
shr al, 7
test r10b, al
je 0x140019e85
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test r10b, al
jne 0x140019e85
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x959
mov rcx, rdi
call fcn.14003b748
mov r10d, 1
mov rax, qword [rbp + 0x98]
shr rax, 0x2b
test r10b, al
je 0x140019f2a
test r15b, 2
je 0x140019ede
mov rcx, rdi
call fcn.1400301e8
test eax, eax
je 0x140019ede
mov al, byte [rbp + 0x90]
shr al, 7
test r10b, al
je 0x140019ede
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test r10b, al
jne 0x140019ede
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x991
mov rcx, rdi
call fcn.14003b748
xor eax, eax
cmp dword [rbp - 0x58], eax
je 0x140019efe
lea r9, str.partial_ignore
mov r8d, 0x992
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
mov rax, qword [0x140134380]
test byte [rax + 8], 0x40
je 0x140019f24
lea r9, str._partial_ignore_
mov r8d, 0x876
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
mov r10d, 1
mov rax, qword [rbp + 0x98]
shr rax, 0x21
test r10b, al
je 0x140019f5b
mov rax, qword [rdi]
mov rcx, rdi
bts dword [rdi + 0xbc], 0xb
mov rax, qword [rax + 0x120]
call qword [case.0x1400cd70e.0]
mov r10d, 1
mov rax, qword [rbp + 0x98]
shr rax, 0x22
test r10b, al
je 0x140019f8c
mov rax, qword [rdi]
mov rcx, rdi
bts dword [rdi + 0xbc], 0xc
mov rax, qword [rax + 0x128]
call qword [case.0x1400cd70e.0]
mov r10d, 1
mov rax, qword [rbp + 0x98]
xor r8d, r8d
shr rax, 0x20
test r10b, al
je 0x140019fef
mov rdx, qword [rbp - 0x20]
mov rax, r12
mov ecx, dword [rsp + 0x70]
test rdx, rdx
cmove ecx, r10d
cmovne rax, rdx
mov dword [rsp + 0x70], ecx
mov qword [rbp - 0x20], rax
cmp byte [rsp + 0x35], r8b
je 0x140019ff8
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x939
mov rcx, rdi
call fcn.14003b748
mov r10d, 1
jmp 0x140019ff8
mov ecx, 1
mov byte [rsp + 0x33], cl
jmp 0x140019cfa
mov dword [rsp + 0x70], r8d
mov qword [rbp - 0x20], r8
mov rax, qword [rbp + 0x98]
shr rax, 0x31
test r10b, al
je 0x14001a05c
mov cl, byte [rbp + 0x98]
mov al, cl
shr al, 1
test r10b, al
je 0x14001a05c
shr cl, 2
test r10b, cl
je 0x14001a05c
mov al, byte [rbp + 0x90]
shr al, 7
test r10b, al
je 0x14001a05c
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test r10b, al
jne 0x14001a05c
lea r9, str._system_handle__cannot_be_combined_with__in__out__attribute
mov r8d, 0x806
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
mov r10d, 1
mov rcx, qword [rbp + 0x98]
mov rax, rcx
shr rax, 0x1f
test r10b, al
je 0x14001a131
mov eax, dword [rbp - 0x68]
shr rcx, 1
and ecx, r10d
cmovne eax, r10d
test ecx, ecx
mov dword [rbp - 0x68], eax
mov rcx, r12
lea eax, [rbx + 1]
cmove eax, ebx
mov dword [rbp - 0x74], eax
mov al, byte [rbp + 0x98]
shr al, 2
test r10b, al
lea eax, [rsi + 1]
cmove eax, esi
mov esi, eax
mov dword [rbp - 0x70], eax
call fcn.14002eb54
xor ebx, ebx
jmp 0x14001a0bb
cmp byte [rax + 0x18], 0x2d
jne 0x14001a0c0
mov rax, qword [rax + 8]
test rax, rax
jne 0x14001a0b1
mov eax, dword [rax + 0x18]
movzx eax, al
cmp eax, 0x24
jne 0x14001a0d7
test dword [rdi + 0xbc], 0x10000
je 0x14001a0e8
cmp eax, 0x1a
jne 0x14001a155
test dword [rdi + 0xbc], 0x10000
je 0x14001a155
lea r9, [0x14012cf68]
mov dword [rsp + 0x20], ebx
lea r8, [0x14012d4f8]
xor edx, edx
mov rcx, r12
call fcn.1400cbdc8
test rax, rax
je 0x14001a110
mov r9, qword [r12 + 0x40]
jmp 0x14001a117
lea r9, [0x1400f48cb]
mov r8d, 0x7ec
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
mov r10d, 1
jmp 0x14001a155
mov al, byte [rbp + 0x98]
shr al, 1
test r10b, al
je 0x14001a153
mov eax, dword [rbp - 0x6c]
test qword [rbp + 0x98], 0x20001c1
cmovne eax, r10d
mov dword [rbp - 0x6c], eax
xor ebx, ebx
mov rax, qword [rbp + 0x98]
shr rax, 0x2e
test r10b, al
je 0x14001a1d1
cmp byte [rdi + 0xba], bl
jl 0x14001a182
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x9a9
mov rcx, rdi
call fcn.14003b748
mov rax, qword [0x140134380]
cmp dword [rax + 0x40], ebx
je 0x14001a1ad
cmp dword [rax + 0x40], 0x3c
jge 0x14001a1ad
lea r9, str.context_handle_in_struct_or_array
mov r8d, 0x997
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
cmp dword [rbp - 0x50], ebx
je 0x14001a1cb
lea r9, [0x1400f9228]
mov r8d, 0x9cf
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
mov r10d, 1
cmp dword [rsp + 0x40], ebx
jne 0x14001a384
cmp byte [rsp + 0x32], bl
je 0x14001a34d
test dword [rdi + 0xbc], 0x10000
je 0x14001a34d
mov dword [rsp + 0x6c], ebx
xor ecx, ecx
mov rbx, qword [r12 + 8]
test rbx, rbx
je 0x14001a233
mov eax, dword [rbx + 0x18]
movzx eax, al
cmp eax, 0x2d
jne 0x14001a229
mov dword [rsp + 0x6c], r10d
lea rdx, [rsp + 0x6c]
mov rcx, rbx
call fcn.1400165d8
mov rsi, rax
xor ecx, ecx
jmp 0x14001a236
cmp eax, 0x21
jne 0x14001a215
mov rsi, rbx
jmp 0x14001a23d
mov rsi, r12
cmp dword [rsp + 0x6c], 2
je 0x14001a282
cmp dword [rbp - 0x10], ecx
jne 0x14001a282
mov dword [rsp + 0x20], ecx
lea r9, [0x14012cf68]
mov rcx, rbx
lea r8, [0x14012d4f8]
xor edx, edx
call fcn.1400cbdc8
test rax, rax
je 0x14001a269
mov r9, qword [rbx + 0x40]
jmp 0x14001a270
lea r9, [0x1400f48cb]
mov r8d, 0x932
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
xor ebx, ebx
lea r9, [0x14012cf68]
lea r8, [0x14012d4f8]
mov dword [rsp + 0x20], ebx
xor edx, edx
mov rcx, rsi
call fcn.1400cbdc8
test rax, rax
je 0x14001a2ab
mov rcx, qword [rsi + 0x40]
jmp 0x14001a2b2
lea rcx, [0x1400f48cb]
lea rdx, str.IAsyncManager
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x14001a377
cmp dword [rbp - 0x10], ebx
jne 0x14001a312
mov rbx, qword [r12 + 8]
lea r9, [0x14012cf68]
xor esi, esi
lea r8, [0x14012d4f8]
mov rcx, rbx
mov dword [rsp + 0x20], esi
xor edx, edx
call fcn.1400cbdc8
test rax, rax
je 0x14001a2f9
mov r9, qword [rbx + 0x40]
jmp 0x14001a300
lea r9, [0x1400f48cb]
mov r8d, 0x933
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
mov r10d, 1
or dword [r12 + 0x98], 0x10
mov al, byte [rbp + 0x98]
shr al, 2
test r10b, al
je 0x14001a34a
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x931
mov rcx, rdi
call fcn.14003b748
mov r10d, 1
mov esi, dword [rbp - 0x70]
mov rcx, qword [0x140134380]
mov edx, 2
mov eax, dword [rcx + 0x5c]
sub eax, edx
cmp eax, r10d
jbe 0x14001a389
lea eax, [r14 - 1]
cmp eax, r10d
ja 0x14001a389
test r15b, r15b
jns 0x14001a389
or dword [rcx + 0x38], 0x20
jmp 0x14001a389
mov r10d, 1
mov dword [rsp + 0x58], r10d
jmp 0x14001a318
mov edx, 2
lea eax, [r14 - 1]
cmp eax, r10d
ja 0x14001a408
mov rax, qword [0x140134380]
mov ecx, dword [rax + 0x5c]
sub ecx, edx
cmp ecx, r10d
jbe 0x14001a408
test dl, r15b
je 0x14001a408
test r15b, r15b
js 0x14001a3fd
mov rcx, rdi
call fcn.140030130
mov r10d, 1
test eax, eax
je 0x14001a3f8
mov al, byte [rbp + 0x90]
shr al, 7
test r10b, al
je 0x14001a3f8
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test r10b, al
jne 0x14001a3f8
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x8db
mov rcx, rdi
call fcn.14003b748
mov r10d, 1
mov edx, 2
mov rax, qword [0x140134380]
or dword [rax + 0x38], 0x20
mov ecx, dword [r12 + 0x98]
xor r15d, r15d
test r10b, cl
je 0x14001a440
mov r14d, dword [rsp + 0x68]
test r14d, r14d
mov dword [rsp + 0x5c], r10d
lea eax, [r14 + 1]
cmovle eax, r14d
mov dword [rsp + 0x68], eax
cmp byte [rsp + 0x35], r15b
je 0x14001a495
mov r8d, 0x939
jmp 0x14001a486
cmp dword [rsp + 0x5c], r15d
je 0x14001a495
mov eax, ecx
shl eax, 0x1d
sar eax, 0x1f
cmp byte [rsp + 0x30], r15b
je 0x14001a461
test eax, eax
jne 0x14001a461
add dword [rsp + 0x68], r10d
jmp 0x14001a495
test dl, cl
jne 0x14001a495
test eax, eax
jne 0x14001a495
cmp dword [0x140135888], r15d
jne 0x14001a477
call fcn.140044698
cmp dword [0x1401358a0], r15d
je 0x14001a495
mov r8d, 0x82a
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
mov rbx, qword [r12 + 0x60]
jmp 0x14001a4a6
cmp dword [rbx + 8], 0x5e
je 0x14001a4ae
mov rbx, qword [rbx + 0x10]
test rbx, rbx
jne 0x14001a49c
mov rbx, r15
test rbx, rbx
je 0x14001a515
mov rax, qword [rbp + 0x98]
mov ecx, 1
shr rax, 0x11
test cl, al
jne 0x14001a4df
mov r9d, 0x831
mov qword [rsp + 0x20], r15
mov rcx, rbx
call fcn.14003b994
mov ecx, 1
mov r14d, dword [rsp + 0x78]
test r14w, r14w
jne 0x14001a4f6
mov eax, 2
mov word [rsp + 0x78], ax
jmp 0x14001a515
cmp r14w, cx
mov qword [rsp + 0x20], r15
mov rcx, rbx
mov r9d, 0x802
je 0x14001a510
mov r9d, 0x815
call fcn.14003b994
mov rbx, qword [r12 + 0x60]
jmp 0x14001a526
cmp dword [rbx + 8], 0x5f
je 0x14001a52e
mov rbx, qword [rbx + 0x10]
test rbx, rbx
jne 0x14001a51c
mov rbx, r15
test rbx, rbx
je 0x14001a592
mov rax, qword [rbp + 0x98]
mov ecx, 1
shr rax, 0x11
test cl, al
jne 0x14001a55f
mov r9d, 0x831
mov qword [rsp + 0x20], r15
mov rcx, rbx
call fcn.14003b994
mov ecx, 1
mov r14d, dword [rbp - 0x64]
test r14w, r14w
jne 0x14001a573
mov ebx, 2
mov dword [rbp - 0x64], ebx
jmp 0x14001a592
cmp r14w, cx
mov qword [rsp + 0x20], r15
mov rcx, rbx
mov r9d, 0x8c5
je 0x14001a58d
mov r9d, 0x815
call fcn.14003b994
mov al, byte [rbp + 0x98]
mov ebx, 1
shr al, 3
test bl, al
je 0x14001a5ac
bts dword [rdi + 0xb8], 0x1f
mov al, byte [rbp + 0x98]
mov ecx, dword [rdi + 0xb8]
shr al, 1
test bl, al
je 0x14001a5c8
bts ecx, 0x1d
mov dword [rdi + 0xb8], ecx
mov al, byte [rbp + 0x98]
shr al, 4
test bl, al
je 0x14001a5db
or dword [rdi + 0xbc], ebx
mov rax, qword [rbp + 0x98]
shr rax, 0x19
test bl, al
je 0x14001a5f4
bts ecx, 0x1c
mov dword [rdi + 0xb8], ecx
mov al, byte [rbp + 0x98]
shr al, 2
test bl, al
je 0x14001a642
bts ecx, 0x1e
mov dword [rdi + 0xb8], ecx
cmp dword [rbp - 0x78], r15d
je 0x14001a642
mov al, byte [rbp + 0x90]
shr al, 7
test bl, al
je 0x14001a642
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test bl, al
jne 0x14001a642
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x8f0
mov rcx, rdi
call fcn.14003b748
mov rax, qword [rbp + 0x98]
shr rax, 0x1f
test bl, al
je 0x14001a6cd
mov rcx, rdi
call fcn.1400301e8
test eax, eax
je 0x14001a68e
mov al, byte [rbp + 0x90]
shr al, 7
test bl, al
je 0x14001a68e
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test bl, al
jne 0x14001a68e
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x90e
mov rcx, rdi
call fcn.14003b748
or dword [rdi + 0xbc], 0x40
cmp dword [rsp + 0x44], r15d
je 0x14001a6cd
mov al, byte [rbp + 0x90]
shr al, 7
test bl, al
je 0x14001a6cd
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test bl, al
jne 0x14001a6cd
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x926
mov rcx, rdi
call fcn.14003b748
mov rax, qword [0x140134380]
test dword [rax + 0x38], 0x4000000
je 0x14001a71e
mov rcx, rdi
call fcn.1400301e8
test eax, eax
je 0x14001a71e
mov al, byte [rbp + 0x90]
shr al, 7
test bl, al
je 0x14001a71e
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test bl, al
jne 0x14001a71e
lea r9, str.conformant_range_and_or_string_range
mov r8d, 0x913
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
movzx eax, word [r12 + 0xc0]
and ax, 0xf
je 0x14001a832
cmp dword [rbp - 0x30], r15d
jne 0x14001a7f7
mov r14d, dword [rsp + 0x40]
test r14d, r14d
je 0x14001a776
mov al, byte [rbp + 0x90]
shr al, 7
test bl, al
je 0x14001a776
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test bl, al
jne 0x14001a776
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x801
mov rcx, rdi
call fcn.14003b748
mov cl, byte [rbp + 0x98]
mov al, cl
shr al, 1
test bl, al
jne 0x14001a79f
shr cl, 2
test bl, cl
je 0x14001a79f
cmp dword [rsp + 0x74], r15d
je 0x14001a837
mov byte [rsp + 0x3c], bl
jmp 0x14001a837
mov al, byte [rbp + 0x98]
shr al, 2
test bl, al
je 0x14001a7f2
mov al, byte [r12 + 0xc0]
mov ecx, 4
and al, 0xf
cmp al, cl
jne 0x14001a7f2
mov al, byte [rbp + 0x90]
shr al, 7
test bl, al
je 0x14001a837
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test bl, al
jne 0x14001a837
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x892
mov rcx, rdi
call fcn.14003b748
jmp 0x14001a837
mov dword [rbp - 0x30], ebx
jmp 0x14001a837
mov ecx, 4
cmp ax, cx
jne 0x14001a832
mov al, byte [rbp + 0x90]
shr al, 7
test bl, al
je 0x14001a832
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test bl, al
jne 0x14001a832
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x886
mov rcx, rdi
call fcn.14003b748
mov r14d, dword [rsp + 0x40]
mov rax, qword [rbp + 0x98]
shr rax, 0x2c
test bl, al
je 0x14001a864
cmp byte [rdi + 0xba], r15b
jl 0x14001a864
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x996
mov rcx, rdi
call fcn.14003b748
mov rax, qword [rbp + 0x98]
shr rax, 0x1a
test bl, al
je 0x14001a8b2
mov rcx, rdi
call fcn.140030130
test eax, eax
je 0x14001a997
mov al, byte [rbp + 0x90]
shr al, 7
test bl, al
je 0x14001a997
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test bl, al
jne 0x14001a997
mov r8d, 0x8c7
jmp 0x14001a988
mov rax, qword [0x140134380]
mov edx, 2
mov ecx, dword [rax + 0x5c]
sub ecx, edx
cmp ecx, ebx
jbe 0x14001a912
mov rax, qword [rbp + 0x98]
shr rax, 0xa
test bl, al
je 0x14001a912
mov rcx, rdi
call fcn.140030130
test eax, eax
je 0x14001a997
mov al, byte [rbp + 0x90]
shr al, 7
test bl, al
je 0x14001a997
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test bl, al
jne 0x14001a997
mov r8d, 0x8cc
jmp 0x14001a988
mov rax, qword [rbp + 0x98]
shr rax, 0x12
test bl, al
je 0x14001a997
mov al, byte [rdi + 0xba]
and al, 0x82
cmp al, dl
jne 0x14001a997
mov rcx, qword [r12 + 8]
jmp 0x14001a93e
cmp byte [rcx + 0x18], 0x1e
jne 0x14001a943
mov rcx, qword [rcx + 8]
test rcx, rcx
jne 0x14001a934
cmp byte [rcx + 0x18], 0x1a
je 0x14001a997
mov rax, qword [rcx]
mov rax, qword [rax + 0x40]
call qword [case.0x1400cd70e.0]
test eax, eax
jne 0x14001a997
mov rcx, rdi
call fcn.140030130
test eax, eax
je 0x14001a997
mov al, byte [rbp + 0x90]
shr al, 7
test bl, al
je 0x14001a997
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test bl, al
jne 0x14001a997
mov r8d, 0x8f9
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
mov r10, qword [rbp - 0x40]
add r14d, ebx
mov ebx, dword [rbp - 0x74]
mov r9, r12
jmp 0x140019c27
mov r13d, 1
cmp ebx, r13d
jg 0x14001a9b9
cmp esi, r13d
jle 0x14001aa28
mov rax, qword [0x140134380]
cmp dword [rax + 0x40], 0x3c
jge 0x14001a9f5
test dword [rax + 0x38], 0xf000000
jne 0x14001a9f5
mov al, byte [rbp + 0x90]
shr al, 7
test r13b, al
je 0x14001aa28
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test r13b, al
jne 0x14001aa28
mov r8d, 0x9c0
jmp 0x14001aa19
mov al, byte [rbp + 0x90]
shr al, 7
test r13b, al
je 0x14001aa28
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test r13b, al
jne 0x14001aa28
mov r8d, 0x9c1
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
cmp dword [rsp + 0x70], r15d
je 0x14001aabb
mov r15, qword [rbp - 0x28]
xor r12d, r12d
mov rax, qword [rbp - 0x20]
mov r14, r15
mov rbx, r14
test r14, r14
je 0x14001aa4f
mov r14, qword [r14 + 0x58]
jmp 0x14001aa52
mov r14, r12
cmp rbx, rax
jne 0x14001aa41
mov rsi, qword [rbx + 8]
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x14001aa72
cmp byte [rsi + 0x18], 0x1e
jne 0x14001aa72
call fcn.140016614
mov rsi, rax
mov rcx, qword [rsi]
mov rax, qword [rcx + 0x50]
mov rcx, rsi
call qword [case.0x1400cd70e.0]
test eax, eax
jne 0x14001aa96
mov eax, dword [rsi + 0x18]
movzx eax, al
cmp eax, 0x2d
je 0x14001aa96
cmp eax, 0x18
jne 0x14001aad3
or dword [rbx + 0x98], 0x20
mov rbx, r14
test r14, r14
je 0x14001aaab
mov r14, qword [r14 + 0x58]
jmp 0x14001aaae
mov r14, r12
test rbx, rbx
jne 0x14001aa57
xor r15d, r15d
mov r14d, dword [rsp + 0x40]
cmp dword [rbp - 0x6c], 0
je 0x14001ab57
cmp dword [rbp - 0x68], 0
je 0x14001ab39
mov r8d, 0x930
jmp 0x14001ab48
lea r9, [0x14012cf68]
mov dword [rsp + 0x20], r12d
lea r8, [0x14012d4f8]
xor edx, edx
mov rcx, rbx
call fcn.1400cbdc8
test rax, rax
je 0x14001aafb
mov r9, qword [rbx + 0x40]
jmp 0x14001ab02
lea r9, [0x1400f48cb]
mov r8d, 0x93e
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
mov rcx, r15
xor r15d, r15d
mov rax, rcx
test rcx, rcx
je 0x14001ab28
mov rcx, qword [rcx + 0x58]
jmp 0x14001ab2b
mov rcx, r15
test rax, rax
je 0x14001aab6
and dword [rax + 0x98], 0xffffffdf
jmp 0x14001ab1a
test byte [rdi + 0xbc], 0x40
je 0x14001ab57
mov r8d, 0x9a4
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
mov ebx, dword [rsp + 0x38]
test ebx, ebx
je 0x14001ab9b
cmp dword [rdi + 0xb8], r15d
jge 0x14001abaf
mov al, byte [rbp + 0x90]
shr al, 7
test r13b, al
je 0x14001ab9b
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test r13b, al
jne 0x14001ab9b
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x8a7
mov rcx, rdi
call fcn.14003b748
cmp dword [rdi + 0xb8], r15d
jge 0x14001abaf
cmp byte [rsp + 0x3c], 0
je 0x14001ace3
mov r12d, dword [rsp + 0x74]
test r12d, r12d
jne 0x14001ac65
mov rax, qword [rsp + 0x50]
mov rcx, qword [rax + 0x18]
cmp qword [rcx + 0x328], r15
jne 0x14001ac5c
test ebx, ebx
jne 0x14001ac5c
mov al, byte [rbp + 0x90]
shr al, 7
test r13b, al
je 0x14001ac5c
test dword [rdi + 0xbc], 0x10000
jne 0x14001ac5c
mov rdx, qword [rbp + 0x90]
mov rax, rdx
shr rax, 0x1f
test r13b, al
jne 0x14001ac5c
cmp dword [rbp - 0x50], r15d
jne 0x14001ac5c
cmp qword [rcx + 0x338], r15
jne 0x14001ac5c
mov rcx, qword [0x140134380]
cmp dword [rcx + 0x40], 0x3c
jge 0x14001ac44
test dword [rcx + 0x38], 0xf000000
jne 0x14001ac44
cmp dword [rcx + 0x58], r15d
je 0x14001ac44
shr rdx, 0x1a
test r13b, dl
jne 0x14001ac5c
mov r8d, 0x7d4
jmp 0x14001ac4d
mov r12d, r13d
mov r8d, 0x9b3
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
test r12d, r12d
je 0x14001ace8
xor r13d, r13d
cmp dword [rbp - 0x50], r15d
jne 0x14001aceb
test dword [rdi + 0xbc], 0x10000
je 0x14001ac91
cmp byte [rsp + 0x32], r15b
mov r15d, dword [rsp + 0x58]
je 0x14001ac96
test r15d, r15d
jne 0x14001b7a0
jmp 0x14001ac96
mov r15d, dword [rsp + 0x58]
mov r8d, 1
test ebx, ebx
je 0x14001acd5
mov al, byte [rbp + 0x90]
shr al, 7
test r8b, al
je 0x14001acf6
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test r8b, al
jne 0x14001acf6
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x9c8
mov rcx, rdi
call fcn.14003b748
jmp 0x14001acf0
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003abc4
jmp 0x14001acf0
mov r12d, dword [rsp + 0x74]
xor r13d, r13d
mov r15d, dword [rsp + 0x58]
mov r8d, 1
test dword [rdi + 0xbc], 0x10000
jne 0x14001ad12
mov rax, qword [rbp + 0x90]
shr rax, 0x1e
test r8b, al
je 0x14001ad85
cmp dword [rdi + 0xb8], r13d
jl 0x14001ad6a
mov rax, qword [rbp + 0x98]
shr rax, 0x2e
test r8b, al
jne 0x14001ad6a
test r12d, r12d
jne 0x14001ad6a
mov rcx, qword [rbp + 0x78]
cmp qword [rcx + 0x328], r13
jne 0x14001ad6a
cmp qword [rcx + 0x338], r13
jne 0x14001ad6a
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x18]
cmp qword [rax + 0x338], r13
jne 0x14001ad6a
cmp qword [rax + 0x328], r13
jne 0x14001ad6a
cmp qword [rax + 0x330], r13
je 0x14001ad89
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x8f7
mov rcx, rdi
call fcn.14003b748
mov r8d, 1
mov rcx, qword [rbp + 0x78]
mov ebx, dword [rbp - 0x64]
mov esi, dword [rsp + 0x78]
test bx, bx
jne 0x14001ad9e
test si, si
je 0x14001ae45
mov eax, dword [rdi + 0xbc]
mov r9d, 2
mov dl, byte [rdi + 0xba]
or eax, r9d
mov dword [rdi + 0xbc], eax
test dl, 0xc2
je 0x14001ae38
lea ecx, [r9 + 2]
test cl, al
je 0x14001ae29
test dl, dl
jns 0x14001addc
mov rax, qword [0x140134380]
mov ecx, dword [rax + 0x5c]
sub ecx, r9d
cmp ecx, r8d
jbe 0x14001ae29
mov rcx, rdi
call fcn.140030130
mov r8d, 1
test eax, eax
je 0x14001ae34
mov al, byte [rbp + 0x90]
shr al, 7
test r8b, al
je 0x14001ae34
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test r8b, al
jne 0x14001ae34
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x8cb
mov rcx, rdi
call fcn.14003b748
mov r8d, 1
jmp 0x14001ae34
mov rax, qword [0x140134380]
or dword [rax + 0x38], r9d
mov rcx, qword [rbp + 0x78]
cmp bx, r8w
jne 0x14001ae45
or dword [rdi + 0xbc], 0x20
mov eax, dword [rdi + 0xbc]
cmp si, r8w
jne 0x14001ae5a
or eax, 0x10
mov dword [rdi + 0xbc], eax
mov r13, qword [rbp - 0x80]
test r8b, al
je 0x14001ae83
mov rax, qword [0x140134380]
test dword [rax + 4], 0x80000
jne 0x14001ae83
mov eax, 4
or dword [r13 + 0xec], eax
mov rcx, qword [rbp + 0x78]
movzx ebx, word [rsp + 0x48]
test bl, 7
je 0x14001aeb2
test dword [rdi + 0xbc], 0x10000
je 0x14001aeb2
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x806
mov rcx, rdi
call fcn.14003b748
mov rcx, qword [rbp + 0x78]
mov edx, dword [rsp + 0x64]
xor esi, esi
test edx, edx
je 0x14001aee5
test dword [rdi + 0xbc], 0x10000
je 0x14001aee5
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x818
mov rcx, rdi
call fcn.14003b748
mov rcx, qword [rbp + 0x78]
mov edx, dword [rsp + 0x64]
mov rax, qword [rbp + 0x90]
mov r8d, 1
shr rax, 0x27
test r8b, al
je 0x14001af2b
test dword [rdi + 0xbc], 0x10000
jne 0x14001af20
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x818
mov rcx, rdi
call fcn.14003b748
mov rcx, qword [rbp + 0x78]
mov eax, 1
mov edx, eax
mov dword [rsp + 0x64], eax
test edx, edx
je 0x14001b050
test bl, 0xe
jne 0x14001b01a
cmp dword [rbp - 0x78], esi
jne 0x14001b01a
cmp byte [rsp + 0x32], sil
jne 0x14001b01a
cmp dword [rsp + 0x38], esi
jne 0x14001b01a
cmp qword [rbp + 0x20], rsi
jne 0x14001b01a
cmp dword [rsp + 0x44], esi
jne 0x14001b01a
cmp qword [rbp + 0x38], rsi
jne 0x14001b01a
cmp qword [rbp + 0x40], rsi
jne 0x14001b01a
cmp qword [rbp], rsi
jne 0x14001b01a
cmp qword [rbp + 0x48], rsi
jne 0x14001b01a
cmp qword [rcx + 0x258], rsi
jne 0x14001b01a
cmp qword [rcx + 0x308], rsi
jne 0x14001b01a
cmp qword [rcx + 0x2e8], rsi
jne 0x14001b01a
cmp qword [rcx + 0x1a8], rsi
jne 0x14001b01a
cmp qword [rcx + 0x358], rsi
jne 0x14001b01a
cmp qword [rcx + 0x100], rsi
jne 0x14001b01a
cmp qword [rcx + 0x310], rsi
jne 0x14001b01a
cmp qword [rcx + 0x78], rsi
jne 0x14001b01a
cmp qword [rcx + 0x1e8], rsi
jne 0x14001b01a
cmp qword [rcx + 0xb8], rsi
jne 0x14001b01a
cmp qword [rcx + 0x1f0], rsi
jne 0x14001b01a
cmp qword [rcx + 0x90], rsi
jne 0x14001b01a
cmp qword [rcx + 0x218], rsi
jne 0x14001b01a
cmp qword [rcx + 0x88], rsi
jne 0x14001b01a
cmp qword [rcx + 0x98], rsi
je 0x14001b02f
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x806
mov rcx, rdi
call fcn.14003b748
test dword [rdi + 0xb8], 0x40000000
je 0x14001b050
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x8f0
mov rcx, rdi
call fcn.14003b748
mov rax, qword [rbp + 0x90]
mov ecx, 1
shr rax, 0x20
test cl, al
je 0x14001b0ef
mov rbx, qword [rdi + 8]
mov r9, rsi
test rbx, rbx
je 0x14001b0a2
lea r9, [0x14012cf68]
mov dword [rsp + 0x20], esi
lea r8, [0x14012d4f8]
xor edx, edx
mov rcx, rbx
call fcn.1400cbdc8
test rax, rax
je 0x14001b09b
mov r9, qword [rbx + 0x40]
jmp 0x14001b0a2
lea r9, [0x1400f48cb]
mov rcx, qword [rdi + 8]
call fcn.14002eb54
cmp byte [rax + 0x18], 0x12
je 0x14001b0e5
test r9, r9
je 0x14001b0d0
lea rdx, str.HRESULT
mov rcx, r9
call qword [sym.imp.msvcrt.dll__stricmp]
nop dword [rax + rax]
test eax, eax
je 0x14001b0e5
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x7f7
mov rcx, rdi
call fcn.14003b748
movzx ebx, word [rsp + 0x48]
mov ecx, 1
mov sil, byte [rsp + 0x30]
xor edx, edx
test sil, sil
je 0x14001b1d5
mov rax, qword [rbp + 0x90]
shr rax, 0x1e
test cl, al
je 0x14001b1d5
mov rax, qword [rdi + 0xb0]
cmp byte [rsp + 0x34], dl
je 0x14001b186
test rax, rax
je 0x14001b15b
mov ecx, dword [rax + 0x18]
movzx ecx, cl
cmp ecx, 0x12
je 0x14001b15b
cmp ecx, 0x1e
jne 0x14001b1d5
mov rax, qword [rax + 8]
test rax, rax
je 0x14001b15b
cmp byte [rax + 0x18], 0x1e
jne 0x14001b150
mov rax, qword [rax + 8]
test rax, rax
jne 0x14001b141
test rax, rax
je 0x14001b15b
cmp byte [rax + 0x18], 0x12
jne 0x14001b1d5
mov rax, qword [rdi + 8]
test rax, rax
je 0x14001b17e
cmp byte [rax + 0x18], 0x1e
jne 0x14001b173
mov rax, qword [rax + 8]
test rax, rax
jne 0x14001b164
test rax, rax
je 0x14001b17e
cmp byte [rax + 0x18], 0x12
jne 0x14001b1d5
mov r8d, 0x972
jmp 0x14001b1c4
test rax, rax
je 0x14001b1be
mov ecx, dword [rax + 0x18]
movzx ecx, cl
cmp ecx, 0x12
je 0x14001b1be
cmp ecx, 0x1e
jne 0x14001b1d5
mov rax, qword [rax + 8]
test rax, rax
je 0x14001b1be
cmp byte [rax + 0x18], 0x1e
jne 0x14001b1b3
mov rax, qword [rax + 8]
test rax, rax
jne 0x14001b1a4
test rax, rax
je 0x14001b1be
cmp byte [rax + 0x18], 0x12
jne 0x14001b1d5
mov r8d, 0x82d
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
xor edx, edx
mov rax, qword [rbp + 0x90]
mov ecx, 1
shr rax, 0x1f
test cl, al
je 0x14001b204
cmp qword [rbp], rdx
jne 0x14001b204
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x82e
mov rcx, rdi
call fcn.14003b748
xor edx, edx
cmp byte [rsp + 0x32], dl
je 0x14001b39d
test dword [rdi + 0xbc], 0x100
jne 0x14001b26c
cmp qword [rbp + 0x50], rdx
jne 0x14001b26c
cmp dword [rbp - 0x38], edx
jne 0x14001b26c
cmp dword [rbp - 0x34], edx
jne 0x14001b26c
cmp dword [rsp + 0x44], edx
jne 0x14001b26c
cmp dword [rsp + 0x38], edx
jne 0x14001b26c
cmp dword [rsp + 0x60], edx
jne 0x14001b26c
cmp dword [rbp - 0x60], edx
jne 0x14001b26c
cmp dword [rbp - 0x5c], edx
jne 0x14001b26c
cmp dword [rbp - 0x78], edx
jne 0x14001b26c
cmp dword [rsp + 0x64], edx
jne 0x14001b26c
test bl, 8
mov rbx, qword [rsp + 0x50]
jne 0x14001b271
mov rax, qword [rbx + 0x18]
cmp qword [rax + 0x338], rdx
je 0x14001b288
jmp 0x14001b271
mov rbx, qword [rsp + 0x50]
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x806
mov rcx, rdi
call fcn.14003b748
xor edx, edx
mov eax, dword [rdi + 0xbc]
bt eax, 0x10
jae 0x14001b2b9
test r15d, r15d
je 0x14001b2a3
bts eax, 9
mov dword [rdi + 0xbc], eax
cmp dword [rbp - 0x10], edx
jne 0x14001b333
test r14d, r14d
jne 0x14001b327
mov r8d, 0x933
jmp 0x14001b318
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003adb4
mov rcx, qword [rbp + 0x28]
xor r14d, r14d
test rcx, rcx
je 0x14001b2f7
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x1400cd70e.0]
test eax, eax
jne 0x14001b2f7
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x818
mov rcx, rdi
call fcn.14003b748
mov rax, qword [rbx + 0x18]
cmp qword [rax + 0x328], r14
jne 0x14001b327
test r12d, r12d
jne 0x14001b327
cmp dword [rdi + 0xb8], r14d
jl 0x14001b327
mov r8d, 0x935
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
mov rax, qword [0x140134380]
bts dword [rax + 0x38], 0xa
mov rax, qword [0x140134380]
test byte [rax + 8], 0x40
je 0x14001b359
lea r9, str._async_
mov r8d, 0x876
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
mov rcx, rdi
call fcn.1400301e8
xor edx, edx
test eax, eax
je 0x14001b39d
mov al, byte [rbp + 0x90]
lea ecx, [rdx + 1]
shr al, 7
test cl, al
je 0x14001b39d
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test cl, al
jne 0x14001b39d
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x90f
mov rcx, rdi
call fcn.14003b748
xor edx, edx
mov bl, byte [rsp + 0x33]
mov r12b, byte [rsp + 0x31]
mov r15, qword [rbp - 0x40]
mov r14, qword [rbp - 0x48]
test bl, bl
je 0x14001b3f5
test r12b, r12b
je 0x14001b3bc
mov rax, r15
jmp 0x14001b3cc
mov rax, r14
test sil, sil
je 0x14001b3cc
cmp byte [rsp + 0x34], dl
cmove rax, r15
test rax, rax
je 0x14001b3de
mov ecx, 4
test byte [rax + 0x98], cl
jne 0x14001b3f5
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x950
mov rcx, rdi
call fcn.14003b748
xor edx, edx
cmp dword [rsp + 0x5c], edx
je 0x14001b422
test sil, sil
je 0x14001b422
mov ecx, 1
cmp dword [rsp + 0x68], ecx
jle 0x14001b422
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x964
mov rcx, rdi
call fcn.14003b748
xor edx, edx
cmp byte [rsp + 0x34], dl
sete cl
test sil, cl
je 0x14001b4e0
mov r13, qword [rbp - 0x28]
lea rcx, [0x1400fa2a0]
mov eax, edx
mov r12d, 4
mov rsi, r13
test r13, r13
je 0x14001b453
mov r13, qword [r13 + 0x58]
jmp 0x14001b456
mov r13, rdx
cdqe
lea rbx, [rax + rax*4]
test rsi, rsi
je 0x14001b4b6
mov rax, qword [rsi]
mov edx, 0x23
mov rcx, rsi
mov rax, qword [rax + 0x20]
call qword [case.0x1400cd70e.0]
xor edx, edx
test eax, eax
je 0x14001b489
lea rcx, [0x1400fa2a0]
mov eax, dword [rcx + rbx*4 + 0xc]
jmp 0x14001b445
mov eax, dword [rsi + 0x98]
mov ecx, 1
test cl, al
lea rcx, [0x1400fa2a0]
je 0x14001b4a5
mov eax, dword [rcx + rbx*4 + 8]
jmp 0x14001b445
test r12b, al
je 0x14001b4b0
mov eax, dword [rcx + rbx*4 + 0x10]
jmp 0x14001b445
mov eax, dword [rcx + rbx*4 + 4]
jmp 0x14001b445
cmp dword [rcx + rbx*4], 7
mov r12b, byte [rsp + 0x31]
mov r13, qword [rbp - 0x80]
je 0x14001b4dc
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x99a
mov rcx, rdi
call fcn.14003b748
xor edx, edx
mov bl, byte [rsp + 0x33]
cmp byte [rsp + 0x35], dl
je 0x14001b59e
test bl, bl
mov rax, r15
cmovne rax, qword [rbp - 0x18]
cmovne r14, r15
test r12b, r12b
cmovne r14, rax
test r14, r14
je 0x14001b589
mov rax, qword [r14 + 8]
cmp byte [rax + 0x18], 0x2d
jne 0x14001b516
mov rax, qword [rax + 8]
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x14001b52a
cmp byte [rax + 0x18], 0x1e
jne 0x14001b52a
call fcn.140016614
cmp byte [rax + 0x18], 0x2f
jne 0x14001b589
mov rbx, qword [rax + 8]
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x14001b54b
cmp byte [rbx + 0x18], 0x1e
jne 0x14001b54b
call fcn.140016614
mov rbx, rax
mov dword [rsp + 0x20], edx
lea r9, [0x14012cf68]
xor edx, edx
lea r8, [0x14012d4f8]
mov rcx, rbx
call fcn.1400cbdc8
test rax, rax
je 0x14001b572
mov rcx, qword [rbx + 0x40]
jmp 0x14001b579
lea rcx, [0x1400f48cb]
lea rdx, str.tagVARIANT
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x14001b59e
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x939
mov rcx, rdi
call fcn.14003b748
mov rax, qword [r13]
mov rcx, r13
mov rax, qword [rax + 0x100]
call qword [case.0x1400cd70e.0]
xor esi, esi
test eax, eax
je 0x14001b5c8
bts dword [rdi + 0xbc], 0xd
mov rcx, rdi
call fcn.1400301e8
cmp dword [rbp - 0x38], esi
jne 0x14001b5d6
cmp dword [rbp - 0x34], esi
je 0x14001b685
movzx ebx, byte [rdi + 0xba]
mov r14d, 1
test r14b, bl
jne 0x14001b665
mov rax, qword [0x140134380]
cmp dword [rax + 0x58], 0x28
jne 0x14001b615
lea r9, str.interereted_notify
mov r8d, 0x997
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
mov rax, qword [0x140134380]
bts dword [rax + 0x38], 0xe
and bl, 0x82
mov eax, 2
cmp bl, al
jne 0x14001b665
mov rcx, rdi
call fcn.1400301e8
test eax, eax
je 0x14001b665
mov al, byte [rbp + 0x90]
shr al, 7
test r14b, al
je 0x14001b665
mov rax, qword [rbp + 0x90]
shr rax, 0x1a
test r14b, al
jne 0x14001b665
xor r9d, r9d
lea rdx, [rbp + 0x60]
mov r8d, 0x8f6
mov rcx, rdi
call fcn.14003b748
cmp dword [rbp - 0x58], esi
je 0x14001b68b
lea r9, str.notify_notify_flag
mov r8d, 0x9a7
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
jmp 0x14001b68b
mov r14d, 1
mov rcx, qword [rbp + 0x98]
cmp dword [rsp + 0x44], esi
je 0x14001b74a
mov rax, rcx
shr rax, 0x2b
test r14b, al
je 0x14001b6ef
lea r9, [0x14012cf68]
mov dword [rsp + 0x20], esi
lea r8, [0x14012d4f8]
xor edx, edx
mov rcx, rdi
call fcn.1400cbdc8
test rax, rax
je 0x14001b6cf
mov r9, qword [rdi + 0x40]
jmp 0x14001b6d6
lea r9, [0x1400f48cb]
mov r8d, 0x990
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003b748
mov rcx, qword [rbp + 0x98]
mov rax, rcx
shr rax, 0x31
test r14b, al
jne 0x14001b700
cmp dword [rbp + 0x10], esi
je 0x14001b74a
lea r9, [0x14012cf68]
mov dword [rsp + 0x20], esi
lea r8, [0x14012d4f8]
xor edx, edx
mov rcx, rdi
call fcn.1400cbdc8
test rax, rax
je 0x14001b727
mov rax, qword [rdi + 0x40]
jmp 0x14001b72e
lea rax, [0x1400f48cb]
mov r9, rax
lea rdx, [rbp + 0x60]
mov r8d, 0x9e3
mov rcx, rdi
call fcn.14003b748
mov rcx, qword [rbp + 0x98]
cmp dword [rdi + 0xc8], esi
je 0x14001b75f
movabs rax, 0x4000000000000
or rcx, rax
mov rdx, qword [rbp + 0x30]
bts rcx, 0x18
mov eax, dword [rbp + 0x88]
or qword [rdx + 0x38], rcx
add dword [rdx + 0x28], eax
mov rcx, qword [rbp + 0xa0]
xor rcx, rsp
call fcn.1400caef0
mov rbx, qword [rsp + 0x200]
add rsp, 0x1b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov r8d, 2
lea rdx, [rbp + 0x60]
mov rcx, rdi
call fcn.14003abc4
lea r8, [0x1400f48cc]
mov edx, 0xa66
lea rcx, str.com_rpcmidl_front_semantic.cxx
call fcn.1400c7a2c
int3