Function at 0x140120de0
Capabilities:
Inspect section memory permissions
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rcx
push rdi
push r12
push r13
sub rsp, 0x30
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x60], rbp
mov qword [rsp + 0x68], rsi
mov ebp, r8d
mov r12, rdx
mov rbx, rcx
lea rax, method.v.virtual_0
mov qword [rcx], rax
mov edx, 0xa
add rcx, 0x30
call fcn.140139b24
lea r11, method..45.virtual_0
mov qword [rbx + 0x30], r11
call fcn.140129a50
mov rdx, rax
xor r13d, r13d
mov ecx, r13d
test rax, rax
setne cl
test ecx, ecx
jne 0x140120e55
mov ecx, 0x80004005
call fcn.140002d80
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbx + 0x68], rax
mov dword [rbx + 0x74], 0xffffffff
mov dword [rbx + 0x78], r13d
mov qword [rbx + 8], r13
mov qword [rbx + 0x10], r13
mov dword [rbx + 0x18], r13d
mov dword [rbx + 0x1c], r13d
mov dword [rbx + 0x24], 0x1e
mov dword [rbx + 0x28], r13d
mov dword [rbx + 0x20], r13d
mov dword [rbx + 0x2c], r13d
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, [0x14017f438]
repne scasw ax, word [rdi]
not rcx
lea r8d, [rcx - 1]
lea rdx, [0x14017f438]
lea rcx, [rbx + 0x68]
call fcn.1400032e0
mov dword [rbx + 0x70], 0xffffffff
lea rax, method.v.virtual_0
mov qword [rbx], rax
mov qword [rbx + 0x10], r12
mov dword [rbx + 0x18], ebp
test r12, r12
je case.0x140121737.341970974
xor eax, eax
mov dword [rbx + 0x80], eax
mov dword [rbx + 0x84], eax
xor edx, edx
lea r8d, [rax + 0x60]
lea rcx, [rbx + 0x88]
call fcn.1401489d0
movzx ecx, word [r12 + 0x432]
sub ecx, 0x1025
je 0x140120fa0
sub ecx, 0x1e
je 0x140120f40
cmp ecx, 0x41f
jne 0x140121006
mov rax, qword [rbx + 0x10]
or dword [rax + 0x30], 0x400000
mov rax, qword [rbx + 0x10]
or dword [rax + 0x530], 0x400
jmp 0x140121006
mov rax, qword [rbx + 0x10]
or dword [rax + 0x30], 0x1000
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x800
mov rax, qword [rbx + 0x10]
or dword [rax + 0x58], 2
movzx eax, word [r12 + 0x430]
and ax, 0xf000
cmp ax, 0x1000
jne 0x140120f8a
mov dword [rbx + 0x20], r13d
mov dword [rbx + 0x28], 1
mov dword [rbx + 0x24], 0x1e
mov dword [rbx + 0x1c], 1
mov rax, qword [rbx + 0x10]
test byte [rax + 0x1aa], 1
je 0x140121006
and dword [rax + 0x2c], 0xfffff7ff
jmp 0x140121006
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x40000000
mov rax, qword [rbx + 0x10]
bt dword [rax + 0x25c], 0x15
jae 0x140120fc3
test byte [rax + 0x70], 0x80
jne 0x140120fc3
or dword [rax + 0x30], 2
mov rax, qword [rbx + 0x10]
or dword [rax + 0x30], 1
mov rax, qword [rbx + 0x10]
cmp dword [rax + 0x1c20], 1
jne 0x140120fea
or dword [rax + 0x30], 0x4000000
mov rax, qword [rbx + 0x10]
or dword [rax + 0x34], 0x2000000
mov rax, qword [rbx + 0x10]
mov ecx, dword [rax + 0x104]
shl ecx, 2
xor ecx, dword [rbx + 0x80]
and ecx, 8
xor dword [rbx + 0x80], ecx
mov eax, dword [rbx + 0x18]
lea rdx, [0x140000000]
cmp eax, 0x153
jg 0x14012111c
cmp eax, 0x153
je case.0x140121048.48
sub eax, 0x24
cmp eax, 0xca
ja case.0x140121048.50
cdqe
movzx eax, byte [rdx + rax + 0x121990]
mov ecx, dword [rdx + rax*4 + 0x121954]
add rcx, rdx
jmp rcx
mov rax, qword [rbx + 0x10]
or dword [rax + 0x70], 1
mov rax, qword [rbx + 0x10]
or dword [rax + 0x70], 2
jmp case.0x140121048.50
mov rax, qword [rbx + 0x10]
or dword [rax + 0x70], 2
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x10
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x20
jmp case.0x140121048.50
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x20
jmp case.0x140121048.50
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x8000000
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x20
jmp case.0x140121048.50
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 4
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x40
jmp case.0x140121048.50
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 8
jmp case.0x140121048.50
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x800
jmp case.0x140121048.50
mov rax, qword [rbx + 0x10]
and dword [rax + 0x2c], 0xfffff7ff
jmp case.0x140121048.50
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x40
jmp case.0x140121048.50
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x40
jmp case.0x140121048.50
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x40
jmp case.0x140121048.50
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x100000
or dword [rbx + 0x80], 1
jmp case.0x140121048.50
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x10000000
jmp case.0x140121048.50
cmp eax, 0x15b
je case.0x140121048.48
add eax, 0xfffffe9e
cmp eax, 1
ja case.0x140121048.50
mov rax, qword [rbx + 0x10]
and dword [rax + 0x2c], 0xfffff7ff
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x200000
movzx ecx, word [r12 + 0x432]
shl ecx, 0x10
movzx eax, word [r12 + 0x430]
or ecx, eax
cmp ecx, 0x104316d3
ja 0x1401214a4
cmp ecx, 0x104316d3
je 0x140121494
cmp ecx, 0x1025022b
ja 0x1401212fb
cmp ecx, 0x10250229
jae case.0x140121337.270860854
cmp ecx, 0x10250128
ja 0x1401211ca
cmp ecx, 0x10250128
je case.0x1401211ee.270860602
cmp ecx, 0x10192991
je 0x1401211ba
cmp ecx, 0x1019a88d
jne case.0x140121737.341970974
or dword [rbx + 0x80], 2
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x34], 0x400
jmp case.0x140121737.341970974
add ecx, 0xefdafec8
cmp ecx, 0xe9
ja case.0x140121737.341970974
movzx eax, byte [rdx + rcx + 0x121a88]
mov ecx, dword [rdx + rax*4 + 0x121a5c]
add rcx, rdx
jmp rcx
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x20
mov rax, qword [rbx + 0x10]
or dword [rax + 0x34], 0x8000
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x20
mov rax, qword [rbx + 0x10]
or dword [rax + 0x30], 0x80000
mov dword [rbx + 0x24], 0xa
mov dword [rbx + 0x1c], 1
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x20
mov rax, qword [rbx + 0x10]
or dword [rax + 0x30], 0x80000
mov dword [rbx + 0x24], 0xa
mov dword [rbx + 0x1c], 1
or dword [rbx + 0x80], 0x400
mov rax, qword [rbx + 0x10]
or dword [rax + 0x34], 0x20000
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x20
mov rax, qword [rbx + 0x10]
or dword [rax + 0x30], 0x80000
mov dword [rbx + 0x24], 0xa
mov dword [rbx + 0x1c], 1
mov rax, qword [rbx + 0x10]
or dword [rax + 0x34], 0x10
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x20
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x20
or dword [rbx + 0x80], 8
mov rax, qword [rbx + 0x10]
or dword [rax + 0x30], 0x2000000
mov rax, qword [rbx + 0x10]
or dword [rax + 0x30], 0x40000
or dword [rbx + 0x80], 0x40
lea rcx, [rbx + 0x88]
lea rdx, [0x1401ec050]
mov r8d, 0x60
call fcn.140148c90
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x20
jmp case.0x140121737.341970974
cmp ecx, 0x10250518
ja 0x140121391
cmp ecx, 0x10250518
je 0x140121413
add ecx, 0xefdafdcb
cmp ecx, 0xd6
ja case.0x140121737.341970974
movzx eax, byte [rdx + rcx + 0x121b8c]
mov ecx, dword [rdx + rax*4 + 0x121b74]
add rcx, rdx
jmp rcx
mov rax, qword [rbx + 0x10]
or dword [rax + 0x30], 0x40000
or dword [rbx + 0x80], 0x408
jmp case.0x140121737.341970974
or dword [rbx + 0x80], 0x400
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x34], 0x2000000
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x34], 0x20000
jmp case.0x140121737.341970974
or dword [rbx + 0x80], 0x408
jmp case.0x140121737.341970974
cmp ecx, 0x10431153
ja 0x140121438
cmp ecx, 0x10431153
je 0x140121420
cmp ecx, 0x10250626
ja 0x1401213ea
cmp ecx, 0x10250626
je 0x140121413
cmp ecx, 0x10250563
jb case.0x140121737.341970974
cmp ecx, 0x10250564
jbe 0x1401213de
cmp ecx, 0x10250618
je 0x140121413
cmp ecx, 0x1025061c
je 0x140121413
jmp case.0x140121737.341970974
or dword [rbx + 0x80], 8
jmp case.0x140121737.341970974
cmp ecx, 0x1025063f
jb case.0x140121737.341970974
cmp ecx, 0x10250642
jbe 0x140121413
cmp ecx, 0x10431033
je 0x140121420
cmp ecx, 0x10431053
je 0x140121466
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x50], 0x40
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x3c], 4
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x8000000
jmp case.0x140121737.341970974
cmp ecx, 0x10431343
ja 0x140121476
cmp ecx, 0x10431343
je 0x140121487
sub ecx, 0x10431163
je 0x140121466
sub ecx, 0x60
je 0x1401215e9
cmp ecx, 0x175
je 0x140121487
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x8000000
jmp case.0x140121737.341970974
sub ecx, 0x104313b2
je 0x140121487
cmp ecx, 0x11
jne case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x70], 2
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x30], 0x800
jmp case.0x140121737.341970974
cmp ecx, 0x14621004
ja 0x140121706
cmp ecx, 0x14621004
je case.0x140121737.341970972
cmp ecx, 0x1043831a
ja 0x1401215f8
cmp ecx, 0x1043831a
je 0x140121639
cmp ecx, 0x104319a3
ja 0x140121570
cmp ecx, 0x104319a3
je 0x1401215e9
cmp ecx, 0x10431873
ja 0x14012155a
cmp ecx, 0x10431873
je 0x14012152b
sub ecx, 0x10431723
je 0x14012151e
sub ecx, 0x40
je 0x1401215e9
cmp ecx, 0xc0
je 0x1401215e9
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x34], 8
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x30], 0x80000000
mov rax, qword [rbx + 0x10]
or dword [rax + 0x34], 1
or dword [rbx + 0x80], 0x28
mov rax, qword [rbx + 0x10]
or dword [rax + 0x34], 2
mov rax, qword [rbx + 0x10]
or dword [rax + 0x34], 4
jmp case.0x140121737.341970974
sub ecx, 0x10431878
je 0x1401215e9
cmp ecx, 0x1b
je 0x1401215e9
jmp case.0x140121737.341970974
sub ecx, 0x104319b3
je 0x1401215e9
sub ecx, 0x6834
je 0x1401215dc
sub ecx, 0xe4
je 0x1401215cc
sub ecx, 0x3c
je 0x1401215bd
cmp ecx, 0x10
jne case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x30], 0x80000000
mov rax, qword [rbx + 0x10]
or dword [rax + 0x34], 1
or dword [rbx + 0x80], 0x28
mov rax, qword [rbx + 0x10]
or dword [rax + 0x34], 2
jmp case.0x140121737.341970974
or dword [rbx + 0x80], 0x184
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x30], 0x200
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x20
jmp case.0x140121737.341970974
or dword [rbx + 0x80], 0x200
jmp case.0x140121737.341970974
cmp ecx, 0x104384b0
ja 0x140121660
cmp ecx, 0x104384b0
je 0x140121649
sub ecx, 0x10438330
je 0x140121639
sub ecx, 0x1a
je 0x140121639
sub ecx, 0x15
je 0x140121629
sub ecx, 0x39
je 0x140121639
cmp ecx, 0x36
je 0x140121639
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x34], 0x80
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x34], 0x4000000
jmp case.0x140121737.341970974
or dword [rbx + 0x80], 0x4000
mov rax, qword [rbx + 0x10]
or dword [rax + 0x34], 0x40
jmp case.0x140121737.341970974
sub ecx, 0x104384bc
je 0x1401216f6
sub ecx, 0x2dc344
je 0x1401216d5
sub ecx, 0x4808
je 0x1401216bb
sub ecx, 0x68
je 0x14012169a
cmp ecx, 0x97104
jne case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x20
jmp case.0x140121737.341970974
mov dword [rbx + 0x28], 1
mov dword [rbx + 0x20], 1
mov dword [rbx + 0x24], 3
mov dword [rbx + 0x1c], 1
jmp case.0x140121737.341970974
mov dword [rbx + 0x20], 1
mov dword [rbx + 0x24], 3
mov dword [rbx + 0x1c], 1
jmp case.0x140121737.341970974
mov dword [rbx + 0x28], 1
mov dword [rbx + 0x20], 1
mov dword [rbx + 0x24], reloc.OLEAUT32.dll_SafeArrayDestroy
mov dword [rbx + 0x1c], 1
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x50], 0x4000
jmp case.0x140121737.341970974
cmp ecx, 0x14623783
ja 0x14012176d
cmp ecx, 0x14623783
je 0x140121753
add ecx, 0xeb9defe4
cmp ecx, 0x64
ja case.0x140121737.341970974
movzx eax, byte [rdx + rcx + 0x121c70]
mov ecx, dword [rdx + rax*4 + 0x121c64]
add rcx, rdx
jmp rcx
mov rax, qword [rbx + 0x10]
or dword [rax + 0x3c], 0x20
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x44], 1
jmp case.0x140121737.341970974
mov dword [rbx + 0x20], 1
mov dword [rbx + 0x28], 1
mov dword [rbx + 0x1c], 1
jmp case.0x140121737.341970974
cmp ecx, 0x14627517
ja 0x14012187d
cmp ecx, 0x14627517
je 0x140121870
cmp ecx, 0x14626481
ja 0x140121807
cmp ecx, 0x14626481
je 0x1401217fb
cmp ecx, 0x1462524b
ja 0x1401217ca
cmp ecx, 0x1462524a
jae 0x14012183b
sub ecx, 0x14624aa7
je 0x1401217ba
cmp ecx, 0xa
jne case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x400000
jmp case.0x140121737.341970974
cmp ecx, 0x1462531b
je 0x14012183b
cmp ecx, 0x14626300
jne case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x20
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 8
mov rax, qword [rbx + 0x10]
or dword [rax + 0x4c], 1
jmp case.0x140121737.341970974
or dword [rbx + 0x80], 4
jmp case.0x140121737.341970974
cmp ecx, 0x1462678a
je 0x140121860
cmp ecx, 0x14627248
je 0x14012184b
cmp ecx, 0x1462736a
je 0x14012183b
cmp ecx, 0x14627441
jne case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x34], 0x2000
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x30], 0x4000
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x40
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 4
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x50], 0x400
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x34], 0x10
jmp case.0x140121737.341970974
cmp ecx, 0x17ff0594
ja 0x1401218f0
cmp ecx, 0x17ff0594
je 0x1401218e7
sub ecx, 0x15093005
je 0x1401218da
sub ecx, 0x2b6e0d2
je 0x1401218bb
sub ecx, 0x3ef4b9
je 0x1401218ae
cmp ecx, 2
jne case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x2c], 0x400000
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x34], 0x40
or dword [rbx + 0x80], 0x1000
mov rax, qword [rbx + 0x10]
mov dword [rax + 0x40], 1
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x30], 0x20000000
jmp case.0x140121737.341970974
or dword [rbx + 0x80], 0x10
jmp case.0x140121737.341970974
sub ecx, 0x1b0a00ad
je 0x14012192d
sub ecx, 0x1a
je 0x140121923
sub ecx, 8
je 0x140121916
cmp ecx, 0x1fd1
jne case.0x140121737.341970974
or dword [rbx + 0x80], 0x8000
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x3c], 0x800
jmp case.0x140121737.341970974
mov rax, qword [rbx + 0x10]
or dword [rax + 0x4c], 8
jmp case.0x140121737.341970974
or dword [rbx + 0x80], 0x800
mov rax, rbx
mov rbx, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
add rsp, 0x30
pop r13
pop r12
pop rdi
ret