Function at 0x1400400e0
Capabilities:
Check for time delay via gettickcount
Empty recycle bin quietly
Empty the recycle bin
Encode data using base64
Find taskbar
Move file
Print debug messages
Set environment variable

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], r8
mov dword [rax + 0x10], edx
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
lea rbp, [rax - 0xa08]
sub rsp, 0xae8
mov qword [rbp + 0x130], 0xfffffffffffffffe
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
lea rax, [rbp + 0xa28]
test r9, r9
cmovne rax, r9
mov qword [rbp - 0x48], rax
xor edi, edi
mov qword [rax], rdi
mov rax, qword [0x1401255c8]
mov qword [rbp - 0x58], rax
mov rsi, rcx
mov qword [rsp + 0x68], rcx
lea ebx, [rdi + 1]
test rcx, rcx
je case.0x140040577.107
movsd xmm10, qword [0x140112018]
xorpd xmm8, xmm8
movsd xmm11, qword [0x140112050]
movsd xmm9, qword [0x140112048]
movzx eax, byte [rbp + 0xa10]
mov dword [rbp - 0x50], eax
nop word [rax + rax]
cmp dword [0x14012d254], 0
je 0x1400401ca
cmp qword [0x14012d238], 0
je 0x1400401b7
mov rcx, qword [0x14012d228]
call qword [sym.imp.KERNEL32.DLL_GlobalUnlock]
mov qword [0x14012d238], rdi
call qword [sym.imp.USER32.DLL_CloseClipboard]
mov dword [0x14012d254], edi
mov qword [0x14012d228], rdi
call qword [sym.imp.KERNEL32.DLL_GetTickCount]
mov edi, eax
mov ecx, eax
sub ecx, dword [0x14012d1a4]
mov rax, qword [0x1401255c8]
cmp ecx, dword [rax + 0x118]
jbe 0x140040220
xor eax, eax
mov dword [rsp + 0x20], eax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0x150]
call qword [sym.imp.USER32.DLL_PeekMessageW]
test eax, eax
je 0x140040212
mov edx, ebx
or ecx, 0xffffffff
call fcn.140001b60
call qword [sym.imp.KERNEL32.DLL_GetTickCount]
mov edi, eax
mov dword [0x14012d1a4], eax
mov r8, qword [rbp - 0x58]
cmp byte [r8 + 0x12c], 0
jne 0x14004025c
cmp byte [r8 + 0x12e], 0
jne 0x14004025c
mov eax, dword [0x14012d198]
cmp eax, 0xffffffff
jle 0x14004025c
mov ecx, dword [r8 + 0x38]
cmp ecx, eax
jle 0x140040255
mov byte [r8 + 0x12c], 1
jmp 0x14004025c
lea eax, [rcx + 1]
mov dword [r8 + 0x38], eax
mov rax, qword [r8]
mov rdx, qword [0x14012d190]
cmp rax, 0xffffffffffffffff
jle 0x140040271
cmp rdx, rax
jge 0x140040284
mov eax, dword [r8 + 0x34]
cmp eax, 0xffffffff
jle 0x14004029b
sub edi, dword [0x14012d1a0]
cmp edi, eax
jb 0x14004029b
mov edx, ebx
mov ecx, 0xa
call fcn.140001b60
mov rdx, qword [0x14012d190]
mov r8, qword [rbp - 0x58]
cmp byte [r8 + 0x138], 0
je 0x1400402d5
mov rsi, qword [rbp - 0x58]
nop dword [rax]
mov edx, ebx
mov ecx, 0x8000012f
call fcn.140001b60
cmp byte [rsi + 0x138], 0
jne 0x1400402b0
mov rsi, qword [rsp + 0x68]
mov rdx, qword [0x14012d190]
mov r8, qword [rbp - 0x58]
mov qword [0x14012cc60], rsi
cmp byte [r8 + 0x139], 0
je 0x14004032d
movsxd rax, dword [0x14012b788]
lea rdi, [0x140000000]
mov qword [rdi + rax*8 + 0x12b790], rsi
call qword [sym.imp.KERNEL32.DLL_GetTickCount]
movsxd rcx, dword [0x14012b788]
mov dword [rdi + rcx*4 + 0x12a310], eax
inc ecx
cmp ecx, 0x190
mov eax, 0
cmovge ecx, eax
mov dword [0x14012b788], ecx
mov rdx, qword [0x14012d190]
cmp qword [0x14012c500], 0xffffffffffffffff
je 0x14004034b
cmp byte [rsi], 0x6b
je 0x14004034b
mov rcx, rsi
call fcn.140008320
mov rdx, qword [0x14012d190]
mov r10, qword [rsp + 0x68]
movzx eax, byte [r10]
cmp al, 1
je 0x140040394
cmp al, 0x6b
je 0x140040394
mov rdi, qword [rbp + 0xa20]
cmp al, 0x72
je 0x14004039b
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rdx, rdi
mov rcx, r10
call fcn.140096bf0
mov dword [rsp + 0x60], eax
cmp eax, 1
jne 0x14004677e
mov rdx, qword [0x14012d190]
mov r10, qword [rsp + 0x68]
jmp 0x14004039b
mov rdi, qword [rbp + 0xa20]
movzx esi, byte [r10]
mov dword [rbp - 0x78], esi
cmp sil, 9
jb 0x140040548
cmp sil, 0x20
ja 0x140040548
inc rdx
mov qword [0x14012d190], rdx
mov rcx, r10
call fcn.140046c70
cmp eax, 3
jne 0x140040492
mov rcx, qword [rsp + 0x68]
mov rax, qword [rcx + 0x20]
cmp byte [rax], 0x75
jne 0x14004040f
nop
lea r9, [rbp - 0x70]
mov r8, rdi
mov edx, 2
mov rcx, qword [rax + 0x20]
call fcn.1400400e0
mov edx, eax
mov dword [rsp + 0x60], eax
mov r10, qword [rsp + 0x68]
mov rax, qword [r10 + 0x20]
mov rcx, qword [rbp - 0x70]
cmp rcx, rax
je 0x1400403e0
jmp 0x140040432
lea r9, [rbp - 0x70]
mov r8, rdi
mov edx, 3
mov rcx, rax
call fcn.1400400e0
mov edx, eax
mov dword [rsp + 0x60], eax
mov rcx, qword [rbp - 0x70]
mov r10, qword [rsp + 0x68]
cmp rcx, r10
je 0x1400463e0
cmp dword [rbp + 0xa18], 3
je 0x140046401
cmp edx, 1
jne 0x140046401
test rcx, rcx
je 0x140040471
mov rax, qword [r10 + 0x30]
cmp qword [rcx + 0x30], rax
jne 0x1400463f5
mov r10, rcx
mov qword [rsp + 0x68], rcx
jmp 0x1400463e0
mov r10, qword [r10 + 0x28]
mov qword [rsp + 0x68], r10
cmp byte [r10], 0x21
jne 0x1400463e0
mov r10, qword [r10 + 0x28]
mov qword [rsp + 0x68], r10
jmp 0x1400463e0
mov r10, qword [rsp + 0x68]
mov r10, qword [r10 + 0x28]
mov qword [rsp + 0x68], r10
cmp byte [r10], 0x21
jne 0x140040536
mov rax, qword [r10 + 0x20]
cmp byte [rax], 0x75
jne 0x1400404ef
nop word [rax + rax]
lea r9, [rbp - 0x70]
mov r8, rdi
mov edx, 2
mov rcx, qword [rax + 0x20]
call fcn.1400400e0
mov ebx, eax
mov dword [rsp + 0x60], eax
mov r10, qword [rsp + 0x68]
mov rax, qword [r10 + 0x20]
mov rcx, qword [rbp - 0x70]
cmp rcx, rax
je 0x1400404c0
jmp 0x140040512
lea r9, [rbp - 0x70]
mov r8, rdi
mov edx, 3
mov rcx, rax
call fcn.1400400e0
mov ebx, eax
mov dword [rsp + 0x60], eax
mov rcx, qword [rbp - 0x70]
mov r10, qword [rsp + 0x68]
cmp dword [rbp + 0xa18], 3
je 0x1400463f5
cmp ebx, 1
jne 0x1400463f5
test rcx, rcx
je 0x140041813
jmp 0x1400463c9
cmp dword [rbp + 0xa18], 3
je case.0x140040577.107
jmp 0x1400463e0
movzx eax, sil
add eax, 0xffffffa0
lea r8, [0x140000000]
cmp eax, 0x80
ja case.0x140040577.112
cdqe
movzx eax, byte [r8 + rax + 0x467f0]
mov ecx, dword [r8 + rax*4 + 0x467ac]
add rcx, r8
jmp rcx
inc rdx
mov qword [0x14012d190], rdx
mov rdx, qword [r10 + 0x28]
test rdx, rdx
je 0x1400405a7
mov qword [rbp - 8], rdx
xor eax, eax
mov edi, eax
cmp qword [r10 + 0x10], 1
sete dil
mov rsi, qword [rbp - 0x58]
test edi, edi
je 0x140040614
jmp 0x1400405f7
mov dl, 1
mov rcx, r10
call fcn.140075070
mov rdx, rax
mov qword [rbp - 8], rax
test rax, rax
je 0x140046452
mov rsi, qword [rbp - 0x58]
cmp qword [rsi + 0xd8], 0
je 0x140040610
mov rax, qword [rax + 0x10]
mov rcx, qword [rax + 0x30]
test rcx, rcx
je 0x1400405f5
nop dword [rax]
cmp qword [rcx + 0x10], 1
jne 0x1400405ec
cmp byte [rcx], 0x75
je 0x140040610
mov rcx, qword [rcx + 0x30]
test rcx, rcx
jne 0x1400405e0
mov edi, ebx
mov rax, qword [rsi + 0xd8]
mov qword [rsi + 0xe0], rax
xor eax, eax
mov qword [rsi + 0xd8], rax
jmp 0x140040614
xor eax, eax
mov edi, eax
mov rcx, rdx
call fcn.140001930
mov ebx, eax
mov dword [rsp + 0x60], eax
test edi, edi
je 0x14004063d
mov rax, qword [rsi + 0xe0]
mov qword [rsi + 0xd8], rax
xor eax, eax
mov qword [rsi + 0xe0], rax
test ebx, ebx
je case.0x140040577.107
cmp ebx, 8
je case.0x140040577.107
cmp dword [rbp + 0xa18], 3
je 0x140046420
mov r10, qword [rsp + 0x68]
mov r10, qword [r10 + 0x20]
mov qword [rsp + 0x68], r10
jmp 0x1400463db
inc rdx
mov qword [0x14012d190], rdx
mov rcx, qword [r10 + 0x28]
mov qword [rbp - 8], rcx
test rcx, rcx
jne 0x1400406a4
mov dl, 1
mov rcx, r10
call fcn.140075070
mov rcx, rax
mov qword [rbp - 8], rax
test rax, rax
je 0x140046452
mov r10, qword [rsp + 0x68]
mov rdx, qword [rbp - 0x58]
mov qword [rdx + 0xe8], rcx
cmp dword [rbp + 0xa18], 3
je 0x140046430
mov rdx, qword [rcx + 0x10]
mov rax, qword [rdx + 0x30]
cmp qword [r10 + 0x30], rax
jne 0x140046430
mov r10, rdx
mov qword [rsp + 0x68], rdx
jmp 0x1400463e0
inc rdx
mov qword [0x14012d190], rdx
mov rdi, qword [rbp + 0xa10]
mov rdi, qword [rdi + 0x10]
test rdi, rdi
jne 0x140040740
mov rbx, qword [0x14012a9f0]
cmp word [rbx], di
jne 0x14004070a
xor edx, edx
mov edi, edx
lea ebx, [rdx + 1]
jmp 0x140040742
mov rdi, qword [0x14012c620]
test rdi, rdi
je 0x140040701
nop word [rax + rax]
mov rdx, rbx
mov rcx, qword [rdi + 8]
call fcn.1400d6a7c
test eax, eax
je 0x14004073b
mov rdi, qword [rdi + 0x28]
test rdi, rdi
jne 0x140040720
jmp 0x140040701
mov ebx, 1
xor edx, edx
mov esi, ebx
mov dword [rsp + 0x60], ebx
mov ebx, edx
test rdi, rdi
je 0x140040842
mov rcx, qword [0x14012a9f8]
cmp word [rcx], 0
je 0x140040774
lea rdx, [0x1400f62d4]
call fcn.1400d6a7c
test eax, eax
jne 0x140040774
mov dl, 1
jmp 0x140040776
xor edx, edx
lea r8, [rbp - 8]
mov rcx, rdi
call fcn.1400c1790
mov ebx, eax
mov r8, qword [rbp - 8]
test r8, r8
je 0x140040842
mov rdx, qword [r8 + 0x10]
mov rcx, qword [rdx + 0x30]
test rcx, rcx
je 0x1400407bb
mov rdi, qword [rsp + 0x68]
mov rax, qword [rdi + 0x30]
test rax, rax
je 0x140046439
cmp rcx, rax
je 0x1400407bb
mov rax, qword [rax + 0x30]
jmp 0x1400407a7
mov r9, qword [rbp - 0x58]
mov rcx, qword [r9 + 0xd8]
test rcx, rcx
je 0x140040800
mov rax, qword [rdx + 0x30]
test rax, rax
je 0x1400407e9
cmp qword [rax + 0x10], 1
jne 0x1400407e0
cmp byte [rax], 0x75
je 0x140040800
mov rax, qword [rax + 0x30]
test rax, rax
jne 0x1400407d4
mov edi, 1
mov qword [r9 + 0xe0], rcx
xor eax, eax
mov qword [r9 + 0xd8], rax
jmp 0x140040804
xor eax, eax
mov edi, eax
mov rcx, r8
call fcn.140001930
mov esi, eax
mov dword [rsp + 0x60], eax
test edi, edi
je 0x140040831
mov rcx, qword [rbp - 0x58]
mov rax, qword [rcx + 0xe0]
mov qword [rcx + 0xd8], rax
xor eax, eax
mov qword [rcx + 0xe0], rax
test esi, esi
je 0x140046464
cmp esi, 8
je 0x140046464
test ebx, ebx
sete dl
mov rcx, qword [rbp + 0xa10]
call fcn.14004ced0
cmp dword [rbp + 0xa18], 3
je 0x140046459
mov r10, qword [rsp + 0x68]
mov r10, qword [r10 + 0x20]
mov qword [rsp + 0x68], r10
jmp 0x1400463db
mov rdi, qword [r10 + 0x10]
mov rax, rdi
dec rax
je 0x1400408c9
sub rax, 3
je 0x1400408ac
cmp rax, 5
jne 0x140040aab
xor r9d, r9d
xor r8d, r8d
mov edx, ebx
mov rcx, qword [0x14012a9f8]
call fcn.1400251f0
mov qword [rbp - 0x10], rax
jmp 0x140040acb
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x14012a9f0]
call fcn.1400251f0
mov qword [rbp - 0x10], rax
jmp 0x140040aee
movzx ecx, byte [r10 + 1]
test ecx, ecx
je 0x140040b71
dec ecx
je 0x140040902
lea rdx, [0x1400f9e20]
mov rcx, qword [0x14012a9f0]
call fcn.1400d6a7c
test eax, eax
jne 0x140040a7e
lea edi, [rax + 5]
mov r10, qword [rsp + 0x68]
jmp 0x140040b76
mov rbx, qword [0x14012a9f0]
nop dword [rax]
movzx eax, word [rbx]
cmp ax, 0x20
je 0x14004091f
cmp ax, 9
jne 0x140040925
add rbx, 2
jmp 0x140040910
movzx eax, word [rbx]
test ax, ax
je 0x140040b71
cmp ax, 0x2d
je 0x14004093d
cmp ax, 0x2b
jne 0x140040941
add rbx, 2
cmp word [rbx], 0x30
jne 0x140040971
movzx eax, word [rbx + 2]
cmp ax, 0x78
je 0x140040957
cmp ax, 0x58
jne 0x140040971
movzx ecx, word [rbx + 4]
call fcn.1400d6b84
test eax, eax
je 0x140040971
mov eax, 1
add rbx, 4
xor edx, edx
jmp 0x140040975
xor edx, edx
mov eax, edx
mov esi, edx
mov ecx, edx
mov dword [rsp + 0x70], edx
movzx edi, word [rbx]
cdqe
mov qword [rbp - 0x80], rax
cmp edi, 0x20
je 0x140040a50
nop
cmp edi, 9
je 0x140040a4d
test edi, edi
je 0x140040a49
cmp edi, 0x2e
jne 0x1400409bc
test esi, esi
jne 0x140040a7e
test rax, rax
jne 0x140040a7e
lea esi, [rdi - 0x2d]
jmp 0x140040a38
test rax, rax
je 0x1400409d8
movzx ecx, di
call fcn.1400d94d4
xor edx, edx
mov ecx, edx
test eax, eax
sete cl
test ecx, ecx
je 0x140040a2b
jmp 0x1400409e0
lea eax, [rdi - 0x30]
cmp eax, 9
jbe 0x140040a2b
movzx ecx, di
call fcn.140014b80
cmp ax, 0x45
jne 0x140040a7e
test esi, esi
je 0x140040a7e
cmp dword [rsp + 0x70], 0
je 0x140040a7e
movzx eax, word [rbx + 2]
cmp ax, 0x2d
je 0x140040a11
cmp ax, 0x2b
jne 0x140040a15
add rbx, 2
movzx eax, word [rbx + 2]
cmp ax, 0x30
jb 0x140040a7e
cmp ax, 0x39
ja 0x140040a7e
mov ecx, dword [rsp + 0x70]
jmp 0x140040a34
mov ecx, 1
mov dword [rsp + 0x70], ecx
mov rax, qword [rbp - 0x80]
add rbx, 2
movzx edi, word [rbx]
cmp edi, 0x20
je 0x140040a4d
jmp 0x140040990
xor edx, edx
jmp 0x140040a6b
xor edx, edx
nop
movzx eax, word [rbx]
cmp ax, 0x20
je 0x140040a5f
cmp ax, 9
jne 0x140040a65
add rbx, 2
jmp 0x140040a50
cmp word [rbx], 0
jne 0x140040a7e
test ecx, ecx
je 0x140040a7e
mov eax, edx
test esi, esi
setne al
inc eax
jne 0x140040b6c
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x14012a9f0]
call fcn.1400251f0
mov qword [rbp - 0x10], rax
xor eax, eax
mov edi, eax
cmp qword [rbp - 0x10], rax
setne dil
mov r10, qword [rsp + 0x68]
add rdi, 3
cmp rdi, 3
je 0x140040b2a
cmp rdi, 4
je 0x140040aee
cmp rdi, 8
jbe 0x140040b76
cmp rdi, 0xa
ja 0x140040b76
mov rcx, qword [0x14012aa00]
call fcn.140027ba0
mov ecx, eax
mov dword [rbp - 0x40], eax
shr eax, 2
and al, 1
mov dword [rbp - 0x50], eax
je 0x140040b1b
and ecx, 0xfffffffb
mov dword [rbp - 0x40], ecx
jmp 0x140040b1b
mov rcx, qword [0x14012aa00]
call fcn.140027b30
mov ecx, eax
mov dword [rbp - 0x40], eax
mov rax, qword [0x14012aa08]
cmp word [rax], 0x31
jne 0x140040b17
cmp word [rax + 2], 0
mov byte [rbp - 0x50], 1
je 0x140040b1b
mov byte [rbp - 0x50], 0
test ecx, ecx
je 0x14004646b
mov r10, qword [rsp + 0x68]
jmp 0x140040b76
mov rcx, qword [0x14012a9f8]
call fcn.140027b30
mov dword [rbp - 0x40], eax
cmp eax, 0
je 0x14004648b
mov rax, qword [0x14012aa00]
cmp word [rax], 0x31
jne 0x140040b61
cmp word [rax + 2], 0
jne 0x140040b61
mov byte [rbp - 0x50], 1
mov r10, qword [rsp + 0x68]
jmp 0x140040b76
mov byte [rbp - 0x50], 0
mov r10, qword [rsp + 0x68]
jmp 0x140040b76
mov r10, qword [rsp + 0x68]
mov edi, 2
mov byte [rbp + 0xa28], 0
xor r9d, r9d
mov qword [rbp - 0x70], r9
mov rdx, qword [r10 + 0x28]
mov qword [rbp - 0x78], rdx
cmp byte [rdx], 0x6c
jne 0x140040b9e
mov rsi, rdx
mov rdx, qword [rdx + 0x20]
mov qword [rbp - 0x78], rdx
jmp 0x140040ba1
mov rsi, r9
mov rbx, qword [rbp - 0x58]
mov rax, qword [rbx + 8]
mov qword [rbp - 0x80], rax
mov rax, qword [rbx + 0x10]
mov qword [rbp - 0x28], rax
mov rax, qword [rbx + 0x18]
mov qword [rbp - 0x30], rax
mov rax, qword [rbx + 0x20]
mov qword [rbp - 0x20], rax
mov rax, qword [rbx + 0x28]
mov qword [rbp - 0x60], rax
mov rax, qword [rbx + 8]
cmp rdi, 8
mov ebx, 1
cmovne rax, rbx
mov r8, qword [rbp - 0x58]
mov qword [r8 + 8], rax
lea rax, [rdi - 2]
cmp rax, 8
ja case.default.0x140040c06
lea r11, [0x140000000]
mov eax, dword [r11 + rax*4 + 0x46874]
add rax, r11
jmp rax
cmp byte [r10 + 1], r9b
jbe 0x140040c21
xor edx, edx
mov rcx, r10
call fcn.14003b7c0
xor cl, cl
mov r10, qword [rsp + 0x68]
jmp 0x140040c27
mov rax, r9
movzx ecx, bl
mov byte [rsp + 0x30], cl
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x70]
lea r8, [rbp + 0xa28]
mov rdx, qword [rbp + 0xa20]
mov rcx, r10
call fcn.140049770
mov ebx, eax
mov dword [rsp + 0x60], eax
mov rdx, qword [rbp - 0x78]
mov r10, qword [rsp + 0x68]
jmp 0x1400410d4
lea r9, [rbp - 0x70]
lea r8, [rbp + 0xa28]
mov rdx, qword [rbp + 0xa20]
mov rcx, r10
call fcn.140049930
mov ebx, eax
mov dword [rsp + 0x60], eax
mov rdx, qword [rbp - 0x78]
mov r10, qword [rsp + 0x68]
jmp 0x1400410d4
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x70]
lea r8, [rbp + 0xa28]
mov rdx, qword [rbp + 0xa20]
mov rcx, r10
call fcn.140049b60
mov ebx, eax
mov dword [rsp + 0x60], eax
mov rdx, qword [rbp - 0x78]
mov r10, qword [rsp + 0x68]
jmp 0x1400410d4
lea rdx, [0x1400fc018]
mov rcx, qword [0x14012aa00]
call fcn.1400d6a7c
test eax, eax
mov rax, qword [0x14012a9f8]
je 0x140040d2f
cmp word [rax], 0
jne 0x140040cfa
mov dword [rsp + 0x60], ebx
mov rdx, qword [rbp - 0x78]
mov r10, qword [rsp + 0x68]
jmp 0x1400410d4
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x70]
lea r8, [rbp + 0xa28]
mov rdx, qword [rbp + 0xa20]
mov rcx, qword [rsp + 0x68]
call fcn.14004ad80
mov ebx, eax
mov dword [rsp + 0x60], eax
mov rdx, qword [rbp - 0x78]
mov r10, qword [rsp + 0x68]
jmp 0x1400410d4
cmp word [rax], 0
jne 0x140040d47
mov dword [rsp + 0x60], ebx
mov rdx, qword [rbp - 0x78]
mov r10, qword [rsp + 0x68]
jmp 0x1400410d4
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x70]
lea r8, [rbp + 0xa28]
mov rdx, qword [rbp + 0xa20]
mov rcx, qword [rsp + 0x68]
call fcn.14004b200
mov ebx, eax
mov dword [rsp + 0x60], eax
mov rdx, qword [rbp - 0x78]
mov r10, qword [rsp + 0x68]
jmp 0x1400410d4
lea rax, [0x1400f1998]
mov qword [rbp + 0x80], rax
mov qword [rbp + 0x88], r9
mov dword [rbp + 0x90], r9d
mov dword [rbp + 0x94], 0xffffffff
mov qword [rbp + 0xb0], r9
mov qword [rbp + 0xb8], r9
mov ecx, dword [0x14012d3d8]
cmp ecx, 0xffffffff
je 0x140040deb
mov dword [rbp + 0x94], ecx
lea rdx, [rbp + 0x98]
call qword [sym.imp.KERNEL32.DLL_GetCPInfo]
movzx ecx, byte [rbp + 0x9e]
test eax, eax
mov r9d, 0
cmove ecx, r9d
mov byte [rbp + 0x9e], cl
mov r8, qword [rbp - 0x58]
lea rax, [0x1400f19e8]
mov qword [rbp + 0x80], rax
mov qword [rbp + 0xc0], 0xffffffffffffffff
mov rdx, qword [0x14012a9f8]
cmp word [rdx], 0
je 0x140040ef8
mov edi, dword [r8 + 0x13c]
btr edi, 0x1f
mov dword [rsp + 0x70], 0x30c
mov dword [rbp + 0x8c], r9d
lea r8, [rsp + 0x70]
lea rcx, [rbp + 0x80]
call qword [0x1400f19f0]
test al, al
je 0x140040ef8
mov r8d, edi
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x80]
call fcn.1400b6b40
test al, al
je 0x140040ef8
mov rax, qword [0x14012aa00]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x80]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x70]
lea r8, [rbp + 0xa28]
mov rdx, qword [rbp + 0xa20]
mov rcx, qword [rsp + 0x68]
call fcn.14004b650
mov ebx, eax
mov dword [rsp + 0x60], eax
mov r8d, dword [rbp + 0x8c]
test r8d, r8d
je 0x140040edc
cmp qword [rbp + 0xb0], 0
jne 0x140040edc
mov rdx, qword [rbp + 0xb8]
lea rcx, [rbp + 0x80]
mov rax, qword [rbp + 0x80]
call qword [rax + 0x20]
xor edx, edx
mov dword [rbp + 0x8c], edx
jmp 0x140040ede
xor edx, edx
mov word [rbp + 0xac], dx
lea rcx, [rbp + 0x80]
mov rax, qword [rbp + 0x80]
call qword [rax + reloc.OLEAUT32.DLL_SafeArrayGetDim]
jmp 0x140040efc
mov dword [rsp + 0x60], ebx
lea rcx, [rbp + 0x80]
call fcn.140005990
mov rdx, qword [rbp - 0x78]
mov r10, qword [rsp + 0x68]
jmp 0x1400410d4
mov rbx, qword [0x14012a9f8]
cmp rdi, 3
cmove rbx, qword [0x14012a9f0]
mov dword [rsp + 0x70], 1
mov ecx, 0x204a0
call fcn.1400d7718
mov rdi, rax
test rax, rax
je 0x140040fe9
xor eax, eax
mov qword [rdi + 0x20468], rax
mov qword [rdi + 0x20488], rax
lea r9, [rsp + 0x70]
mov r8, rdi
mov rdx, rbx
mov rbx, qword [rsp + 0x68]
mov rcx, rbx
call fcn.14004a0c0
test al, al
je 0x140040fa9
mov qword [rsp + 0x38], rdi
mov eax, dword [rbp - 0x50]
mov byte [rsp + 0x30], al
mov eax, dword [rbp - 0x40]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x70]
lea r8, [rbp + 0xa28]
mov rdx, qword [rbp + 0xa20]
mov rcx, rbx
call fcn.14004a340
mov ebx, eax
jmp 0x140040fad
mov ebx, dword [rsp + 0x70]
mov dword [rsp + 0x60], ebx
cmp qword [rdi + 0x20488], 0
je 0x140040fc7
mov rcx, qword [rdi + 0x20460]
call fcn.1400d6fc8
mov rcx, qword [rdi + 0x20468]
call fcn.1400d6fc8
mov rcx, rdi
call fcn.1400d6fc0
mov rdx, qword [rbp - 0x78]
mov r10, qword [rsp + 0x68]
jmp 0x1400410d4
lea r9, [0x1400f1524]
xor r8d, r8d
lea rdx, [0x1400f5a40]
mov rcx, qword [rsp + 0x68]
call fcn.14004e200
mov ebx, eax
mov dword [rsp + 0x60], eax
mov rdx, qword [rbp - 0x78]
mov r10, qword [rsp + 0x68]
jmp 0x1400410d4
lea r9, [rbp - 0x67]
cmp rdi, 4
jne 0x140041046
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x14012a9f0]
call fcn.1400251f0
mov rdi, rax
mov rax, qword [0x14012a9f8]
mov qword [rbp + 0xd0], rax
jmp 0x140041065
lea r8, [rbp + 0xd0]
mov edx, ebx
mov rcx, qword [0x14012a9f8]
call fcn.1400251f0
mov rdi, rax
mov rax, qword [rbp + 0xd0]
test rdi, rdi
je 0x140040d35
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], rdi
mov rax, qword [rbp - 0x10]
mov qword [rsp + 0x38], rax
mov eax, dword [rbp - 0x50]
mov byte [rsp + 0x30], al
mov eax, dword [rbp - 0x40]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x70]
lea r8, [rbp + 0xa28]
mov rdx, qword [rbp + 0xa20]
mov rcx, qword [rsp + 0x68]
call fcn.14004a870
mov ebx, eax
mov dword [rsp + 0x60], eax
cmp byte [rbp - 0x67], 0
je 0x1400410c5
mov rcx, rdi
call qword [sym.imp.ADVAPI32.DLL_RegCloseKey]
mov rdx, qword [rbp - 0x78]
mov r10, qword [rsp + 0x68]
jmp 0x1400410d4
mov ebx, dword [rsp + 0x60]
mov rax, qword [rbp - 0x80]
mov rdi, qword [rbp - 0x58]
mov qword [rdi + 8], rax
mov rax, qword [rbp - 0x28]
mov qword [rdi + 0x10], rax
mov rax, qword [rbp - 0x30]
mov qword [rdi + 0x18], rax
mov rax, qword [rbp - 0x20]
mov qword [rdi + 0x20], rax
mov rax, qword [rbp - 0x60]
mov qword [rdi + 0x28], rax
test ebx, ebx
je case.0x140040577.107
cmp ebx, 7
je case.0x140040577.107
cmp ebx, 8
je case.0x140040577.107
cmp byte [rbp + 0xa28], 0
jne 0x1400463db
mov rcx, qword [rbp - 0x70]
test rcx, rcx
je 0x140041143
mov rax, qword [r10 + 0x30]
cmp qword [rcx + 0x30], rax
jne 0x1400464ab
jmp 0x1400463d3
cmp dword [rbp + 0xa18], 3
je 0x140046416
mov r10, rdx
mov qword [rsp + 0x68], rdx
jmp 0x1400463db
mov rdx, qword [rbp - 0x58]
mov edi, dword [rdx + 0x140]
mov dword [rsp + 0x70], edi
cmp sil, 0x70
jne 0x1400411cf
mov rcx, qword [0x14012a950]
mov rdi, qword [rdx + 0x148]
xor eax, eax
mov qword [rdx + 0x148], rax
test rcx, rcx
je 0x140041197
mov rdx, rdi
call fcn.1400bc920
mov ebx, eax
cmp dword [rdi + 0x10], 6
jne 0x1400411a6
mov rcx, qword [rdi]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.DLL_SafeArrayGetDim]
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x1400411b4
call fcn.1400d6fc8
mov rcx, rdi
call fcn.1400d6fc0
test ebx, ebx
je 0x140046452
mov edi, dword [rsp + 0x70]
mov r10, qword [rsp + 0x68]
jmp 0x1400411ec
mov ecx, edi
or ecx, 1
mov dword [rdx + 0x140], ecx
mov rax, qword [r10 + 0x28]
cmp byte [rax], 0x71
je 0x1400411ec
or ecx, 2
mov dword [rdx + 0x140], ecx
xor eax, eax
mov qword [rbp - 0x70], rax
mov rax, qword [r10 + 0x20]
cmp byte [rax], 0x75
jne 0x140041243
mov rdi, qword [rbp + 0xa20]
mov esi, 2
nop word [rax + rax]
lea r9, [rbp - 0x70]
mov r8, rdi
mov edx, esi
mov rcx, qword [rax + 0x20]
call fcn.1400400e0
mov ebx, eax
mov dword [rsp + 0x60], eax
mov r10, qword [rsp + 0x68]
mov rax, qword [r10 + 0x20]
mov rcx, qword [rbp - 0x70]
cmp rcx, rax
je 0x140041210
mov esi, dword [rbp - 0x78]
mov edi, dword [rsp + 0x70]
jmp 0x14004126a
lea r9, [rbp - 0x70]
mov r8, qword [rbp + 0xa20]
mov edx, 3
mov rcx, rax
call fcn.1400400e0
mov ebx, eax
mov dword [rsp + 0x60], eax
mov rcx, qword [rbp - 0x70]
mov r10, qword [rsp + 0x68]
mov r10, qword [r10 + 0x28]
mov qword [rsp + 0x68], r10
cmp sil, 0x6f
jne 0x1400412da
mov rdx, qword [rbp - 0x58]
mov dword [rdx + 0x140], edi
xor al, al
cmp byte [r10], 0x70
jne 0x1400412a4
mov al, 1
cmp qword [rdx + 0x148], 0
jne 0x1400463db
mov r10, qword [r10 + 0x28]
mov qword [rsp + 0x68], r10
cmp byte [r10], 0x71
je 0x1400412f2
test al, al
jne 0x1400413b1
cmp qword [rdx + 0x148], 0
je 0x1400413b1
lea rcx, [rdx + 0x148]
call fcn.14004efc0
mov ebx, 1
mov dword [rsp + 0x60], ebx
jmp 0x1400413a8
cmp sil, 0x70
jne 0x1400413b1
cmp byte [r10], 0x71
jne 0x1400413b1
mov rdx, qword [rbp - 0x58]
cmp ebx, 1
jne 0x140041300
test rcx, rcx
je 0x1400463db
mov rdi, qword [rdx + 0x148]
xor ecx, ecx
mov qword [rdx + 0x148], rcx
mov rsi, qword [0x14012c420]
mov rax, qword [0x14012c428]
mov qword [rbp - 0x60], rax
mov qword [0x14012c420], rcx
mov qword [0x14012c428], rcx
lea r9, [rbp + 0x118]
xor r8d, r8d
lea edx, [rcx + 3]
mov rcx, r10
call fcn.1400400e0
mov ebx, eax
test rsi, rsi
je 0x140041382
mov rcx, qword [0x14012c420]
test rcx, rcx
je 0x140041370
call fcn.1400d6fc8
cmp qword [0x14012c428], 0x400000
jbe 0x140041370
dec dword [0x14012c430]
mov qword [0x14012c420], rsi
mov rax, qword [rbp - 0x60]
mov qword [0x14012c428], rax
cmp ebx, 1
jne 0x1400464b4
cmp qword [rbp + 0x118], 0
jne 0x1400464b4
mov rdx, qword [rbp - 0x58]
mov qword [rdx + 0x148], rdi
mov ebx, dword [rsp + 0x60]
mov r10, qword [rsp + 0x68]
mov rcx, qword [rbp - 0x70]
cmp dword [rbp + 0xa18], 3
je 0x1400463f5
cmp ebx, 1
jne 0x1400463f5
test rcx, rcx
je 0x1400463db
jmp 0x1400463c9
xor ecx, ecx
mov esi, ecx
mov qword [rbp - 0x28], rcx
mov rdi, qword [0x14012c420]
mov qword [rbp - 0x20], rdi
mov rax, qword [0x14012c428]
mov qword [rbp - 0x30], rax
mov qword [0x14012c420], rcx
mov qword [0x14012c428], rcx
mov qword [rbp + 0xf0], rcx
cmp qword [r10 + 0x10], rcx
jne 0x14004141e
mov dword [rbp + 0xe8], 0x44
mov dword [rsp + 0x60], ebx
jmp 0x14004148c
mov dword [rsp + 0x28], 5
lea rax, [rbp - 0x30]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x20]
lea r8, [rbp + 0xd8]
xor edx, edx
mov rcx, r10
call fcn.1400960c0
mov ebx, eax
mov dword [rsp + 0x60], eax
mov rdi, qword [rbp - 0x20]
cmp eax, 1
jne 0x140041779
mov r10, qword [rsp + 0x68]
cmp dword [rbp + 0xe8], 5
jne 0x14004148c
cmp qword [rbp + 0xd8], rdi
jne 0x14004148c
mov qword [rbp + 0xf0], rdi
mov rax, qword [rbp - 0x30]
mov qword [rbp + 0x120], rax
xor eax, eax
mov edi, eax
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x30], rax
mov rax, qword [r10 + 0x20]
mov rbx, qword [rax + 0x20]
mov qword [rbp - 0x80], rbx
cmp byte [rbx], 0x74
jne 0x140041728
mov ecx, dword [rbx + 0x10]
mov dword [rbp - 0x78], ecx
test ecx, ecx
jne 0x1400414b8
mov rsi, qword [rbx + 0x20]
mov qword [rbp - 0x28], rsi
jmp 0x140041713
xor edi, edi
mov eax, edi
mov dword [rsp + 0x70], eax
test ecx, ecx
jle 0x140041713
jmp 0x1400414d2
xor edi, edi
mov dword [rsp + 0x28], 5
lea rcx, [rbp - 0x30]
mov qword [rsp + 0x20], rcx
lea r9, [rbp - 0x20]
lea r8, [rbp + 0xf8]
mov edx, eax
mov rcx, rbx
call fcn.1400960c0
mov dword [rsp + 0x60], eax
cmp eax, 1
jne 0x140041703
mov esi, dword [rbp + 0x108]
test esi, esi
jne 0x14004152f
mov rax, qword [rsp + 0x68]
cmp qword [rax + 0x10], 0
jne 0x14004152f
mov esi, 5
mov dword [rbp + 0x108], esi
mov qword [rbp + 0x100], rdi
jmp 0x140041536
mov rdi, qword [rbp + 0x100]
mov rbx, qword [rbp + 0xf8]
cmp dword [rbp + 0xe8], 0x44
jne 0x1400416b4
lea rcx, [rbp + 0xf8]
call fcn.1400855e0
mov edx, eax
dec edx
je 0x140041638
dec edx
je 0x1400415d3
cmp esi, 6
je 0x1400415c9
cmp esi, 4
jne 0x140041583
cmp byte [rbx + 0x23], 0
jne 0x14004157a
mov rax, qword [rbx + 0x10]
jmp 0x14004157d
mov rax, rbx
test byte [rax + 0x21], 2
jne 0x1400415c9
mov ecx, esi
test esi, esi
je 0x1400415b9
dec ecx
je 0x1400415b0
dec ecx
je 0x1400415b0
sub ecx, 2
je 0x14004159c
dec ecx
je 0x1400415b9
jmp 0x1400415b0
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rbx
call fcn.140001820
mov rdx, rax
jmp 0x1400415bc
lea rdx, [0x1400f1524]
jmp 0x1400415bc
mov rdx, rbx
xor eax, eax
cmp word [rdx], ax
setne al
jmp 0x1400416c7
mov eax, 1
jmp 0x1400416c7
mov ecx, esi
dec ecx
je 0x14004161f
dec ecx
je 0x140041615
sub ecx, 2
je 0x140041606
dec ecx
je 0x1400415ec
dec ecx
je 0x140041631
jmp 0x1400415fc
test rdi, rdi
je 0x1400415fc
pxor xmm0, xmm0
cvtsi2sd xmm0, qword [rdi]
jmp 0x140041628
mov rcx, rbx
call fcn.1400d9590
jmp 0x140041628
mov edx, 1
mov rcx, rbx
call fcn.140024610
jmp 0x140041628
movsd xmm0, qword [rbp + 0xf8]
jmp 0x140041628
pxor xmm0, xmm0
cvtsi2sd xmm0, rbx
ucomisd xmm0, xmm8
jp 0x1400415c9
jne 0x1400415c9
xor eax, eax
jmp 0x1400416c7
mov ecx, esi
dec ecx
je 0x1400416a5
dec ecx
je 0x14004169a
sub ecx, 2
je 0x140041688
dec ecx
je 0x140041655
dec ecx
jne 0x14004165f
xor edx, edx
mov ecx, edx
jmp 0x1400416aa
test rdi, rdi
je 0x14004165f
mov rcx, qword [rdi]
jmp 0x1400416a8
mov rcx, rbx
call fcn.1400057c0
mov rcx, rbx
test al, al
je 0x14004167e
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1400d6e8c
mov rcx, rax
jmp 0x1400416a8
call fcn.1400d6efc
mov rcx, rax
jmp 0x1400416a8
mov edx, 1
mov rcx, rbx
call fcn.140024570
mov rcx, rax
jmp 0x1400416a8
cvttsd2si rcx, qword [rbp + 0xf8]
jmp 0x1400416a8
mov rcx, rbx
xor edx, edx
mov eax, edx
test rcx, rcx
setne al
jmp 0x1400416c7
lea rdx, [rbp + 0xf8]
lea rcx, [rbp + 0xd8]
call fcn.140086140
test eax, eax
setne dil
cmp esi, 6
jne 0x1400416db
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.OLEAUT32.DLL_SafeArrayGetDim]
mov rbx, qword [rbp - 0x80]
test dil, dil
jne 0x1400416fd
mov eax, dword [rsp + 0x70]
inc eax
mov dword [rsp + 0x70], eax
cmp eax, dword [rbp - 0x78]
jl 0x1400414d0
mov rsi, qword [rbp - 0x28]
jmp 0x140041713
mov rsi, qword [rbx + 0x20]
jmp 0x140041706
mov rsi, rdi
mov qword [rbp - 0x28], rsi
mov eax, dword [rbp - 0x78]
cmp dword [rsp + 0x70], eax
jl 0x140041724
mov rbx, qword [rbx + 0x28]
mov qword [rbp - 0x80], rbx
cmp byte [rbx], 0x74
je 0x1400414a1
mov rdi, qword [rbp - 0x20]
cmp dword [rbp + 0xe8], 6
jne 0x14004173e
mov rcx, qword [rbp + 0xd8]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.DLL_SafeArrayGetDim]
mov rbx, qword [rbp + 0xf0]
test rbx, rbx
je 0x140041775
test rdi, rdi
je 0x140041767
mov rcx, rdi
call fcn.1400d6fc8
cmp qword [rbp - 0x30], 0x400000
jbe 0x140041767
dec dword [0x14012c430]
mov rdi, rbx
mov rax, qword [rbp + 0x120]
mov qword [rbp - 0x30], rax
mov ebx, dword [rsp + 0x60]
test rdi, rdi
je 0x1400417b4
mov rcx, qword [0x14012c420]
test rcx, rcx
je 0x1400417a2
call fcn.1400d6fc8
cmp qword [0x14012c428], 0x400000
jbe 0x1400417a2
dec dword [0x14012c430]
mov qword [0x14012c420], rdi
mov rax, qword [rbp - 0x30]
mov qword [0x14012c428], rax
test rsi, rsi
je 0x1400417dd
lea r9, [rbp - 0x70]
mov r8, qword [rbp + 0xa20]
mov edx, 2
mov rcx, rsi
call fcn.1400400e0
mov ebx, eax
mov dword [rsp + 0x60], eax
mov rcx, qword [rbp - 0x70]
jmp 0x1400417e5
xor eax, eax
mov ecx, eax
mov qword [rbp - 0x70], rax
cmp ebx, 1
jne 0x1400463f5
cmp dword [rbp + 0xa18], 3
je 0x1400463f5
test rcx, rcx
je 0x14004180e
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x30]
jmp 0x1400463cd
mov r10, qword [rsp + 0x68]
mov r10, qword [r10 + 0x28]
mov qword [rsp + 0x68], r10
jmp 0x1400463db
cmp qword [r10 + 0x10], 1
jne 0x140041836
mov r10, qword [r10 + 0x28]
mov qword [rsp + 0x68], r10
jmp 0x1400463e0
lea r9, [rbp - 0x70]
mov r8, rdi
mov edx, 2
mov rcx, qword [r10 + 0x20]
call fcn.1400400e0
mov dword [rsp + 0x60], eax
mov rcx, qword [rbp - 0x70]
mov r10, qword [rsp + 0x68]
cmp rcx, r10
je 0x1400463db
cmp dword [rbp + 0xa18], 3
je 0x140046511
cmp eax, 1
jne 0x140046511
test rcx, rcx
je 0x140041813
mov rax, qword [rcx + 0x30]
cmp qword [r10 + 0x30], rax
jmp 0x1400463d1
inc rdx
mov qword [0x14012d190], rdx
mov rbx, qword [0x14012a950]
mov qword [rsp + 0x70], rbx
mov rsi, qword [0x1401255c8]
mov qword [rbp - 0x60], rsi
movzx edi, byte [r10]
lea eax, [rdi - 1]
cmp eax, 0xe1
ja case.0x1400418c9.8
cdqe
mov ecx, dword [r8 + rax*4 + 0x46898]
add rcx, r8
jmp rcx
mov rcx, r10
call fcn.140067600
jmp 0x140046382
mov rsi, qword [0x14012a9f8]
cmp byte [r10 + 1], 1
jbe 0x14004197f
mov rax, qword [r10 + 8]
cmp byte [rax + 0x21], 0
jne case.0x1400418c9.3
mov rdx, qword [rax + 0x38]
test rdx, rdx
je 0x140041914
mov r8b, reloc.OLEAUT32.DLL_SafeArrayGetElement
mov rdx, qword [rdx]
mov rcx, rbx
call fcn.140001090
jmp case.0x1400418c9.3
mov rdx, qword [0x14012a958]
test rdx, rdx
je 0x14004197f
cmp word [rsi], 0
jne 0x14004197f
movzx eax, byte [rdx + 0x23]
test al, al
jne 0x140041936
mov rax, qword [rdx + 0x10]
movzx eax, byte [rax + 0x23]
movzx ecx, al
dec ecx
je 0x140041972
cmp ecx, 2
jne 0x14004197f
movzx eax, byte [rbx + 0x23]
cmp al, cl
jne 0x140041958
mov ebx, 1
mov dword [rsp + 0x60], ebx
jmp 0x140046388
test al, al
jne 0x140041960
mov rbx, qword [rbx + 0x10]
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.1400bcfe0
jmp 0x140046382
mov rcx, rbx
call fcn.1400bc790
jmp 0x140046382
movzx edx, byte [rbx + 0x23]
test dl, dl
jne 0x1400419a4
mov byte [rsp + 0x20], 1
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rdx, rsi
mov rcx, qword [rbx + 0x10]
call fcn.1400bd640
jmp 0x140046382
mov r8b, 1
lea r11, [0x1400f1524]
test rsi, rsi
jne 0x1400419bf
xor r8b, r8b
xor ecx, ecx
mov ebx, ecx
mov rsi, r11
jmp 0x1400419e3
cmp qword [rbx + 8], rsi
jne 0x1400419ce
mov rbx, qword [rbx + 0x10]
shr rbx, 1
jmp 0x1400419e1
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rsi
repne scasw ax, word [rdi]
not rcx
lea rbx, [rcx - 1]
xor ecx, ecx
lea rax, [rbx + 1]
lea rdi, [rax + rax]
cmp dl, 2
jne 0x140041a00
mov rdx, rbx
mov rcx, rsi
call fcn.140006da0
jmp 0x140046382
mov r9, qword [0x1401255a0]
mov r10, qword [rsp + 0x70]
cmp rdi, r9
jbe 0x140041a32
cmp rdi, qword [r10 + 0x18]
jbe 0x140041a32
mov r8, r11
lea rdx, [0x140110420]
lea rcx, [0x14012c5c0]
call fcn.14004e590
jmp 0x140046382
cmp rax, 2
jae 0x140041a5c
mov edx, ecx
test r8b, r8b
setne dl
add edx, 3
xor r8d, r8d
mov rcx, r10
call fcn.1400bdcf0
mov ebx, 1
mov dword [rsp + 0x60], ebx
jmp 0x140046388
movzx eax, byte [r10 + 0x21]
test al, 2
je 0x140041a80
and al, 0x3d
mov byte [r10 + 0x21], al
mov rcx, qword [r10]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.DLL_SafeArrayGetDim]
mov r9, qword [0x1401255a0]
mov r10, qword [rsp + 0x70]
and byte [r10 + 0x21], 0x82
mov r8, qword [r10 + 0x18]
cmp rdi, r8
jbe 0x140041c5d
movzx ecx, byte [r10 + 0x20]
movzx eax, cl
cmp cl, 1
jbe 0x140041aac
cmp al, 2
je 0x140041afb
mov rax, qword [rbp + 0x58]
jmp 0x140041bfb
cmp rdi, 0x80
ja 0x140041afb
cmp rdi, 8
ja 0x140041ac2
mov eax, 8
jmp 0x140041ad3
mov eax, 0x80
cmp rdi, 0x10
mov ecx, reloc.OLEAUT32.DLL_SafeArrayGetDim
cmovbe eax, ecx
mov qword [rbp + 0x18], rax
mov rcx, rax
call fcn.1400b60a0
mov qword [rbp + 0x58], rax
test rax, rax
je 0x140046382
mov r10, qword [rsp + 0x70]
mov byte [r10 + 0x20], 1
jmp 0x140041bfb
cmp rdi, 0x20
jae 0x140041b0c
mov r11d, SafeArrayAllocDescriptor
jmp 0x140041bb1
cmp rdi, 0x208
jae 0x140041b20
mov r11d, 0x208
jmp 0x140041bb1
cmp rdi, 0x50000
jae 0x140041b6d
pxor xmm0, xmm0
cvtsi2sd xmm0, rdi
test rdi, rdi
jns 0x140041b3c
addsd xmm0, xmm10
mulsd xmm0, xmm11
xor eax, eax
comisd xmm0, xmm9
jbe 0x140041b63
subsd xmm0, xmm9
comisd xmm0, xmm9
jae 0x140041b63
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si r11, xmm0
add r11, rax
jmp 0x140041bb1
cmp rdi, 0x320000
jae 0x140041b7f
lea r11, [rdi + 0x8000]
jmp 0x140041bb1
cmp rdi, 0xc80000
jae 0x140041baa
mov r11, rdi
movabs rax, 0x47ae147ae147ae15
mul rdi
sub r11, rdx
shr r11, 1
add r11, rdx
shr r11, 6
add r11, rdi
jmp 0x140041bb1
lea r11, [rdi + 0x20000]
cmp r11, r9
cmova r11, r9
mov qword [rbp + 0x18], r11
cmp cl, 2
jne 0x140041bd8
test r8, r8
je 0x140041bd8
mov dil, 1
mov rcx, qword [r10 + 8]
call fcn.1400d6fc8
mov r11, qword [rbp + 0x18]
jmp 0x140041bdb
xor dil, dil
test r11, r11
js 0x140041c0e
mov rcx, r11
call fcn.1400d6f08
mov qword [rbp + 0x58], rax
test rax, rax
je 0x140041c0e
mov r10, qword [rsp + 0x70]
mov byte [r10 + 0x20], 2
mov qword [r10 + 8], rax
mov rax, qword [rbp + 0x18]
mov qword [r10 + 0x18], rax
and byte [r10 + 0x21], 0x7f
jmp 0x140041c5d
xor edx, edx
test dil, dil
je 0x140041c2b
mov rax, qword [rsp + 0x70]
mov qword [rax + 0x18], rdx
lea rcx, [0x14012c4b8]
mov qword [rax + 8], rcx
jmp 0x140041c3a
mov rcx, qword [rsp + 0x70]
mov rax, qword [rcx + 8]
mov word [rax], dx
mov rax, rcx
mov qword [rax + 0x10], rdx
lea r8, [0x1400f1524]
lea rdx, [0x1400f5a40]
lea rcx, [0x14012c5c0]
call fcn.14004e590
jmp 0x140046382
mov rcx, qword [r10 + 8]
cmp rcx, rsi
je 0x140041c77
lea r8, [rbx + rbx]
mov rdx, rsi
call fcn.1400d7a30
mov r10, qword [rsp + 0x70]
lea rcx, [rbx + rbx]
mov rax, qword [r10 + 8]
xor edx, edx
mov word [rcx + rax], dx
mov qword [r10 + 0x10], rcx
mov ebx, 1
mov dword [rsp + 0x60], ebx
jmp 0x140046388
mov rax, qword [r10 + 8]
cmp qword [rax + 0x38], 0
je 0x140041cbc
cmp byte [rax + 0x21], 0
jne 0x140041cbc
mov eax, 1
mov dword [rsp + 0x60], eax
mov edi, eax
xor ecx, ecx
mov esi, ecx
jmp 0x140041e37
xor r9d, r9d
mov dword [rsp + 0x60], r9d
mov rbx, qword [0x14012a9f8]
mov rcx, qword [0x14012a958]
mov qword [rbp - 0x80], rcx
test rcx, rcx
je 0x140041d0b
cmp word [rbx], r9w
jne 0x140041d0b
movzx eax, byte [rcx + 0x23]
test al, al
jne 0x140041cf1
mov rax, qword [rcx + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
jne 0x140041d0b
test rcx, rcx
je 0x140041d10
mov edx, 1
call fcn.1400244d0
mov edi, eax
jmp 0x140041e29
mov qword [rbp - 0x80], r9
nop
movzx eax, word [rbx]
cmp ax, 0x20
je 0x140041d1f
cmp ax, 9
jne 0x140041d25
add rbx, 2
jmp 0x140041d10
movzx eax, word [rbx]
test ax, ax
je 0x140041e26
cmp ax, 0x2d
je 0x140041d3d
cmp ax, 0x2b
jne 0x140041d41
add rbx, 2
cmp word [rbx], 0x30
jne 0x140041d79
movzx eax, word [rbx + 2]
cmp ax, 0x78
je 0x140041d57
cmp ax, 0x58
jne 0x140041d79
movzx ecx, word [rbx + 4]
call fcn.1400d6b84
test eax, eax
je 0x140041d76
mov r8d, 1
mov ecx, r8d
add rbx, 4
xor r9d, r9d
jmp 0x140041d82
xor r9d, r9d
mov ecx, r9d
mov r8d, 1
mov esi, r9d
mov edx, r9d
mov dword [rbp - 0x78], edx
movsxd rdi, ecx
movzx eax, word [rbx]
cmp eax, 0x20
je 0x140041e00
cmp eax, 9
je 0x140041e00
test eax, eax
je 0x140041e15
cmp eax, 0x2e
jne 0x140041db6
test esi, esi
jne 0x140041e26
test rdi, rdi
jne 0x140041e26
mov esi, r8d
jmp 0x140041de6
test rdi, rdi
je 0x140041dd8
movzx ecx, ax
call fcn.1400d94d4
xor r9d, r9d
mov ecx, r9d
test eax, eax
sete cl
test ecx, ecx
jne 0x140041dec
lea r8d, [r9 + 1]
jmp 0x140041de0
add eax, 0xffffffd0
cmp eax, 9
ja 0x140041def
mov edx, r8d
mov dword [rbp - 0x78], edx
add rbx, 2
jmp 0x140041d8e
mov edx, dword [rbp - 0x78]
mov edi, r9d
test edx, edx
je 0x140041e29
test esi, esi
setne dil
inc edi
jmp 0x140041e29
movzx eax, word [rbx]
cmp ax, 0x20
je 0x140041e0f
cmp ax, 9
jne 0x140041e15
add rbx, 2
jmp 0x140041e00
test edx, edx
je 0x140041e26
mov edi, r9d
test esi, esi
setne dil
inc edi
jmp 0x140041e29
mov edi, r9d
mov rsi, qword [rbp - 0x80]
mov rbx, qword [rsp + 0x70]
mov eax, 1
mov edx, eax
mov rcx, rbx
call fcn.1400244d0
mov ebx, eax
mov rax, qword [0x14012aa00]
movzx ecx, word [rax]
test cx, cx
je 0x140042554
call fcn.140014b80
movzx edx, ax
lea rcx, [0x1400f9df0]
call fcn.1400d7d64
test rax, rax
je 0x140042554
test edi, edi
je case.0x1400418c9.3
cmp dword [rsp + 0x60], 0
je 0x140041e9a
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 8]
mov rcx, qword [rax + 0x38]
pxor xmm6, xmm6
cvtsi2sd xmm6, qword [rcx]
jmp 0x140041ebb
test rsi, rsi
je 0x140041eab
xor edx, edx
mov rcx, rsi
call fcn.140024610
jmp 0x140041eb7
mov rcx, qword [0x14012a9f8]
call fcn.140024390
movapd xmm6, xmm0
xor r8d, r8d
mov edi, 1
mov edx, edi
mov rsi, qword [rsp + 0x70]
mov rcx, rsi
call fcn.140001820
cmp word [rax], 0
je 0x1400421bf
xor r8d, r8d
mov edx, edi
mov rcx, rsi
call fcn.140001820
xor r8d, r8d
lea rdx, [rbp + 0x140]
mov rcx, rax
call fcn.1400b8db0
lea rdx, [rbp - 0x18]
lea rcx, [rbp + 0x140]
call qword [sym.imp.KERNEL32.DLL_SystemTimeToFileTime]
test eax, eax
jne 0x1400421dd
movzx ecx, byte [rsi + 0x23]
test cl, cl
jne 0x140041f3d
mov byte [rsp + 0x20], dil
xor r9d, r9d
or r8, 0xffffffffffffffff
lea rdx, [0x1400f1524]
mov rcx, qword [rsi + 0x10]
call fcn.1400bd640
jmp 0x140046382
lea r8, [0x1400f1524]
cmp qword [rsi + 8], r8
jne 0x140041f53
mov rbx, qword [rsi + 0x10]
shr rbx, 1
jmp 0x140041f57
xor eax, eax
mov ebx, eax
lea rax, [rbx + 1]
lea rdi, [rax + rax]
cmp cl, 2
jne 0x140041f74
mov rdx, rbx
mov rcx, r8
call fcn.140006da0
jmp 0x140046382
mov r9, qword [0x1401255a0]
cmp rdi, r9
jbe 0x140041f8a
cmp rdi, qword [rsi + 0x18]
ja 0x140041a1a
cmp rax, 2
jae 0x140041fad
xor r8d, r8d
lea edx, [r8 + 4]
mov rcx, rsi
call fcn.1400bdcf0
mov ebx, 1
mov dword [rsp + 0x60], ebx
jmp 0x140046388
movzx eax, byte [rsi + 0x21]
test al, 2
je 0x140041fca
and al, 0x3d
mov byte [rsi + 0x21], al
mov rcx, qword [rsi]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.DLL_SafeArrayGetDim]
mov r9, qword [0x1401255a0]
and byte [rsi + 0x21], 0x82
mov r8, qword [rsi + 0x18]
cmp rdi, r8
jbe 0x140042183
movzx ecx, byte [rsi + 0x20]
movzx eax, cl
cmp cl, 1
jbe 0x140041ff4
cmp al, 2
je 0x14004203d
mov rax, qword [rbp + 0x68]
jmp 0x140042137
cmp rdi, 0x80
ja 0x14004203d
cmp rdi, 8
ja 0x14004200a
mov eax, 8
jmp 0x14004201b
mov eax, 0x80
cmp rdi, 0x10
mov ecx, reloc.OLEAUT32.DLL_SafeArrayGetDim
cmovbe eax, ecx
mov qword [rbp + 0x20], rax
mov rcx, rax
call fcn.1400b60a0
mov qword [rbp + 0x68], rax
test rax, rax
je 0x140046382
mov byte [rsi + 0x20], 1
jmp 0x140042137
cmp rdi, 0x20
jae 0x14004204e
mov r10d, SafeArrayAllocDescriptor
jmp 0x1400420f3
cmp rdi, 0x208
jae 0x140042062
mov r10d, 0x208
jmp 0x1400420f3
cmp rdi, 0x50000
jae 0x1400420af
pxor xmm0, xmm0
cvtsi2sd xmm0, rdi
test rdi, rdi
jns 0x14004207e
addsd xmm0, xmm10
mulsd xmm0, xmm11
xor eax, eax
comisd xmm0, xmm9
jbe 0x1400420a5
subsd xmm0, xmm9
comisd xmm0, xmm9
jae 0x1400420a5
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si r10, xmm0
add r10, rax
jmp 0x1400420f3
cmp rdi, 0x320000
jae 0x1400420c1
lea r10, [rdi + 0x8000]
jmp 0x1400420f3
cmp rdi, 0xc80000
jae 0x1400420ec
mov r10, rdi
movabs rax, 0x47ae147ae147ae15
mul rdi
sub r10, rdx
shr r10, 1
add r10, rdx
shr r10, 6
add r10, rdi
jmp 0x1400420f3
lea r10, [rdi + 0x20000]
cmp r10, r9
cmova r10, r9
mov qword [rbp + 0x20], r10
cmp cl, 2
jne 0x14004211a
test r8, r8
je 0x14004211a
mov dil, 1
mov rcx, qword [rsi + 8]
call fcn.1400d6fc8
mov r10, qword [rbp + 0x20]
jmp 0x14004211d
xor dil, dil
test r10, r10
js 0x140042141
mov rcx, r10
call fcn.1400d6f08
mov qword [rbp + 0x68], rax
test rax, rax
je 0x140042141
mov byte [rsi + 0x20], 2
mov qword [rsi + 8], rax
mov rax, qword [rbp + 0x20]
jmp 0x14004217b
test dil, dil
je 0x140042159
xor eax, eax
mov qword [rsi + 0x18], rax
lea rcx, [0x14012c4b8]
mov qword [rsi + 8], rcx
jmp 0x140042164
mov rax, qword [rsi + 8]
xor ecx, ecx
mov word [rax], cx
xor eax, eax
mov qword [rsi + 0x10], rax
lea r8, [0x1400f1524]
lea rdx, [0x1400f5a40]
jmp 0x140041a21
mov qword [rsi + 0x18], rax
and byte [rsi + 0x21], 0x7f
mov rcx, qword [rsi + 8]
lea rax, [0x1400f1524]
cmp rcx, rax
je 0x14004219f
lea r8, [rbx + rbx]
mov rdx, rax
call fcn.1400d7a30
lea rcx, [rbx + rbx]
mov rax, qword [rsi + 8]
xor edx, edx
mov word [rcx + rax], dx
mov qword [rsi + 0x10], rcx
mov ebx, 1
mov dword [rsp + 0x60], ebx
jmp 0x140046388
lea rcx, [rbp + 0x128]
call qword [sym.imp.KERNEL32.DLL_GetSystemTimeAsFileTime]
lea rdx, [rbp - 0x18]
lea rcx, [rbp + 0x128]
call qword [sym.imp.KERNEL32.DLL_FileTimeToLocalFileTime]
mov rax, qword [0x14012aa00]
movzx ecx, word [rax]
call fcn.140014b80
movzx edx, ax
cmp edx, 0x44
je 0x140042212
cmp edx, 0x48
je 0x140042208
cmp edx, 0x4d
jne 0x14004221a
mulsd xmm6, qword [0x140112630]
jmp 0x14004221a
mulsd xmm6, qword [0x140112628]
jmp 0x14004221a
mulsd xmm6, qword [0x140112620]
mov eax, dword [rbp - 0x18]
mov dword [rbp + 0x10], eax
mov eax, dword [rbp - 0x14]
mov dword [rbp + 0x14], eax
xor eax, eax
comisd xmm6, xmm9
jbe 0x140042248
subsd xmm6, xmm9
comisd xmm6, xmm9
jae 0x140042248
movabs rcx, 0x8000000000000000
mov rax, rcx
cvttsd2si rcx, xmm6
add rcx, rax
imul rcx, rcx, 0x989680
mov rax, qword [rbp + 0x10]
add rax, rcx
mov qword [rbp + 0x10], rax
mov ecx, dword [rbp + 0x10]
mov dword [rbp - 0x18], ecx
shr rax, 0x20
mov dword [rbp - 0x14], eax
mov rax, qword [rbp - 0x18]
mov qword [rbp - 0x60], rax
lea rdx, [rbp + 0x40]
lea rcx, [rbp - 0x60]
call qword [sym.imp.KERNEL32.DLL_FileTimeToSystemTime]
test eax, eax
je 0x1400422c8
movzx eax, word [rbp + 0x4c]
movzx ecx, word [rbp + 0x4a]
movzx edx, word [rbp + 0x48]
movzx edi, word [rbp + 0x46]
movzx r9d, word [rbp + 0x42]
movzx r8d, word [rbp + 0x40]
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x30], ecx
mov dword [rsp + 0x28], edx
mov dword [rsp + 0x20], edi
lea rdx, [0x140111980]
lea rcx, [rbp + 0x180]
call fcn.1400d77e8
jmp 0x1400422d1
xor eax, eax
mov word [rbp + 0x180], ax
movzx edx, byte [rsi + 0x23]
test dl, dl
jne 0x1400422fa
mov byte [rsp + 0x20], 1
xor r9d, r9d
or r8, 0xffffffffffffffff
lea rdx, [rbp + 0x180]
mov rcx, qword [rsi + 0x10]
call fcn.1400bd640
jmp 0x140046382
lea rax, [rbp + 0x180]
cmp qword [rsi + 8], rax
jne 0x140042310
mov rbx, qword [rsi + 0x10]
shr rbx, 1
jmp 0x140042329
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, [rbp + 0x180]
repne scasw ax, word [rdi]
not rcx
dec rcx
mov rbx, rcx
lea rax, [rbx + 1]
lea rdi, [rax + rax]
cmp dl, 2
jne 0x14004234a
mov rdx, rbx
lea rcx, [rbp + 0x180]
call fcn.140006da0
jmp 0x140046382
mov r9, qword [0x1401255a0]
cmp rdi, r9
jbe 0x140042368
cmp rdi, qword [rsi + 0x18]
jbe 0x140042368
lea r8, [0x1400f1524]
jmp 0x140041a1a
cmp rax, 2
jb 0x140041f90
movzx eax, byte [rsi + 0x21]
test al, 2
je 0x14004238f
and al, 0x3d
mov byte [rsi + 0x21], al
mov rcx, qword [rsi]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.DLL_SafeArrayGetDim]
mov r9, qword [0x1401255a0]
and byte [rsi + 0x21], 0x82
mov r8, qword [rsi + 0x18]
cmp rdi, r8
jbe 0x140042514
movzx ecx, byte [rsi + 0x20]
movzx eax, cl
cmp cl, 1
jbe 0x1400423b9
cmp al, 2
je 0x140042402
mov rax, qword [rbp + 0x78]
jmp 0x140042504
cmp rdi, 0x80
ja 0x140042402
cmp rdi, 8
ja 0x1400423cf
mov eax, 8
jmp 0x1400423e0
mov eax, 0x80
cmp rdi, 0x10
mov ecx, reloc.OLEAUT32.DLL_SafeArrayGetDim
cmovbe eax, ecx
mov qword [rbp + 8], rax
mov rcx, rax
call fcn.1400b60a0
mov qword [rbp + 0x78], rax
test rax, rax
je 0x140046382
mov byte [rsi + 0x20], 1
jmp 0x140042504
cmp rdi, 0x20
jae 0x140042413
mov r10d, SafeArrayAllocDescriptor
jmp 0x1400424b8
cmp rdi, 0x208
jae 0x140042427
mov r10d, 0x208
jmp 0x1400424b8
cmp rdi, 0x50000
jae 0x140042474
pxor xmm0, xmm0
cvtsi2sd xmm0, rdi
test rdi, rdi
jns 0x140042443
addsd xmm0, xmm10
mulsd xmm0, xmm11
xor eax, eax
comisd xmm0, xmm9
jbe 0x14004246a
subsd xmm0, xmm9
comisd xmm0, xmm9
jae 0x14004246a
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si r10, xmm0
add r10, rax
jmp 0x1400424b8
cmp rdi, 0x320000
jae 0x140042486
lea r10, [rdi + 0x8000]
jmp 0x1400424b8
cmp rdi, 0xc80000
jae 0x1400424b1
mov r10, rdi
movabs rax, 0x47ae147ae147ae15
mul rdi
sub r10, rdx
shr r10, 1
add r10, rdx
shr r10, 6
add r10, rdi
jmp 0x1400424b8
lea r10, [rdi + 0x20000]
cmp r10, r9
cmova r10, r9
mov qword [rbp + 8], r10
cmp cl, 2
jne 0x1400424df
test r8, r8
je 0x1400424df
mov dil, 1
mov rcx, qword [rsi + 8]
call fcn.1400d6fc8
mov r10, qword [rbp + 8]
jmp 0x1400424e2
xor dil, dil
test r10, r10
js 0x140042141
mov rcx, r10
call fcn.1400d6f08
mov qword [rbp + 0x78], rax
test rax, rax
je 0x140042141
mov byte [rsi + 0x20], 2
mov qword [rsi + 8], rax
mov rax, qword [rbp + 8]
mov qword [rsi + 0x18], rax
and byte [rsi + 0x21], 0x7f
mov rcx, qword [rsi + 8]
lea rax, [rbp + 0x180]
cmp rcx, rax
je 0x140042534
lea r8, [rbx + rbx]
lea rdx, [rbp + 0x180]
call fcn.1400d7a30
lea rcx, [rbx + rbx]
mov rax, qword [rsi + 8]
xor edx, edx
mov word [rcx + rax], dx
mov qword [rsi + 0x10], rcx
mov ebx, 1
mov dword [rsp + 0x60], ebx
jmp 0x140046388
cmp edi, 2
je 0x1400425ba
cmp ebx, 2
je 0x1400425ba
cmp dword [rsp + 0x60], 0
je 0x140042577
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 8]
mov rcx, qword [rax + 0x38]
mov rdi, qword [rcx]
jmp 0x140042597
test rsi, rsi
je 0x140042588
xor edx, edx
mov rcx, rsi
call fcn.140024570
jmp 0x140042594
mov rcx, qword [0x14012a9f8]
call fcn.140005830
mov rdi, rax
xor edx, edx
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call fcn.140024570
lea rdx, [rdi + rax]
mov r8b, reloc.OLEAUT32.DLL_SafeArrayGetElement
mov rcx, rbx
call fcn.140001090
jmp case.0x1400418c9.3
cmp dword [rsp + 0x60], 0
je 0x1400425d9
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 8]
mov rcx, qword [rax + 0x38]
pxor xmm6, xmm6
cvtsi2sd xmm6, qword [rcx]
jmp 0x1400425fa
test rsi, rsi
je 0x1400425ea
xor edx, edx
mov rcx, rsi
call fcn.140024610
jmp 0x1400425f6
mov rcx, qword [0x14012a9f8]
call fcn.140024390
movapd xmm6, xmm0
xor edx, edx
mov rdi, qword [rsp + 0x70]
mov rcx, rdi
call fcn.140024610
addsd xmm0, xmm6
movsd qword [rbp - 0x60], xmm0
mov r8b, 0x28
mov rdx, qword [rbp - 0x60]
mov rcx, rdi
call fcn.140001090
jmp case.0x1400418c9.3
mov rax, qword [0x14012aa00]
movzx ecx, word [rax]
test cx, cx
je 0x14004297a
call fcn.140014b80
movzx edx, ax
lea rcx, [0x1400f9df0]
call fcn.1400d7d64
test rax, rax
je 0x140042975
mov rdi, qword [0x14012a9f8]
mov rcx, qword [0x14012a958]
test rcx, rcx
je 0x140042697
cmp word [rdi], 0
jne 0x140042697
movzx eax, byte [rcx + 0x23]
test al, al
jne 0x14004267f
mov rax, qword [rcx + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
jne 0x140042697
test rcx, rcx
je 0x140042697
xor r8d, r8d
lea edx, [r8 + 1]
call fcn.140001820
mov rdi, rax
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rbx
call fcn.140001820
mov byte [rbp - 0x68], 1
test rdi, rdi
je 0x140042751
lea r8, [rbp - 0x68]
mov rdx, rax
mov rcx, rdi
call fcn.1400b9030
mov rdi, rax
cmp byte [rbp - 0x68], 0
jne 0x140042751
mov rax, qword [0x14012aa00]
movzx ecx, word [rax]
call fcn.140014b80
movzx r11d, ax
cmp r11d, 0x44
je 0x140042720
cmp r11d, 0x48
je 0x14004270a
cmp r11d, 0x4d
jne 0x14004273e
movabs rax, 0x8888888888888889
imul rdi
add rdi, rdx
sar rdi, 5
jmp 0x140042734
movabs rax, 0x48d159e26af37c05
imul rdi
mov rdi, rdx
sar rdi, 0xa
jmp 0x140042734
movabs rax, 0x1845c8a0ce512957
imul rdi
mov rdi, rdx
sar rdi, 0xd
mov rax, rdi
shr rax, 0x3f
add rdi, rax
mov r8b, reloc.OLEAUT32.DLL_SafeArrayGetElement
mov rdx, rdi
mov rcx, rbx
call fcn.140001090
jmp case.0x1400418c9.3
movzx ecx, byte [rbx + 0x23]
test cl, cl
jne 0x14004277a
mov byte [rsp + 0x20], 1
xor r9d, r9d
or r8, 0xffffffffffffffff
lea rdx, [0x1400f1524]
mov rcx, qword [rbx + 0x10]
call fcn.1400bd640
jmp 0x140046382
lea r8, [0x1400f1524]
cmp qword [rbx + 8], r8
jne 0x140042790
mov rbx, qword [rbx + 0x10]
shr rbx, 1
jmp 0x140042794
xor eax, eax
mov ebx, eax
lea rax, [rbx + 1]
lea rdi, [rax + rax]
cmp cl, 2
jne 0x1400427b1
mov rdx, rbx
mov rcx, r8
call fcn.140006da0
jmp 0x140046382
mov r9, qword [0x1401255a0]
mov rsi, qword [rsp + 0x70]
cmp rdi, r9
jbe 0x1400427cc
cmp rdi, qword [rsi + 0x18]
ja 0x140041a1a
cmp rax, 2
jb 0x140041f90
movzx eax, byte [rsi + 0x21]
test al, 2
je 0x1400427f3
and al, 0x3d
mov byte [rsi + 0x21], al
mov rcx, qword [rsi]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.DLL_SafeArrayGetDim]
mov r9, qword [0x1401255a0]
and byte [rsi + 0x21], 0x82
mov r8, qword [rsi + 0x18]
cmp rdi, r8
jbe 0x140042183
movzx ecx, byte [rsi + 0x20]
movzx eax, cl
cmp cl, 1
jbe 0x14004281d
cmp al, 2
je 0x140042866
mov rax, qword [rbp + 0x60]
jmp 0x140042968
cmp rdi, 0x80
ja 0x140042866
cmp rdi, 8
ja 0x140042833
mov eax, 8
jmp 0x140042844
mov eax, 0x80
cmp rdi, 0x10
mov ecx, reloc.OLEAUT32.DLL_SafeArrayGetDim
cmovbe eax, ecx
mov qword [rbp + 0x38], rax
mov rcx, rax
call fcn.1400b60a0
mov qword [rbp + 0x60], rax
test rax, rax
je 0x140046382
mov byte [rsi + 0x20], 1
jmp 0x140042968
cmp rdi, 0x20
jae 0x140042877
mov r10d, SafeArrayAllocDescriptor
jmp 0x14004291c
cmp rdi, 0x208
jae 0x14004288b
mov r10d, 0x208
jmp 0x14004291c
cmp rdi, 0x50000
jae 0x1400428d8
pxor xmm0, xmm0
cvtsi2sd xmm0, rdi
test rdi, rdi
jns 0x1400428a7
addsd xmm0, xmm10
mulsd xmm0, xmm11
xor eax, eax
comisd xmm0, xmm9
jbe 0x1400428ce
subsd xmm0, xmm9
comisd xmm0, xmm9
jae 0x1400428ce
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si r10, xmm0
add r10, rax
jmp 0x14004291c
cmp rdi, 0x320000
jae 0x1400428ea
lea r10, [rdi + 0x8000]
jmp 0x14004291c
cmp rdi, 0xc80000
jae 0x140042915
mov r10, rdi
movabs rax, 0x47ae147ae147ae15
mul rdi
sub r10, rdx
shr r10, 1
add r10, rdx
shr r10, 6
add r10, rdi
jmp 0x14004291c
lea r10, [rdi + 0x20000]
cmp r10, r9
cmova r10, r9
mov qword [rbp + 0x38], r10
cmp cl, 2
jne 0x140042943
test r8, r8
je 0x140042943
mov dil, 1
mov rcx, qword [rsi + 8]
call fcn.1400d6fc8
mov r10, qword [rbp + 0x38]
jmp 0x140042946
xor dil, dil
test r10, r10
js 0x140042141
mov rcx, r10
call fcn.1400d6f08
mov qword [rbp + 0x60], rax
test rax, rax
je 0x140042141
mov byte [rsi + 0x20], 2
mov qword [rsi + 8], rax
mov rax, qword [rbp + 0x38]
jmp 0x14004217b
mov r10, qword [rsp + 0x68]
mov rax, qword [r10 + 8]
cmp qword [rax + 0x38], 0
je 0x14004299d
cmp byte [rax + 0x21], 0
jne 0x14004299d
mov eax, 1
mov esi, eax
mov edi, eax
xor ecx, ecx
mov ebx, ecx
jmp 0x140042b2a
xor r9d, r9d
mov esi, r9d
mov dword [rsp + 0x60], r9d
mov rbx, qword [0x14012a9f8]
mov rcx, qword [0x14012a958]
mov qword [rbp - 0x80], rcx
test rcx, rcx
je 0x1400429ee
cmp word [rbx], si
jne 0x1400429ee
movzx eax, byte [rcx + 0x23]
test al, al
jne 0x1400429d4
mov rax, qword [rcx + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
jne 0x1400429ee
test rcx, rcx
je 0x1400429f2
mov edx, 1
call fcn.1400244d0
mov edi, eax
jmp 0x140042b21
mov qword [rbp - 0x80], r9
movzx eax, word [rbx]
cmp ax, 0x20
je 0x140042a01
cmp ax, 9
jne 0x140042a07
add rbx, 2
jmp 0x1400429f2
movzx eax, word [rbx]
test ax, ax
je 0x140042b1e
cmp ax, 0x2d
je 0x140042a1f
cmp ax, 0x2b
jne 0x140042a23
add rbx, 2
cmp word [rbx], 0x30
jne 0x140042a5b
movzx eax, word [rbx + 2]
cmp ax, 0x78
je 0x140042a39
cmp ax, 0x58
jne 0x140042a5b
movzx ecx, word [rbx + 4]
call fcn.1400d6b84
test eax, eax
je 0x140042a58
mov r8d, 1
mov ecx, r8d
add rbx, 4
xor r9d, r9d
jmp 0x140042a64
xor r9d, r9d
mov ecx, r9d
mov r8d, 1
mov esi, r9d
mov edx, r9d
mov dword [rbp - 0x78], edx
movsxd rdi, ecx
movzx eax, word [rbx]
cmp eax, 0x20
je 0x140042af0
cmp eax, 9
je 0x140042af0
test eax, eax
je 0x140042b05
cmp eax, 0x2e
jne 0x140042aa0
test esi, esi
jne 0x140042b1a
test rdi, rdi
jne 0x140042b1a
mov esi, r8d
jmp 0x140042ad0
test rdi, rdi
je 0x140042ac2
movzx ecx, ax
call fcn.1400d94d4
xor r9d, r9d
mov ecx, r9d
test eax, eax
sete cl
test ecx, ecx
jne 0x140042ad6
lea r8d, [r9 + 1]
jmp 0x140042aca
add eax, 0xffffffd0
cmp eax, 9
ja 0x140042ad9
mov edx, r8d
mov dword [rbp - 0x78], edx
add rbx, 2
jmp 0x140042a70
mov edx, dword [rbp - 0x78]
mov edi, r9d
test edx, edx
je 0x140042ae8
test esi, esi
setne dil
inc edi
mov esi, dword [rsp + 0x60]
jmp 0x140042b21
movzx eax, word [rbx]
cmp ax, 0x20
je 0x140042aff
cmp ax, 9
jne 0x140042b05
add rbx, 2
jmp 0x140042af0
test edx, edx
je 0x140042b1a
mov edi, r9d
test esi, esi
setne dil
inc edi
mov esi, dword [rsp + 0x60]
jmp 0x140042b21
mov esi, dword [rsp + 0x60]
mov edi, r9d
mov rbx, qword [rbp - 0x80]
mov eax, 1
mov edx, eax
mov rcx, qword [rsp + 0x70]
call fcn.1400244d0
cmp edi, 2
je 0x140042b9b
cmp eax, 2
je 0x140042b9b
test esi, esi
je 0x140042b56
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 8]
mov rcx, qword [rax + 0x38]
mov rdi, qword [rcx]
jmp 0x140042b76
test rbx, rbx
je 0x140042b67
xor edx, edx
mov rcx, rbx
call fcn.140024570
jmp 0x140042b73
mov rcx, qword [0x14012a9f8]
call fcn.140005830
mov rdi, rax
xor edx, edx
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call fcn.140024570
sub rax, rdi
mov r8b, reloc.OLEAUT32.DLL_SafeArrayGetElement
mov rdx, rax
mov rcx, rbx
call fcn.140001090
jmp case.0x1400418c9.3
test esi, esi
je 0x140042bb7
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 8]
mov rcx, qword [rax + 0x38]
pxor xmm6, xmm6
cvtsi2sd xmm6, qword [rcx]
jmp 0x140042bd8
test rbx, rbx
je 0x140042bc8
xor edx, edx
mov rcx, rbx
call fcn.140024610
jmp 0x140042bd4
mov rcx, qword [0x14012a9f8]
call fcn.140024390
movapd xmm6, xmm0
xor edx, edx
mov rdi, qword [rsp + 0x70]
mov rcx, rdi
call fcn.140024610
subsd xmm0, xmm6
movsd qword [rbp - 0x60], xmm0
mov r8b, 0x28
mov rdx, qword [rbp - 0x60]
mov rcx, rdi
call fcn.140001090
jmp case.0x1400418c9.3
mov rax, qword [r10 + 8]
cmp qword [rax + 0x38], 0
je 0x140042c27
cmp byte [rax + 0x21], 0
jne 0x140042c27
mov eax, 1
mov esi, eax
mov edi, eax
xor ecx, ecx
mov ebx, ecx
jmp 0x140042dae
xor r9d, r9d
mov esi, r9d
mov dword [rsp + 0x60], r9d
mov rbx, qword [0x14012a9f8]
mov rcx, qword [0x14012a958]
mov qword [rbp - 0x80], rcx
test rcx, rcx
je 0x140042c78
cmp word [rbx], si
jne 0x140042c78
movzx eax, byte [rcx + 0x23]
test al, al
jne 0x140042c5e
mov rax, qword [rcx + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
jne 0x140042c78
test rcx, rcx
je 0x140042c80
mov edx, 1
call fcn.1400244d0
mov edi, eax
jmp 0x140042da5
mov qword [rbp - 0x80], r9
nop dword [rax]
movzx eax, word [rbx]
cmp ax, 0x20
je 0x140042c8f
cmp ax, 9
jne 0x140042c95
add rbx, 2
jmp 0x140042c80
movzx eax, word [rbx]
test ax, ax
je 0x140042da2
cmp ax, 0x2d
je 0x140042cad
cmp ax, 0x2b
jne 0x140042cb1
add rbx, 2
cmp word [rbx], 0x30
jne 0x140042ce9
movzx eax, word [rbx + 2]
cmp ax, 0x78
je 0x140042cc7
cmp ax, 0x58
jne 0x140042ce9
movzx ecx, word [rbx + 4]
call fcn.1400d6b84
test eax, eax
je 0x140042ce6
mov r8d, 1
mov ecx, r8d
add rbx, 4
xor r9d, r9d
jmp 0x140042cf2
xor r9d, r9d
mov ecx, r9d
mov r8d, 1
mov esi, r9d
mov edx, r9d
mov dword [rbp - 0x78], edx
movsxd rdi, ecx
movzx eax, word [rbx]
cmp eax, 0x20
je 0x140042d74
cmp eax, 9
je 0x140042d74
test eax, eax
je 0x140042d89
cmp eax, 0x2e
jne 0x140042d26
test esi, esi
jne 0x140042d9e
test rdi, rdi
jne 0x140042d9e
mov esi, r8d
jmp 0x140042d56
test rdi, rdi
je 0x140042d48
movzx ecx, ax
call fcn.1400d94d4
xor r9d, r9d
mov ecx, r9d
test eax, eax
sete cl
test ecx, ecx
jne 0x140042d5c
lea r8d, [r9 + 1]
jmp 0x140042d50
add eax, 0xffffffd0
cmp eax, 9
ja 0x140042d5f
mov edx, r8d
mov dword [rbp - 0x78], edx
add rbx, 2
jmp 0x140042cfe
mov edx, dword [rbp - 0x78]
mov edi, r9d
test edx, edx
je 0x140042d6e
test esi, esi
setne dil
inc edi
mov esi, dword [rsp + 0x60]
jmp 0x140042da5
movzx eax, word [rbx]
cmp ax, 0x20
je 0x140042d83
cmp ax, 9
jne 0x140042d89
add rbx, 2
jmp 0x140042d74
test edx, edx
je 0x140042d9e
mov edi, r9d
test esi, esi
setne dil
inc edi
mov esi, dword [rsp + 0x60]
jmp 0x140042da5
mov esi, dword [rsp + 0x60]
mov edi, r9d
mov rbx, qword [rbp - 0x80]
mov eax, 1
mov edx, eax
mov rcx, qword [rsp + 0x70]
call fcn.1400244d0
cmp edi, 2
je 0x140042e20
cmp eax, 2
je 0x140042e20
test esi, esi
je 0x140042dda
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 8]
mov rcx, qword [rax + 0x38]
mov rdi, qword [rcx]
jmp 0x140042dfa
test rbx, rbx
je 0x140042deb
xor edx, edx
mov rcx, rbx
call fcn.140024570
jmp 0x140042df7
mov rcx, qword [0x14012a9f8]
call fcn.140005830
mov rdi, rax
xor edx, edx
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call fcn.140024570
imul rax, rdi
mov r8b, reloc.OLEAUT32.DLL_SafeArrayGetElement
mov rdx, rax
mov rcx, rbx
call fcn.140001090
jmp case.0x1400418c9.3
test esi, esi
je 0x140042e3c
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 8]
mov rcx, qword [rax + 0x38]
pxor xmm6, xmm6
cvtsi2sd xmm6, qword [rcx]
jmp 0x140042e5d
test rbx, rbx
je 0x140042e4d
xor edx, edx
mov rcx, rbx
call fcn.140024610
jmp 0x140042e59
mov rcx, qword [0x14012a9f8]
call fcn.140024390
movapd xmm6, xmm0
xor edx, edx
mov rdi, qword [rsp + 0x70]
mov rcx, rdi
call fcn.140024610
mulsd xmm0, xmm6
movsd qword [rbp - 0x60], xmm0
mov r8b, 0x28
mov rdx, qword [rbp - 0x60]
mov rcx, rdi
call fcn.140001090
jmp case.0x1400418c9.3
mov rax, qword [r10 + 8]
cmp qword [rax + 0x38], 0
je 0x140042eac
cmp byte [rax + 0x21], 0
jne 0x140042eac
mov eax, 1
mov esi, eax
mov edi, eax
xor ecx, ecx
mov ebx, ecx
jmp 0x14004303a
xor r9d, r9d
mov esi, r9d
mov dword [rsp + 0x60], r9d
mov rbx, qword [0x14012a9f8]
mov rcx, qword [0x14012a958]
mov qword [rbp - 0x80], rcx
test rcx, rcx
je 0x140042efd
cmp word [rbx], si
jne 0x140042efd
movzx eax, byte [rcx + 0x23]
test al, al
jne 0x140042ee3
mov rax, qword [rcx + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
jne 0x140042efd
test rcx, rcx
je 0x140042f01
mov edx, 1
call fcn.1400244d0
mov edi, eax
jmp 0x140043031
mov qword [rbp - 0x80], r9
movzx eax, word [rbx]
cmp ax, 0x20
je 0x140042f10
cmp ax, 9
jne 0x140042f16
add rbx, 2
jmp 0x140042f01
movzx eax, word [rbx]
test ax, ax
je 0x14004302e
cmp ax, 0x2d
je 0x140042f2e
cmp ax, 0x2b
jne 0x140042f32
add rbx, 2
cmp word [rbx], 0x30
jne 0x140042f6a
movzx eax, word [rbx + 2]
cmp ax, 0x78
je 0x140042f48
cmp ax, 0x58
jne 0x140042f6a
movzx ecx, word [rbx + 4]
call fcn.1400d6b84
test eax, eax
je 0x140042f67
mov r8d, 1
mov ecx, r8d
add rbx, 4
xor r9d, r9d
jmp 0x140042f73
xor r9d, r9d
mov ecx, r9d
mov r8d, 1
mov esi, r9d
mov edx, r9d
mov dword [rbp - 0x78], edx
movsxd rdi, ecx
movzx eax, word [rbx]
cmp eax, 0x20
je 0x140043000
cmp eax, 9
je 0x140043000
test eax, eax
je 0x140043015
cmp eax, 0x2e
jne 0x140042faf
test esi, esi
jne 0x14004302a
test rdi, rdi
jne 0x14004302a
mov esi, r8d
jmp 0x140042fdf
test rdi, rdi
je 0x140042fd1
movzx ecx, ax
call fcn.1400d94d4
xor r9d, r9d
mov ecx, r9d
test eax, eax
sete cl
test ecx, ecx
jne 0x140042fe5
lea r8d, [r9 + 1]
jmp 0x140042fd9
add eax, 0xffffffd0
cmp eax, 9
ja 0x140042fe8
mov edx, r8d
mov dword [rbp - 0x78], edx
add rbx, 2
jmp 0x140042f7f
mov edx, dword [rbp - 0x78]
mov edi, r9d
test edx, edx
je 0x140042ff7
test esi, esi
setne dil
inc edi
mov esi, dword [rsp + 0x60]
jmp 0x140043031
movzx eax, word [rbx]
cmp ax, 0x20
je 0x14004300f
cmp ax, 9
jne 0x140043015
add rbx, 2
jmp 0x140043000
test edx, edx
je 0x14004302a
mov edi, r9d
test esi, esi
setne dil
inc edi
mov esi, dword [rsp + 0x60]
jmp 0x140043031
mov esi, dword [rsp + 0x60]
mov edi, r9d
mov rbx, qword [rbp - 0x80]
mov eax, 1
mov edx, eax
mov rcx, qword [rsp + 0x70]
call fcn.1400244d0
cmp edi, 2
je 0x1400430c1
cmp eax, 2
je 0x1400430c1
test esi, esi
je 0x140043066
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 8]
mov rcx, qword [rax + 0x38]
mov rdi, qword [rcx]
jmp 0x140043086
test rbx, rbx
je 0x140043077
xor edx, edx
mov rcx, rbx
call fcn.140024570
jmp 0x140043083
mov rcx, qword [0x14012a9f8]
call fcn.140005830
mov rdi, rax
test rdi, rdi
jne 0x14004309a
mov rcx, qword [rsp + 0x70]
call fcn.1400243d0
jmp 0x140046382
xor edx, edx
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call fcn.140024570
cqo
idiv rdi
mov r8b, reloc.OLEAUT32.DLL_SafeArrayGetElement
mov rdx, rax
mov rcx, rbx
call fcn.140001090
jmp case.0x1400418c9.3
test esi, esi
je 0x1400430dd
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 8]
mov rcx, qword [rax + 0x38]
pxor xmm6, xmm6
cvtsi2sd xmm6, qword [rcx]
jmp 0x1400430fe
test rbx, rbx
je 0x1400430ee
xor edx, edx
mov rcx, rbx
call fcn.140024610
jmp 0x1400430fa
mov rcx, qword [0x14012a9f8]
call fcn.140024390
movapd xmm6, xmm0
ucomisd xmm6, xmm8
jp 0x140043116
jne 0x140043116
mov rcx, qword [rsp + 0x70]
call fcn.1400243d0
jmp 0x140046382
xor edx, edx
mov rdi, qword [rsp + 0x70]
mov rcx, rdi
call fcn.140024610
divsd xmm0, xmm6
movsd qword [rbp - 0x60], xmm0
mov r8b, 0x28
mov rdx, qword [rbp - 0x60]
mov rcx, rdi
call fcn.140001090
jmp case.0x1400418c9.3
mov edx, 2
mov rcx, r10
call fcn.14003b7c0
mov rdi, rax
test eax, eax
jns 0x14004315c
xor eax, eax
mov edi, eax
jmp 0x140043170
mov edx, 1
mov rcx, qword [rsp + 0x68]
call fcn.14003b6f0
cmp edi, eax
cmovg edi, eax
movsxd r8, edi
xor r9d, r9d
mov rdx, qword [0x14012a9f8]
mov rcx, rbx
mov byte [rsp + 0x20], 1
call fcn.1400bd640
jmp 0x140046382
mov edx, 2
mov rcx, r10
call fcn.14003b7c0
mov rdi, rax
test eax, eax
mov eax, 0
cmovs edi, eax
lea edx, [rax + 1]
mov rcx, qword [rsp + 0x68]
call fcn.14003b6f0
mov rdx, rax
mov eax, edi
cmp rax, rdx
cmova edi, edx
movsxd r8, edi
sub rdx, r8
mov rax, qword [0x14012a9f8]
lea rdx, [rax + rdx*2]
mov byte [rsp + 0x20], 1
xor r9d, r9d
mov rcx, rbx
call fcn.1400bd640
jmp 0x140046382
cmp byte [r10 + 1], 4
jb 0x140043220
mov rax, qword [r10 + 8]
mov rcx, qword [rax + 0x68]
cmp word [rcx], 0
je 0x140043220
mov edx, 3
mov rcx, r10
call fcn.14003b7c0
mov rbx, rax
cmp eax, 1
jge 0x140043227
mov rcx, qword [rsp + 0x70]
call fcn.1400243d0
jmp 0x140046382
mov ebx, 0x7fffffff
jmp 0x14004322c
mov r10, qword [rsp + 0x68]
mov edx, 2
mov rcx, r10
call fcn.14003b7c0
mov rdi, rax
mov rax, qword [0x14012aa10]
movzx ecx, word [rax]
call fcn.140014b80
cmp ax, 0x4c
jne 0x14004327a
cmp edi, 1
jge 0x140043265
mov rcx, qword [rsp + 0x70]
call fcn.1400243d0
jmp 0x140046382
mov ecx, 1
mov eax, ecx
sub eax, ebx
add edi, eax
cmp edi, ecx
jge 0x140043285
lea ebx, [rbx + rdi - 1]
jmp 0x14004327f
mov ecx, 1
cmp edi, 1
cmovl edi, ecx
mov edx, ecx
mov rcx, qword [rsp + 0x68]
call fcn.14003b6f0
mov r11, rax
mov eax, edi
cmp r11, rax
jae 0x1400432aa
mov rcx, qword [rsp + 0x70]
call fcn.1400243d0
jmp 0x140046382
lea eax, [rdi - 1]
movsxd rcx, eax
sub r11, rcx
mov eax, ebx
cmp rax, r11
cmova ebx, r11d
movsxd rcx, edi
mov rax, qword [0x14012a9f8]
lea rdx, [rax + rcx*2 - 2]
movsxd r8, ebx
mov byte [rsp + 0x20], 1
xor r9d, r9d
mov rcx, qword [rsp + 0x70]
call fcn.1400bd640
jmp 0x140046382
mov edx, 2
mov rcx, r10
call fcn.14003b7c0
mov rdi, rax
test eax, eax
mov eax, 0
cmovs edi, eax
lea edx, [rax + 1]
mov rcx, qword [rsp + 0x68]
call fcn.14003b6f0
mov r8, rax
mov eax, edi
cmp rax, r8
cmova edi, r8d
movsxd rcx, edi
mov rax, qword [0x14012a9f8]
lea rdx, [rax + rcx*2]
sub r8, rcx
jmp 0x1400431d2
mov edx, 2
mov rcx, r10
call fcn.14003b7c0
mov rdi, rax
test eax, eax
mov eax, 0
cmovs edi, eax
lea edx, [rax + 1]
mov rcx, qword [rsp + 0x68]
call fcn.14003b6f0
mov r8, rax
mov eax, edi
cmp rax, r8
cmova edi, r8d
movsxd rax, edi
sub r8, rax
jmp 0x140043173
mov esi, 1
mov r8d, esi
mov edx, esi
mov rcx, rbx
call fcn.140001820
mov rdi, rax
cmp rax, qword [0x14012a9f8]
jne 0x14004339f
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x14004339a
mov rax, qword [rbx + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, sil
je 0x1400433f5
mov edx, esi
mov rcx, qword [rsp + 0x68]
call fcn.14003b6f0
mov r8, rax
mov byte [rsp + 0x20], sil
xor r9d, r9d
xor edx, edx
mov rcx, rbx
call fcn.1400bd640
cmp eax, esi
jne case.0x1400418c9.8
xor r8d, r8d
mov edx, esi
mov rcx, rbx
call fcn.140001820
mov rdi, rax
mov rcx, qword [0x14012a9f8]
mov rdx, rax
movzx eax, word [rcx]
mov word [rdx], ax
add rcx, 2
add rdx, 2
test ax, ax
jne 0x1400433e2
mov rax, qword [0x14012aa00]
movzx ecx, word [rax]
test cx, cx
je 0x140043427
call fcn.140014b80
cmp ax, 0x54
jne 0x140043427
mov rax, qword [0x14012aa00]
cmp word [rax + 2], 0
jne 0x140043427
mov rcx, rdi
call fcn.140024090
jmp 0x140043442
mov rax, qword [rsp + 0x68]
mov rcx, rdi
cmp byte [rax], 0x31
jne 0x14004343c
call qword [sym.imp.USER32.DLL_CharLowerW]
jmp 0x140043442
call qword [sym.imp.USER32.DLL_CharUpperW]
cmp byte [rbx + 0x23], 0
jne 0x14004344c
mov rbx, qword [rbx + 0x10]
cmp byte [rbx + 0x23], 2
jne 0x14004346d
cmp qword [0x14012d240], 0
je 0x14004346d
lea rcx, [0x14012d228]
call fcn.140006f20
jmp 0x140046382
and byte [rbx + 0x21], 0x86
mov ebx, esi
mov dword [rsp + 0x60], ebx
jmp 0x140046388
mov rcx, qword [0x14012a958]
test rcx, rcx
je 0x1400434a8
cmp byte [rcx + 0x23], 0
jne 0x140043498
mov rax, qword [rcx + 0x10]
movzx edx, byte [rax + 0x21]
jmp 0x14004349c
movzx edx, byte [rcx + 0x21]
test dl, 1
je 0x1400434a8
call fcn.140024880
jmp 0x1400434b5
mov edx, 1
mov rcx, r10
call fcn.14003b6f0
mov r8b, reloc.OLEAUT32.DLL_SafeArrayGetElement
mov rdx, rax
mov rcx, rbx
call fcn.140001090
jmp case.0x1400418c9.3
mov rsi, qword [0x14012aa08]
mov dword [rbp + 0x28], 0xffffffff
movzx ecx, word [rsi]
test cx, cx
je 0x140043514
call fcn.140014b80
movzx edx, ax
lea rcx, [0x1400fc0fc]
call fcn.1400d7d64
test rax, rax
je 0x140043514
lea rcx, [rsi + 2]
cmp word [rcx], 0
je 0x140043514
call fcn.14001ce60
mov dword [rsp + 0x60], eax
test eax, eax
jle 0x14004364a
jmp 0x14004351c
mov dword [rsp + 0x60], 1
mov rax, qword [0x14012aa00]
mov qword [rbp - 0x28], rax
cmp word [rax], 0
jne 0x140043537
xor edx, edx
mov dword [rbp + 0x28], edx
jmp 0x14004364c
mov rax, qword [0x14012a9f8]
mov qword [rbp - 0x80], rax
mov edx, 4
mov rbx, qword [rsp + 0x68]
mov rcx, rbx
call fcn.14003b7c0
mov rdi, rax
test eax, eax
mov eax, 0
cmovs edi, eax
lea edx, [rax + 1]
mov rcx, rbx
call fcn.14003b6f0
mov rbx, rax
cmp edi, eax
jge 0x14004364a
movzx ecx, word [rsi]
cmp cx, 0x31
je 0x140043605
call fcn.140014b80
cmp ax, 0x52
je 0x140043605
mov edx, 2
mov rcx, qword [rsp + 0x68]
call fcn.14003b6f0
mov qword [rbp - 0x60], rax
mov ebx, 1
movsxd rax, edi
mov rcx, qword [rbp - 0x80]
lea rcx, [rcx + rax*2]
mov rdi, qword [rbp - 0x28]
mov esi, dword [rsp + 0x60]
nop word [rax + rax]
mov rax, qword [0x1401255c8]
movzx edx, byte [rax + 0x132]
test dl, dl
jne 0x1400435dc
mov rdx, rdi
call fcn.1400b9750
jmp 0x1400435f0
cmp dl, 2
mov rdx, rdi
jne 0x1400435eb
call fcn.1400b99f0
jmp 0x1400435f0
call fcn.1400d8b38
test rax, rax
je 0x14004364a
cmp ebx, esi
je 0x140043634
inc ebx
mov rcx, qword [rbp - 0x60]
lea rcx, [rax + rcx*2]
jmp 0x1400435c0
mov rax, qword [rbp - 0x60]
movzx r9d, byte [rax + 0x132]
movsxd rax, edi
sub rbx, rax
mov esi, dword [rsp + 0x60]
mov dword [rsp + 0x20], esi
mov r8, qword [rbp - 0x28]
mov rdx, rbx
mov rdi, qword [rbp - 0x80]
mov rcx, rdi
call fcn.1400b9500
jmp 0x140043638
mov rdi, qword [rbp - 0x80]
test rax, rax
je 0x14004364a
sub rax, rdi
mov rbx, rax
sar rbx, 1
mov qword [rbp + 0x28], rbx
xor edx, edx
mov rbx, qword [0x14012b628]
lea rsi, [0x1400f1614]
cmp dword [rbp + 0x28], 0
lea rax, [0x1400f566c]
cmovl rsi, rax
movzx r8d, byte [rbx + 0x23]
test r8b, r8b
jne 0x140043690
mov byte [rsp + 0x20], 1
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rdx, rsi
mov rcx, qword [rbx + 0x10]
call fcn.1400bd640
jmp 0x140043943
mov r9b, 1
lea r11, [0x1400f1524]
test rsi, rsi
jne 0x1400436aa
xor r9b, r9b
mov rcx, rdx
mov rsi, r11
jmp 0x1400436cb
cmp qword [rbx + 8], rsi
jne 0x1400436b9
mov rcx, qword [rbx + 0x10]
shr rcx, 1
jmp 0x1400436cb
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rsi
repne scasw ax, word [rdi]
not rcx
dec rcx
mov qword [rbp - 0x80], rcx
lea rax, [rcx + 1]
lea rdi, [rax + rax]
cmp r8b, 2
jne 0x1400436ed
mov rdx, rcx
mov rcx, rsi
call fcn.140006da0
jmp 0x140043943
mov r10, qword [0x1401255a0]
cmp rdi, r10
jbe 0x14004371a
cmp rdi, qword [rbx + 0x18]
jbe 0x14004371a
mov r8, r11
lea rdx, [0x140110420]
lea rcx, [0x14012c5c0]
call fcn.14004e590
jmp 0x140043943
cmp rax, 2
jae 0x140043739
test r9b, r9b
setne dl
add edx, 3
xor r8d, r8d
mov rcx, rbx
call fcn.1400bdcf0
jmp 0x140043943
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x140043756
and al, 0x3d
mov byte [rbx + 0x21], al
mov rcx, qword [rbx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.DLL_SafeArrayGetDim]
mov r10, qword [0x1401255a0]
and byte [rbx + 0x21], 0x82
mov r8, qword [rbx + 0x18]
cmp rdi, r8
jbe 0x140043918
movzx ecx, byte [rbx + 0x20]
movzx eax, cl
cmp cl, 1
jbe 0x140043780
cmp al, 2
je 0x1400437c9
mov rax, qword [rbp + 0x50]
jmp 0x1400438c3
cmp rdi, 0x80
ja 0x1400437c9
cmp rdi, 8
ja 0x140043796
mov eax, 8
jmp 0x1400437a7
mov eax, 0x80
cmp rdi, 0x10
mov ecx, reloc.OLEAUT32.DLL_SafeArrayGetDim
cmovbe eax, ecx
mov qword [rbp + 0x30], rax
mov rcx, rax
call fcn.1400b60a0
mov qword [rbp + 0x50], rax
test rax, rax
je 0x140043943
mov byte [rbx + 0x20], 1
jmp 0x1400438c3
cmp rdi, 0x20
jae 0x1400437da
mov r9d, SafeArrayAllocDescriptor
jmp 0x14004387f
cmp rdi, 0x208
jae 0x1400437ee
mov r9d, 0x208
jmp 0x14004387f
cmp rdi, 0x50000
jae 0x14004383b
pxor xmm0, xmm0
cvtsi2sd xmm0, rdi
test rdi, rdi
jns 0x14004380a
addsd xmm0, xmm10
mulsd xmm0, xmm11
xor eax, eax
comisd xmm0, xmm9
jbe 0x140043831
subsd xmm0, xmm9
comisd xmm0, xmm9
jae 0x140043831
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si r9, xmm0
add r9, rax
jmp 0x14004387f
cmp rdi, 0x320000
jae 0x14004384d
lea r9, [rdi + 0x8000]
jmp 0x14004387f
cmp rdi, 0xc80000
jae 0x140043878
mov r9, rdi
movabs rax, 0x47ae147ae147ae15
mul rdi
sub r9, rdx
shr r9, 1
add r9, rdx
shr r9, 6
add r9, rdi
jmp 0x14004387f
lea r9, [rdi + 0x20000]
cmp r9, r10
cmova r9, r10
mov qword [rbp + 0x30], r9
cmp cl, 2
jne 0x1400438a6
test r8, r8
je 0x1400438a6
mov dil, 1
mov rcx, qword [rbx + 8]
call fcn.1400d6fc8
mov r9, qword [rbp + 0x30]
jmp 0x1400438a9
xor dil, dil
test r9, r9
js 0x1400438d5
mov rcx, r9
call fcn.1400d6f08
mov qword [rbp + 0x50], rax
test rax, rax
je 0x1400438d5
mov byte [rbx + 0x20], 2
mov qword [rbx + 8], rax
mov rax, qword [rbp + 0x30]
mov qword [rbx + 0x18], rax
and byte [rbx + 0x21], 0x7f
jmp 0x140043918
test dil, dil
je 0x1400438ed
xor eax, eax
mov qword [rbx + 0x18], rax
lea rcx, [0x14012c4b8]
mov qword [rbx + 8], rcx
jmp 0x1400438f8
mov rax, qword [rbx + 8]
xor ecx, ecx
mov word [rax], cx
xor eax, eax
mov qword [rbx + 0x10], rax
lea r8, [0x1400f1524]
lea rdx, [0x1400f5a40]
lea rcx, [0x14012c5c0]
call fcn.14004e590
jmp 0x140043943
mov rcx, qword [rbx + 8]
mov rdi, qword [rbp - 0x80]
cmp rcx, rsi
je 0x140043931
lea r8, [rdi + rdi]
mov rdx, rsi
call fcn.1400d7a30
lea rcx, [rdi + rdi]
mov rax, qword [rbx + 8]
xor edx, edx
mov word [rcx + rax], dx
mov qword [rbx + 0x10], rcx
movsxd rdx, dword [rbp + 0x28]
mov r8b, reloc.OLEAUT32.DLL_SafeArrayGetElement
mov rcx, qword [rsp + 0x70]
call fcn.140001090
jmp case.0x1400418c9.3
mov rcx, r10
call fcn.140068470
jmp 0x140046382
mov r8, qword [0x14012aa08]
mov rdx, qword [0x14012aa00]
mov rcx, qword [0x14012a9f8]
call fcn.1400524f0
jmp 0x140046382
mov rax, qword [0x14012aa08]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa00]
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
mov rcx, r10
call fcn.1400689b0
jmp 0x140046382
mov rdx, qword [0x14012a9f0]
mov rcx, r10
call fcn.140069a00
jmp 0x140046382
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
mov rcx, r10
call fcn.14006ae10
jmp 0x140046382
mov edx, 7
mov rcx, r10
call fcn.14003b7c0
mov qword [rbp - 0x60], rax
mov edx, 6
mov rdi, qword [rsp + 0x68]
mov rcx, rdi
call fcn.14003b7c0
mov qword [rbp - 0x80], rax
mov edx, 5
mov rcx, rdi
call fcn.14003b7c0
mov rsi, rax
mov edx, 4
mov rcx, rdi
call fcn.14003b7c0
mov rbx, rax
mov edx, 3
mov rcx, rdi
call fcn.14003b7c0
mov rdi, rax
mov edx, 2
mov rcx, qword [rsp + 0x68]
call fcn.14003b7c0
mov rdx, rax
mov byte [rsp + 0x40], 0
mov rax, qword [0x14012aa30]
mov qword [rsp + 0x38], rax
mov rax, qword [rbp - 0x60]
mov dword [rsp + 0x30], eax
mov rax, qword [rbp - 0x80]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], esi
mov r9d, ebx
mov r8d, edi
mov rcx, qword [rsp + 0x68]
call fcn.140060a30
jmp 0x140046382
mov edx, 5
mov rcx, r10
call fcn.14003b7c0
mov rsi, rax
mov edx, 4
mov rdi, qword [rsp + 0x68]
mov rcx, rdi
call fcn.14003b7c0
mov rbx, rax
mov edx, 3
mov rcx, rdi
call fcn.14003b7c0
mov rdi, rax
mov edx, 2
mov rcx, qword [rsp + 0x68]
call fcn.14003b7c0
mov rdx, rax
mov rax, qword [0x14012aa20]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], esi
mov r9d, ebx
mov r8d, edi
mov rcx, qword [rsp + 0x68]
call fcn.140061fb0
jmp 0x140046382
mov edx, 2
mov rcx, r10
call fcn.14003b7c0
mov rdi, rax
mov edx, 1
mov rbx, qword [rsp + 0x68]
mov rcx, rbx
call fcn.14003b7c0
mov rdx, rax
mov r9, qword [0x14012aa08]
mov r8d, edi
mov rcx, rbx
call fcn.140087320
jmp 0x140046382
mov rcx, qword [0x14012a9f0]
cmp word [rcx], 0
je case.0x1400418c9.3
xor eax, eax
mov edx, eax
cmp dil, 0x42
sete dl
xor r9d, r9d
mov r8d, dword [rsi + 0x114]
call fcn.14001d570
jmp case.0x1400418c9.3
mov rcx, qword [0x14012a9f0]
mov ebx, 1
cmp word [rcx], 0
je 0x1400463a6
mov r8d, ebx
cmp dword [rsi + 0x114], 3
mov eax, 3
cmove r8d, eax
xor r9d, r9d
xor edx, edx
call fcn.14001d570
jmp 0x1400463a6
mov rcx, qword [0x14012a9f0]
cmp word [rcx], 0
je case.0x1400418c9.3
xor r9d, r9d
xor edx, edx
lea r8d, [r9 + 2]
call fcn.14001d570
jmp case.0x1400418c9.3
mov rcx, qword [0x14012a9f0]
cmp word [rcx], 0
je case.0x1400418c9.3
xor r9d, r9d
xor r8d, r8d
xor edx, edx
call fcn.14001d570
jmp case.0x1400418c9.3
mov rcx, qword [0x14012a9f0]
call fcn.14001fe50
jmp 0x140046382
lea rsi, [0x1400f1524]
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], rsi
mov rax, qword [0x14012aa20]
mov qword [rsp + 0x38], rax
mov rax, qword [0x14012aa18]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14012aa10]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14012aa08]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa00]
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
movzx ecx, dil
call fcn.140020350
jmp 0x140046382
mov rax, qword [0x14012aa18]
mov qword [rsp + 0x48], rax
mov rax, qword [0x14012aa08]
mov qword [rsp + 0x40], rax
mov rax, qword [0x14012aa20]
mov qword [rsp + 0x38], rax
mov rax, qword [0x14012aa10]
mov qword [rsp + 0x30], rax
lea rax, [0x1400f1524]
mov qword [rsp + 0x28], rax
jmp 0x140043c29
lea rsi, [0x1400f1524]
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], rsi
mov rax, qword [0x14012aa08]
mov qword [rsp + 0x38], rax
mov rax, qword [0x14012aa00]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rsi
mov r9, qword [0x14012a9f8]
mov r8, qword [0x14012a9f0]
mov rdx, rsi
jmp 0x140043c43
mov edx, 4
mov rcx, r10
call fcn.14003b7c0
mov rdx, rax
mov rcx, qword [rsp + 0x68]
call fcn.140065f40
jmp 0x140046382
cmp dil, 0x78
sete al
mov byte [rsp + 0x28], al
mov rax, qword [0x14012aa08]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa00]
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
mov rcx, rsi
call fcn.1400be5e0
mov ebx, 1
test rax, rax
je 0x1400463a6
mov rax, qword [0x1401255c8]
mov ecx, dword [rax + 0x74]
cmp ecx, 0xffffffff
jle 0x1400463a6
mov edx, ebx
call fcn.140001b60
jmp 0x1400463a6
mov r8d, 9
lea rdx, [0x1400fc108]
mov rcx, qword [0x14012a9f0]
call fcn.1400d7250
mov rcx, qword [0x14012aa08]
mov r8, qword [0x14012a9f8]
test eax, eax
jne 0x140043d93
cmp word [r8], ax
jne 0x140043d93
cmp word [rcx], ax
jne 0x140043d93
mov dil, 1
jmp 0x140043d96
xor dil, dil
mov ebx, reloc.OLEAUT32.DLL_SafeArrayLock
test dil, dil
mov eax, 0
cmovne ebx, eax
mov r9, qword [rsp + 0x68]
movzx eax, byte [r9]
cmp al, 0x84
je 0x140043dc0
cmp al, 0x85
je 0x140043dc0
mov rax, qword [0x14012aa00]
jmp 0x140043e05
mov rax, qword [0x14012aa00]
cmp word [rax], 0
je 0x140043dfe
mov edx, 2
mov rcx, r9
call fcn.14003b8c0
mulsd xmm0, qword [0x140112038]
cvttsd2si ebx, xmm0
test ebx, ebx
mov eax, 0x1f4
cmove ebx, eax
mov rcx, qword [0x14012aa08]
mov r8, qword [0x14012a9f8]
mov rax, qword [0x14012aa10]
cmp word [rax], 0
jne 0x140043e6f
test dil, dil
je 0x140043e6f
mov rax, qword [0x14012a9f0]
lea rdx, [rax + 0x12]
nop dword [rax + rax]
movzx eax, word [rdx]
cmp ax, 0x20
je 0x140043e2f
cmp ax, 9
jne 0x140043e35
add rdx, 2
jmp 0x140043e20
xor r8d, r8d
lea rcx, [0x14012c5c0]
call fcn.14003c880
test rax, rax
je 0x140043e61
mov r8d, ebx
mov rcx, qword [rsp + 0x68]
movzx edx, byte [rcx]
mov rcx, rax
call fcn.1400c1530
jmp 0x140046382
mov rcx, qword [0x14012aa08]
mov r8, qword [0x14012a9f8]
mov rax, qword [rsp + 0x68]
movzx eax, byte [rax]
cmp al, 0x84
je 0x140043e9f
cmp al, 0x85
je 0x140043ea1
mov qword [rsp + 0x20], rcx
mov r9, qword [0x14012aa00]
mov rdx, qword [0x14012a9f0]
movzx ecx, al
call fcn.140055b30
jmp 0x140046382
cmp al, 0x85
sete al
mov byte [rsp + 0x30], al
mov rax, qword [0x14012aa10]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
mov r9d, ebx
mov rdx, qword [0x14012a9f0]
mov rcx, rsi
call fcn.1400be9b0
jmp 0x140043d2b
mov rcx, qword [0x14012a9f8]
call fcn.14005fc30
jmp 0x140046382
mov rdx, qword [0x14012a9f8]
mov rcx, qword [0x14012a9f0]
call qword [sym.imp.KERNEL32.DLL_SetEnvironmentVariableW]
test eax, eax
sete dl
mov rcx, qword [rsp + 0x68]
call fcn.14004ced0
jmp 0x140046382
lea rax, [rbp + 0x138]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0x3a98
mov dword [rsp + 0x20], 1
lea r9, [0x1400fc120]
xor r8d, r8d
lea edx, [r8 + 0x1a]
mov ecx, 0xffff
call qword [sym.imp.USER32.DLL_SendMessageTimeoutW]
test rax, rax
sete dl
mov rcx, qword [rsp + 0x68]
call fcn.14004ced0
jmp 0x140046382
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
mov rcx, r10
call fcn.14008adf0
jmp 0x140046382
lea rdx, [0x14012d1a8]
mov rcx, qword [0x14012a9f0]
call fcn.1400b6730
lea rdx, [0x14012d1c0]
mov rcx, qword [0x14012a9f8]
call fcn.1400b6730
lea rdx, [0x14012d1d8]
mov rcx, qword [0x14012aa00]
call fcn.1400b6730
jmp case.0x1400418c9.3
lea rdx, [0x1400f5638]
mov rcx, qword [0x14012aa00]
call fcn.1400b9750
test rax, rax
setne dil
xor edx, edx
mov eax, edx
mov rcx, qword [rsp + 0x68]
cmp byte [rcx + 1], 3
cmova rax, qword [0x14012a968]
test dil, dil
sete cl
mov qword [rsp + 0x48], rax
mov byte [rsp + 0x40], 1
mov byte [rsp + 0x38], dil
mov qword [rsp + 0x30], rdx
mov rax, qword [0x14012aa00]
mov qword [rsp + 0x28], rax
mov byte [rsp + 0x20], cl
mov r9, qword [0x14012a9f8]
xor r8d, r8d
mov rdx, qword [0x14012a9f0]
lea rcx, [0x14012c5c0]
call fcn.14004fa20
mov ebx, eax
mov dword [rsp + 0x60], eax
test dil, dil
je 0x140046388
lea rdx, [0x1400fc138]
test eax, eax
lea rax, [0x1400f1614]
cmovne rdx, rax
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rcx, qword [0x14012b628]
jmp 0x140043180
mov rcx, r10
call fcn.140055c40
jmp 0x140046382
cmp byte [r10 + 1], 2
jbe 0x1400440c2
mov rax, qword [0x14012aa28]
mov qword [rsp + 0x38], rax
mov rax, qword [0x14012aa20]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14012aa18]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14012aa10]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa08]
mov r8, qword [0x14012aa00]
mov rdx, qword [0x14012a9f8]
mov rcx, qword [0x14012a9f0]
call fcn.140056f20
jmp 0x140046382
lea rsi, [0x1400f1524]
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rsi
mov r9, qword [0x14012a9f8]
mov r8, qword [0x14012a9f0]
mov rdx, rsi
mov rcx, rsi
call fcn.140056f20
jmp 0x140046382
mov rax, qword [0x14012aa40]
mov qword [rsp + 0x58], rax
mov rax, qword [0x14012aa38]
mov qword [rsp + 0x50], rax
mov rax, qword [0x14012aa30]
mov qword [rsp + 0x48], rax
mov rax, qword [0x14012aa28]
mov qword [rsp + 0x40], rax
mov rax, qword [0x14012aa20]
mov qword [rsp + 0x38], rax
mov rax, qword [0x14012aa18]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14012aa10]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14012aa08]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa00]
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
mov rcx, r10
call fcn.140087e20
jmp 0x140046382
xor eax, eax
cmp dil, 0x47
sete al
mov dword [rsp + 0x38], eax
mov rax, qword [0x14012aa18]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14012aa10]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14012aa08]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa00]
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
mov rcx, r10
call fcn.140057090
jmp 0x140046382
xor r8d, r8d
mov dl, 1
mov rcx, qword [0x14012aa08]
call fcn.14001ce90
mov edi, eax
test al, al
jne 0x1400441fa
mov r9, qword [0x14012aa08]
lea rdx, [0x1400f9e48]
jmp 0x140046375
mov rax, qword [0x14012aa10]
cmp word [rax], 0
je 0x14004421b
mov edx, 4
mov rcx, qword [rsp + 0x68]
call fcn.14003b7c0
mov rdx, rax
jmp 0x140044220
mov edx, 1
mov rax, qword [0x14012aa28]
mov qword [rsp + 0x40], rax
mov rax, qword [0x14012aa20]
mov qword [rsp + 0x38], rax
mov rax, qword [0x14012aa00]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14012a9f8]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14012a9f0]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa18]
mov r8d, edx
movzx edx, dil
mov rcx, qword [rsp + 0x68]
call fcn.140057460
jmp 0x140046382
mov rax, qword [0x14012aa30]
mov qword [rsp + 0x48], rax
mov rax, qword [0x14012aa28]
mov qword [rsp + 0x40], rax
mov rax, qword [0x14012aa20]
mov qword [rsp + 0x38], rax
mov rax, qword [0x14012aa18]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14012aa10]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14012aa08]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa00]
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
mov rcx, r10
call fcn.140057f10
jmp 0x140046382
mov rax, qword [0x14012aa30]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14012aa28]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa20]
mov r8, qword [0x14012aa18]
mov rdx, qword [0x14012aa10]
mov rcx, r10
call fcn.140058410
jmp 0x140046382
mov rax, qword [0x14012aa10]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa08]
mov r8, qword [0x14012aa00]
mov rdx, qword [0x14012a9f8]
mov rcx, r10
call fcn.140058590
jmp 0x140046382
mov rax, qword [0x14012aa10]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14012aa08]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa00]
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
mov rcx, r10
call fcn.140058d20
jmp 0x140046382
mov rax, qword [0x14012aa18]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14012aa10]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14012aa08]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa00]
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
mov rcx, r10
call fcn.1400590f0
jmp 0x140046382
mov rax, qword [0x14012aa18]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14012aa10]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa08]
mov r8, qword [0x14012aa00]
mov rdx, qword [0x14012a9f8]
mov rcx, r10
call fcn.140059490
jmp 0x140046382
mov rax, qword [0x14012aa20]
mov qword [rsp + 0x38], rax
mov rax, qword [0x14012aa18]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14012aa10]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14012aa08]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa00]
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
mov rcx, r10
call fcn.140088460
jmp 0x140046382
mov rax, qword [0x14012aa28]
mov qword [rsp + 0x38], rax
mov rax, qword [0x14012aa20]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14012aa18]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14012aa10]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa08]
mov r8, qword [0x14012aa00]
mov rdx, qword [0x14012a9f8]
mov rcx, r10
call fcn.140089490
jmp 0x140046382
mov rax, qword [0x14012aa18]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa10]
mov r8, qword [0x14012aa08]
mov rdx, qword [0x14012aa00]
mov rcx, qword [0x14012a9f8]
call fcn.14005a8c0
jmp 0x140046382
mov rax, qword [0x14012aa28]
mov qword [rsp + 0x38], rax
mov rax, qword [0x14012aa20]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14012aa18]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14012aa10]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa08]
mov r8, qword [0x14012aa00]
mov rdx, qword [0x14012a9f8]
mov rcx, qword [0x14012a9f0]
call fcn.14005a960
jmp 0x140046382
cmp dil, 0x92
sete dl
mov rcx, r10
call fcn.14005aac0
jmp 0x140046382
mov r9, qword [0x14012aa00]
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
mov rcx, r10
call fcn.14005b040
jmp 0x140046382
mov rax, qword [0x14012aa18]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14012aa10]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14012aa08]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa00]
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
mov rcx, r10
call fcn.14005c080
jmp 0x140046382
cmp byte [r10 + 1], 1
jbe 0x1400445e6
mov rax, qword [0x14012aa10]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa08]
mov r8, qword [0x14012aa00]
mov rdx, qword [0x14012a9f8]
mov rcx, qword [0x14012a9f0]
call fcn.14005c550
jmp 0x140046382
mov rdi, qword [0x14012a9f0]
lea rsi, [0x1400f1524]
mov r9, rsi
mov r8, rsi
mov rdx, rsi
mov rcx, rsi
call fcn.140074ed0
test rax, rax
je 0x140041f9f
mov rdx, rdi
mov rcx, rax
call qword [sym.imp.USER32.DLL_SetWindowTextW]
mov ebx, 1
mov dword [rsp + 0x60], ebx
jmp 0x140046388
mov r9, qword [0x14012aa10]
mov r8, qword [0x14012aa08]
mov rdx, qword [0x14012aa00]
mov rcx, qword [0x14012a9f8]
call fcn.14005c590
jmp 0x140046382
mov r9, qword [0x14012aa10]
mov r8, qword [0x14012aa08]
mov rdx, qword [0x14012aa00]
mov rcx, qword [0x14012a9f8]
call fcn.14005c9f0
jmp 0x140046382
mov rax, qword [0x14012aa18]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14012aa10]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa08]
mov r8, qword [0x14012aa00]
mov rdx, qword [0x14012a9f8]
mov rcx, r10
call fcn.14005ce20
jmp 0x140046382
mov rax, qword [0x14012aa10]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa08]
mov r8, qword [0x14012aa00]
mov rdx, qword [0x14012a9f8]
mov rcx, r10
call fcn.14005e710
jmp 0x140046382
mov rax, qword [0x14012aa28]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa20]
mov r8, qword [0x14012aa18]
mov rdx, qword [0x14012aa10]
mov rcx, r10
call fcn.14005ef80
jmp 0x140046382
mov r8, qword [0x14012aa00]
mov rdx, qword [0x14012a9f8]
mov rcx, r10
call fcn.14005ff70
jmp 0x140046382
xor edx, edx
lea rcx, [0x1400f87b8]
call qword [sym.imp.USER32.DLL_FindWindowW]
mov r8d, 0x1a3
mov edx, 0x111
xor r9d, r9d
mov rcx, rax
call qword [sym.imp.USER32.DLL_PostMessageW]
mov rdx, qword [0x1401255c8]
mov ecx, dword [rdx + 0x74]
mov ebx, 1
jmp 0x140043d43
xor edx, edx
lea rcx, [0x1400f87b8]
call qword [sym.imp.USER32.DLL_FindWindowW]
mov r8d, OleCreatePictureIndirect
jmp 0x14004473a
mov rax, qword [r10 + 0x10]
test rax, rax
jne 0x1400447a8
mov rdx, qword [0x14012a9f0]
cmp word [rdx], ax
je 0x1400447a8
lea rcx, [0x14012c5c0]
call fcn.14002fe60
test rax, rax
jne 0x1400447a8
lea rdx, [0x1400f5908]
jmp 0x14004636e
mov qword [0x14012d0f0], rax
jmp case.0x1400418c9.3
xor eax, eax
cmp byte [r10 + 1], 1
cmova rax, qword [0x14012a958]
mov qword [rsp + 0x20], rax
mov r9, qword [r10 + 0x10]
mov r8, qword [0x14012aa00]
mov rdx, qword [0x14012a9f8]
mov rcx, qword [0x14012a9f0]
call fcn.140016380
jmp 0x140046382
mov rdi, qword [r10 + 0x10]
test rdi, rdi
jne 0x140044898
xor r9d, r9d
mov r8, rbx
mov rdx, qword [0x14012a9f0]
lea rcx, [0x14012c5c0]
call fcn.14002fec0
mov rdi, rax
test rax, rax
jne 0x140044898
mov r9, qword [0x14012a9f0]
cmp word [r9], ax
je 0x140044832
lea rdx, [0x1400f5908]
jmp 0x140046375
mov r10, qword [rsp + 0x68]
cmp byte [r10 + 1], 0
jbe 0x140044862
mov rax, qword [r10 + 8]
mov rcx, qword [rax + 8]
cmp word [rcx], 0
je 0x140044862
lea r9, [0x1400f1524]
lea rdx, [0x1400f5e78]
mov rcx, r10
jmp 0x14004637a
mov rdi, qword [rsi + 0xe8]
test rdi, rdi
jne 0x140044898
mov rdi, qword [rsi + 0xf0]
test rdi, rdi
je 0x140044882
mov rdi, qword [rdi]
test rdi, rdi
jne 0x140044898
lea r9, [0x1400f1524]
lea rdx, [0x1400fa730]
mov rcx, r10
jmp 0x14004637a
xor eax, eax
mov dword [rsp + 0x20], eax
mov ebx, 1
mov r9d, ebx
mov r8d, ebx
mov edx, ebx
mov rcx, qword [0x14012a9f8]
call fcn.1400b9140
test eax, eax
jne 0x140044930
xor edx, edx
mov rcx, qword [0x14012a9f8]
call fcn.140014c40
test eax, eax
jne 0x14004490b
lea rdx, [0x1400f4c00]
mov rcx, qword [0x14012a9f8]
call fcn.1400d6a7c
test eax, eax
jne 0x1400448f8
mov rdx, rdi
lea rcx, [0x14012c5c0]
call fcn.14002fd30
jmp 0x1400463a6
mov r9, qword [0x14012a9f8]
lea rdx, [0x1400f5ea8]
jmp 0x140046375
jle 0x140044930
cmp eax, 2
jg 0x140044930
cmp eax, ebx
sete al
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], al
mov r9, qword [0x14012aa00]
lea r8, [0x1400f1524]
jmp 0x14004495b
mov r9, qword [0x14012aa00]
mov r8, qword [0x14012a9f8]
cmp word [r8], 0
jne 0x140044951
cmp word [r9], 0
je 0x140044951
movzx eax, bl
jmp 0x140044953
xor eax, eax
mov byte [rsp + 0x28], al
mov byte [rsp + 0x20], bl
mov rdx, rdi
lea rcx, [0x14012c5c0]
call fcn.14002fa50
jmp 0x1400463a6
mov edi, reloc.OLEAUT32.DLL_SafeArrayGetDim
mov rcx, qword [0x14012a9f0]
cmp word [rcx], 0
je 0x1400449ab
lea rdx, [0x1400fc144]
call fcn.1400d6a7c
test eax, eax
je 0x1400449ab
xor edx, edx
mov rcx, qword [rsp + 0x68]
call fcn.14003b7c0
mov rdi, rax
test eax, eax
jne 0x1400449ab
xor eax, eax
lea ebx, [rax + 1]
jmp 0x1400449b2
mov ebx, 1
mov eax, ebx
mov byte [rsi + 0x12e], al
test al, al
je 0x1400449dc
mov dword [rsi + 0x118], edi
mov byte [rsi + 0x12c], 0
mov qword [rsi], 0xffffffffffffffff
mov dword [rsi + 0x34], 0xffffffff
jmp 0x1400463a6
mov dword [rsi + 0x118], 5
mov byte [rsi + 0x12c], 1
jmp 0x1400463a6
mov rcx, qword [0x14012a9f0]
call fcn.140026cf0
mov edx, eax
dec edx
je 0x140044a95
dec edx
je 0x140044a47
dec edx
jne case.0x1400418c9.3
mov rax, qword [0x14012a9f8]
cmp word [rax], dx
je 0x140044a3a
mov edi, 1
mov edx, edi
mov rcx, qword [rsp + 0x68]
call fcn.14003b7c0
test rax, rax
jne 0x140044a3a
mov eax, edi
jmp 0x140044a3c
xor eax, eax
mov byte [rsi + 0x12d], al
jmp case.0x1400418c9.3
mov rax, qword [0x14012a9f8]
mov rdi, qword [rsp + 0x68]
cmp word [rax], 0
je 0x140044a6c
mov edx, 1
mov rcx, rdi
call fcn.14003b7c0
mov dword [0x14012d19c], eax
mov rax, qword [0x14012aa00]
cmp word [rax], 0
je case.0x1400418c9.3
mov edx, 2
mov rcx, rdi
call fcn.14003b7c0
mov dword [0x14012d198], eax
jmp case.0x1400418c9.3
mov ebx, 1
mov edx, ebx
mov rcx, qword [rsp + 0x68]
call fcn.14003b7c0
mov dword [rsi + 0x3c], eax
jmp 0x1400463a6
mov rdi, qword [r10 + 0x10]
test rdi, rdi
jne 0x140044ade
mov r8b, 1
mov rdx, qword [0x14012a9f0]
lea rcx, [0x14012c5c0]
call fcn.14003c880
mov rdi, rax
test rax, rax
je case.0x1400418c9.8
mov r10, qword [rsp + 0x68]
mov rdx, qword [0x14012aa08]
cmp word [rdx], 0
je 0x140044b1c
mov rax, qword [r10 + 0x28]
test rax, rax
jne 0x140044b18
lea rcx, [0x14012c5c0]
call fcn.14002fe60
test rax, rax
jne 0x140044b18
mov r9, qword [0x14012aa08]
lea rdx, [0x1400f5908]
jmp 0x140046375
mov qword [rdi + 0x20], rax
mov rax, qword [0x14012aa18]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa10]
mov r8, qword [0x14012aa00]
mov rdx, qword [0x14012a9f8]
mov rcx, rdi
call fcn.1400c1240
jmp 0x140046382
mov rdi, qword [r10 + 0x10]
test rdi, rdi
jne 0x140044b75
xor r8d, r8d
mov rdx, qword [0x14012a9f0]
lea rcx, [0x14012c5c0]
call fcn.14003c880
mov rdi, rax
test rax, rax
je case.0x1400418c9.3
mov rcx, qword [0x14012a9f8]
cmp word [rcx], 0
je 0x140044b96
lea rdx, [0x1400f62d4]
call fcn.1400d6a7c
test eax, eax
jne 0x140044b96
mov dl, 1
jmp 0x140044b98
xor edx, edx
mov rcx, rdi
call fcn.1400c19e0
jmp case.0x1400418c9.3
mov rdi, qword [r10 + 0x10]
test rdi, rdi
jne 0x140044bd0
xor r8d, r8d
mov rdx, qword [0x14012a9f0]
lea rcx, [0x14012c5c0]
call fcn.14003c880
mov rdi, rax
test rax, rax
je case.0x1400418c9.3
mov rcx, qword [0x14012a9f8]
cmp word [rcx], 0
je 0x140044c20
lea rdx, [0x1400f9b00]
call fcn.1400d6a7c
test eax, eax
jne 0x140044bff
xor r8d, r8d
mov dl, 0x84
mov rcx, rdi
call fcn.1400c1530
jmp case.0x1400418c9.3
mov rcx, qword [0x14012a9f8]
cmp word [rcx], 0
je 0x140044c20
lea rdx, [0x1400f62d4]
call fcn.1400d6a7c
test eax, eax
jne 0x140044c20
mov dl, 1
jmp 0x140044c22
xor edx, edx
mov rcx, rdi
call fcn.1400c1600
jmp case.0x1400418c9.3
mov rdx, qword [0x14012aa00]
mov rcx, qword [0x14012a9f8]
call fcn.14006bb40
jmp 0x140046382
test rbx, rbx
jne 0x140044c68
mov ebx, 1
mov edx, ebx
mov rcx, r10
call fcn.14003b7c0
mov rcx, rax
call fcn.140023c90
jmp 0x1400463a6
xor esi, esi
mov dword [rsp + 0x20], esi
mov edi, 1
mov r9d, edi
xor r8d, r8d
mov edx, edi
mov rcx, qword [0x14012a9f8]
call fcn.1400b9140
cmp eax, 2
je 0x140044d36
mov dword [rsp + 0x20], esi
mov r9d, edi
xor r8d, r8d
mov edx, edi
mov rcx, qword [0x14012aa00]
call fcn.1400b9140
cmp eax, 2
je 0x140044d36
mov rax, qword [0x14012a9f8]
cmp word [rax], si
je 0x140044cd1
mov edx, edi
mov rdi, qword [rsp + 0x68]
mov rcx, rdi
call fcn.14003b7c0
mov rbx, rax
jmp 0x140044cd8
mov ebx, esi
mov rdi, qword [rsp + 0x68]
mov rax, qword [0x14012aa00]
cmp word [rax], si
je 0x140044cf6
mov edx, 2
mov rcx, rdi
call fcn.14003b7c0
mov rdi, rax
jmp 0x140044cfb
mov edi, 0x7fffffff
cmp ebx, edi
jle 0x140044d05
mov eax, ebx
mov ebx, edi
mov edi, eax
call fcn.140023e20
mov edx, eax
movsxd rax, ebx
movsxd rcx, edi
sub rcx, rax
inc rcx
mov eax, edx
cqo
idiv rcx
add edx, ebx
movsxd rdx, edx
mov r8b, reloc.OLEAUT32.DLL_SafeArrayGetElement
mov rcx, qword [rsp + 0x70]
call fcn.140001090
jmp case.0x1400418c9.3
mov rax, qword [0x14012a9f8]
cmp word [rax], si
je 0x140044d57
mov edx, edi
mov rdi, qword [rsp + 0x68]
mov rcx, rdi
call fcn.14003b8c0
movapd xmm7, xmm0
jmp 0x140044d61
movapd xmm7, xmm8
mov rdi, qword [rsp + 0x68]
mov rax, qword [0x14012aa00]
cmp word [rax], si
je 0x140044d80
mov edx, 2
mov rcx, rdi
call fcn.14003b8c0
movapd xmm6, xmm0
jmp 0x140044d88
movsd xmm6, qword [0x140112618]
comisd xmm7, xmm6
jbe 0x140044d9a
movapd xmm0, xmm7
movapd xmm7, xmm6
movapd xmm6, xmm0
call fcn.140023e80
subsd xmm6, xmm7
mulsd xmm0, xmm6
addsd xmm0, xmm7
movapd xmm1, xmm0
mov rcx, rbx
call fcn.140024460
jmp 0x140046382
mov r8b, 1
mov rdx, qword [0x14012a9f8]
mov rcx, r10
call fcn.14006c230
jmp 0x140046382
mov r9, qword [0x14012aa00]
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
mov rcx, r10
call fcn.14006c620
jmp 0x140046382
mov r8, qword [0x14012aa00]
mov rdx, qword [0x14012a9f8]
mov rcx, r10
call fcn.14006c8f0
jmp 0x140046382
mov rdx, qword [0x14012a9f0]
cmp dil, 0x9d
mov eax, 0
cmove rdx, rax
mov r9, qword [0x14012aa08]
mov r8, qword [0x14012a9f8]
mov rcx, r10
call fcn.14006e390
jmp 0x140046382
mov rax, qword [0x14012a9f8]
cmp word [rax], 0
je 0x140044e62
mov edx, 1
mov rcx, r10
call fcn.14003b7c0
dec eax
mov r10, qword [rsp + 0x68]
jmp 0x140044e64
xor eax, eax
movsxd r8, eax
test eax, eax
mov eax, 0
cmovs r8, rax
mov rcx, r10
cmp byte [r10], 0x9f
jne 0x140044e88
mov rdx, r8
call fcn.14006ffc0
jmp 0x140046382
mov rdx, qword [0x14012a9f0]
call fcn.140070350
jmp 0x140046382
mov rax, qword [0x14012a9f8]
mov ebx, 1
cmp word [rax], 0
je 0x140044ec9
mov edx, ebx
mov rcx, r10
call fcn.14003b7c0
mov rdi, rax
test eax, eax
mov eax, 0x96
cmovs edi, eax
mov r10, qword [rsp + 0x68]
jmp 0x140044ece
mov edi, 0x96
mov rax, qword [0x14012a9f0]
cmp word [rax], 0
je 0x140044ee7
xor edx, edx
mov rcx, r10
call fcn.14003b7c0
jmp 0x140044eec
mov eax, 0x20b
mov edx, edi
mov ecx, eax
call qword [sym.imp.KERNEL32.DLL_Beep]
jmp 0x1400463a6
mov rcx, qword [0x14012a9f8]
cmp word [rcx], 0
je 0x140044f1f
lea rdx, [0x1400fa0c0]
call fcn.1400d6a7c
test eax, eax
je 0x140044f34
mov rcx, qword [0x14012a9f8]
lea rdx, [0x1400f566c]
call fcn.1400d6a7c
test eax, eax
je 0x140044f34
xor r8d, r8d
jmp 0x140044f37
mov r8b, 1
mov rdx, qword [0x14012a9f0]
mov rcx, qword [rsp + 0x68]
call fcn.1400707c0
jmp 0x140046382
cmp byte [r10 + 1], 2
jae 0x140044f5a
mov r9, qword [rsi + 0x20]
jmp 0x140044f5f
xor eax, eax
mov r9d, eax
mov r8, qword [0x14012a9f0]
mov rdx, qword [0x14012a9f8]
mov rcx, r10
call fcn.140073280
jmp 0x140046382
mov rdx, qword [0x14012a9f8]
mov rcx, r10
call fcn.140072260
jmp 0x140046382
mov r8, qword [0x14012aa00]
mov rdx, qword [0x14012a9f8]
mov rcx, r10
call fcn.140072a90
jmp 0x140046382
mov rdx, qword [0x14012a9f0]
mov rcx, r10
call fcn.1400736e0
jmp 0x140046382
mov rdx, qword [0x14012a9f0]
mov rcx, r10
call fcn.14008d690
jmp 0x140046382
xor eax, eax
mov edx, eax
mov rax, qword [0x14012a9f0]
cmp word [rax], dx
cmovne rdx, rax
xor ecx, ecx
lea r8d, [rcx + 7]
call qword [sym.imp.SHELL32.DLL_SHEmptyRecycleBinW]
test eax, eax
setne dl
mov rcx, qword [rsp + 0x68]
call fcn.14004ced0
jmp 0x140046382
mov r9, qword [0x14012aa00]
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
mov rcx, r10
call fcn.1400737c0
jmp 0x140046382
mov edx, 2
mov rcx, r10
call fcn.14003b7c0
cmp eax, 1
sete r9b
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
mov rcx, qword [rsp + 0x68]
call fcn.140073a40
jmp 0x140046382
mov edx, 2
mov rcx, r10
call fcn.14003b7c0
xor ecx, ecx
mov r8d, ecx
cmp eax, 1
sete r8b
mov rcx, qword [0x14012a9f0]
cmp word [rcx], 0
je 0x14004508d
xor r9d, r9d
mov rdx, qword [0x14012a9f8]
call fcn.14008dbf0
jmp 0x14004508f
xor al, al
test al, al
sete dl
mov rcx, qword [rsp + 0x68]
call fcn.14004ced0
jmp 0x140046382
mov rax, qword [0x14012aa00]
movzx ecx, word [rax]
call fcn.140014b80
cmp ax, 0x52
jne 0x1400450e0
mov rdx, qword [0x14012a9f8]
mov rcx, qword [0x14012a9f0]
call qword [sym.imp.KERNEL32.DLL_MoveFileW]
test eax, eax
sete dl
mov rcx, qword [rsp + 0x68]
call fcn.14004ced0
jmp 0x140046382
mov edx, 2
mov rdi, qword [rsp + 0x68]
mov rcx, rdi
call fcn.14003b7c0
mov rcx, qword [0x14012a9f0]
cmp word [rcx], 0
je 0x140045113
mov r9b, 1
mov r8d, eax
mov rdx, qword [0x14012a9f8]
call fcn.14008dbf0
jmp 0x140045115
xor al, al
test al, al
sete dl
mov rcx, rdi
call fcn.14004ced0
jmp 0x140046382
mov rcx, qword [0x14012a9f0]
call fcn.1400720d0
test al, al
sete dil
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov ecx, eax
mov rax, qword [0x1401255c8]
mov dword [rax + 0x40], ecx
movzx edx, dil
mov rcx, qword [rsp + 0x68]
call fcn.14004ced0
jmp 0x140046382
mov rax, qword [0x14012a9f0]
cmp word [rax], 0
je 0x140045198
mov edx, 1
mov rcx, r10
call fcn.14003b7c0
cmp eax, 1
sete dl
mov rcx, qword [0x14012a9f0]
cmp word [rcx], 0
je 0x140045198
call fcn.14008dec0
test al, al
je 0x140045198
xor edx, edx
jmp 0x14004519a
mov dl, 1
mov rcx, qword [rsp + 0x68]
call fcn.14004ced0
jmp 0x140046382
mov rdx, qword [0x14012a9f8]
cmp word [rdx], 0
jne 0x1400451cf
mov rdx, qword [rsi + 0x10]
test rdx, rdx
je 0x1400451c8
add rdx, 0x250
jmp 0x1400451cf
lea rdx, [0x1400f1524]
mov rcx, r10
call fcn.140073ac0
jmp 0x140046382
mov rbx, qword [0x14012a9f8]
cmp word [rbx], 0
jne 0x140045202
mov rbx, qword [rsi + 0x10]
test rbx, rbx
je 0x1400451fb
add rbx, 0x250
jmp 0x140045202
lea rbx, [0x1400f1524]
mov edx, 3
mov rcx, r10
call fcn.14003b7c0
cmp eax, 1
sete dil
mov rcx, qword [0x14012aa00]
call fcn.140027b30
mov r9d, eax
mov byte [rsp + 0x20], dil
mov r8, rbx
mov rdx, qword [0x14012a9f0]
mov rcx, qword [rsp + 0x68]
call fcn.140073e80
jmp 0x140046382
mov rdx, qword [0x14012a9f8]
cmp word [rdx], 0
jne 0x140045269
mov rdx, qword [rsi + 0x10]
test rdx, rdx
je 0x140045262
add rdx, 0x250
jmp 0x140045269
lea rdx, [0x1400f1524]
mov rax, qword [0x14012aa00]
movzx r8d, word [rax]
mov rcx, r10
call fcn.1400745d0
jmp 0x140046382
mov rbx, qword [0x14012a9f8]
cmp word [rbx], 0
jne 0x1400452a7
mov rbx, qword [rsi + 0x10]
test rbx, rbx
je 0x1400452a0
add rbx, 0x250
jmp 0x1400452a7
lea rbx, [0x1400f1524]
mov edx, 4
mov rcx, r10
call fcn.14003b7c0
cmp eax, 1
sete dil
mov rcx, qword [0x14012aa08]
call fcn.140027b30
mov byte [rsp + 0x28], dil
mov dword [rsp + 0x20], eax
mov rax, qword [0x14012aa00]
movzx r9d, word [rax]
mov r8, rbx
mov rdx, qword [0x14012a9f0]
mov rcx, qword [rsp + 0x68]
call fcn.140074a40
jmp 0x140046382
mov rdx, qword [0x14012a9f8]
cmp word [rdx], 0
jne 0x14004531a
mov rdx, qword [rsi + 0x10]
test rdx, rdx
je 0x140045313
add rdx, 0x250
jmp 0x14004531a
lea rdx, [0x1400f1524]
mov r8, qword [0x14012aa00]
mov rcx, r10
call fcn.140074c20
jmp 0x140046382
mov rdx, qword [0x14012a9f8]
cmp word [rdx], 0
jne 0x140045354
mov rdx, qword [rsi + 0x10]
test rdx, rdx
je 0x14004534d
add rdx, 0x250
jmp 0x140045354
lea rdx, [0x1400f1524]
mov rcx, r10
call fcn.14008d780
jmp 0x140046382
mov rcx, qword [0x14012a9f0]
call fcn.140070c90
xor eax, eax
mov ebx, eax
cmp qword [rsi + 0x148], rax
sete bl
mov dword [rsp + 0x60], ebx
jmp 0x140046388
mov rax, qword [0x14012aa10]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa08]
mov r8, qword [0x14012aa00]
mov rdx, qword [0x14012a9f8]
mov rcx, r10
call fcn.140071080
jmp 0x140046382
mov r9, qword [0x14012aa08]
mov r8, qword [0x14012aa00]
mov rdx, qword [0x14012a9f8]
mov rcx, r10
call fcn.14008b1c0
jmp 0x140046382
mov rdx, qword [0x14012a9f0]
mov rcx, r10
call fcn.14008bd80
jmp 0x140046382
mov rax, qword [0x14012aa30]
mov qword [rsp + 0x48], rax
mov rax, qword [0x14012aa28]
mov qword [rsp + 0x40], rax
mov rax, qword [0x14012aa20]
mov qword [rsp + 0x38], rax
mov rax, qword [0x14012aa18]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14012aa10]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14012aa08]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa00]
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
mov rcx, r10
call fcn.14008d150
jmp 0x140046382
xor edx, edx
lea ecx, [rdx + 4]
call fcn.140064290
jmp 0x140046382
mov edx, 7
mov rcx, qword [0x14012a9f0]
call fcn.140014c40
mov edx, eax
cmp eax, 7
jne 0x140045488
xor edx, edx
lea ecx, [rax - 6]
call fcn.140064290
jmp 0x140046382
cmp byte [rsi + 0x139], 0
je 0x1400454bd
mov eax, dword [0x14012b788]
test eax, eax
jle 0x14004549f
dec eax
jmp 0x1400454a4
mov eax, 0x18f
mov dword [0x14012b788], eax
cdqe
xor ecx, ecx
lea r11, [0x140000000]
mov qword [r11 + rax*8 + 0x12b790], rcx
cmp edx, 1
sete al
mov byte [rsi + 0x139], al
jmp case.0x1400418c9.3
xor edx, edx
lea ecx, [rdx + 2]
call fcn.140064290
jmp 0x140046382
xor edx, edx
lea ecx, [rdx + 3]
call fcn.140064290
jmp 0x140046382
mov rcx, qword [0x1401255c8]
add rcx, 0x68
call fcn.140098250
xor esi, esi
test rax, rax
je 0x140045514
mov rax, qword [0x1401255c8]
mov rcx, qword [rax + 0x68]
mov rdi, qword [rcx + 8]
jmp 0x140045517
mov rdi, rsi
mov rbx, qword [rsp + 0x68]
movzx eax, byte [rbx + 1]
test al, al
jne 0x14004553a
movapd xmm3, xmm8
xor r8d, r8d
mov edx, 0x10000
lea rcx, [0x1400fc150]
jmp 0x140045584
cmp al, 1
jne 0x140045554
movapd xmm3, xmm8
xor r8d, r8d
mov edx, 0x10000
mov rcx, qword [0x14012a9f0]
jmp 0x140045584
mov edx, 3
mov rcx, rbx
call fcn.14003b8c0
movapd xmm6, xmm0
xor edx, edx
mov rcx, rbx
call fcn.14003b7c0
mov rdx, rax
movapd xmm3, xmm6
mov r8, qword [0x14012a9f8]
mov rcx, qword [0x14012aa00]
mov qword [rsp + 0x20], rdi
call fcn.1400c0050
mov edi, eax
test eax, eax
jne 0x1400455b7
call qword [sym.imp.KERNEL32.DLL_GetLastError]
cmp eax, 0x59e
jne 0x1400455b7
mov r9, qword [0x14012a9f0]
lea rdx, [0x1400f5e78]
mov rcx, rbx
jmp 0x14004637a
mov ebx, esi
test edi, edi
setne bl
mov dword [rsp + 0x60], ebx
jmp 0x140046388
mov rax, qword [0x14012aa28]
cmp word [rax], 0
je 0x1400455ec
mov edx, 7
mov rcx, r10
call fcn.14003b7c0
mov qword [rbp + 0x70], rax
mov r10, qword [rsp + 0x68]
jmp 0x1400455f3
mov dword [rbp + 0x70], 0x80000000
mov rax, qword [0x14012aa20]
cmp word [rax], 0
je 0x140045613
mov edx, 6
mov rcx, r10
call fcn.14003b7c0
mov qword [rbp], rax
jmp 0x14004561a
mov dword [rbp], 0x80000000
mov rax, qword [0x14012aa18]
mov rdi, qword [rsp + 0x68]
cmp word [rax], 0
je 0x14004563e
mov edx, 5
mov rcx, rdi
call fcn.14003b7c0
mov rsi, rax
jmp 0x140045643
mov esi, 0x80000000
mov rax, qword [0x14012aa10]
cmp word [rax], 0
je 0x140045662
mov edx, 4
mov rcx, rdi
call fcn.14003b7c0
mov rbx, rax
jmp 0x140045667
mov ebx, 0x80000000
mov edx, 9
mov rcx, rdi
call fcn.14003b8c0
movapd xmm6, xmm0
mov rax, qword [0x14012aa30]
movzx ecx, word [rax]
call fcn.140014b80
cmp ax, 0x4c
sete dil
mov rax, qword [0x14012aa08]
movzx ecx, word [rax]
call fcn.140014b80
cmp ax, 0x48
sete r9b
mov rax, qword [0x14012aa40]
mov qword [rsp + 0x50], rax
movsd qword [rsp + 0x48], xmm6
mov byte [rsp + 0x40], dil
mov rax, qword [rbp + 0x70]
mov dword [rsp + 0x38], eax
mov rax, qword [rbp]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], ebx
mov r8, qword [0x14012aa00]
mov rdx, qword [0x14012a9f8]
mov rcx, qword [rsp + 0x70]
call fcn.1400645c0
jmp 0x140046382
mov rax, qword [0x14012a9f8]
cmp word [rax], 0
je 0x140045716
mov edx, 1
mov rcx, r10
call fcn.14003b7c0
mov rdi, rax
mov r10, qword [rsp + 0x68]
jmp 0x14004571a
xor eax, eax
mov edi, eax
mov rax, qword [0x14012a9f0]
cmp word [rax], 0
je 0x140045733
xor edx, edx
mov rcx, r10
call fcn.14003b7c0
jmp 0x140045738
mov eax, 0xc8
mov r9, qword [0x14012aa08]
mov r8, qword [0x14012aa00]
mov edx, edi
mov ecx, eax
call fcn.140087ab0
jmp 0x140046382
mov rcx, qword [0x14012aac8]
test rcx, rcx
je 0x140045777
call qword [sym.imp.USER32.DLL_IsWindow]
test eax, eax
je 0x140045777
mov rcx, qword [0x14012aac8]
call qword [sym.imp.USER32.DLL_DestroyWindow]
xor eax, eax
mov qword [0x14012aac8], rax
jmp case.0x1400418c9.3
mov byte [rsp + 0x38], 0
lea rax, [0x1400f1524]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14012aa10]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14012aa08]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa00]
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
mov rcx, r10
call fcn.1400507e0
jmp 0x140046382
mov byte [rsp + 0x38], 1
mov rax, qword [0x14012a9f0]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14012aa18]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14012aa10]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa08]
mov r8, qword [0x14012aa00]
mov rdx, qword [0x14012a9f8]
mov rcx, r10
call fcn.1400507e0
jmp 0x140046382
mov rax, qword [0x14012aa08]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa00]
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
mov rcx, r10
call fcn.140051f00
jmp 0x140046382
mov r9, qword [0x14012aa08]
mov r8, qword [0x14012aa00]
mov rdx, qword [0x14012a9f8]
mov rcx, qword [0x14012a9f0]
call fcn.1400523d0
jmp 0x140046382
mov rcx, r10
call fcn.140054740
jmp 0x140046382
mov rcx, qword [0x14012a9f8]
call fcn.140027e90
movzx edi, ax
mov rcx, qword [0x14012a9f0]
call fcn.140027f20
movzx ecx, ax
cmp ecx, 0xffffffff
je case.0x1400418c9.3
movzx eax, di
cmp eax, 0xffffffff
je case.0x1400418c9.3
mov eax, 3
shl ax, cl
not ax
and ax, word [rsi + 0x130]
shl di, cl
or ax, di
mov word [rsi + 0x130], ax
jmp case.0x1400418c9.3
xor edx, edx
mov rcx, r10
call fcn.14003b7c0
cmp al, 0x64
movzx eax, al
mov ecx, 2
cmova eax, ecx
mov byte [rsi + 0x12f], al
jmp case.0x1400418c9.3
mov edx, dword [rsi + 0x114]
mov rcx, qword [0x14012a9f0]
call fcn.140027a60
mov dword [rsi + 0x114], eax
jmp case.0x1400418c9.3
xor edx, edx
mov rcx, r10
call fcn.14003b7c0
cmp eax, 0x64
ja case.0x1400418c9.3
mov byte [rsi + 0x136], al
jmp case.0x1400418c9.3
lea rdx, [0x1400f8360]
mov rcx, qword [0x14012aa00]
call fcn.1400d6a7c
test eax, eax
mov rax, qword [0x14012a9f0]
mov rdi, qword [rsp + 0x68]
jne 0x140045994
cmp word [rax], 0
je 0x140045969
xor edx, edx
mov rcx, rdi
call fcn.14003b7c0
mov dword [rsi + 0x80], eax
mov rax, qword [0x14012a9f8]
mov ebx, 1
cmp word [rax], 0
je 0x1400463a6
mov edx, ebx
mov rcx, rdi
call fcn.14003b7c0
mov dword [rsi + 0x88], eax
jmp 0x1400463a6
cmp word [rax], 0
je 0x1400459a7
xor edx, edx
mov rcx, rdi
call fcn.14003b7c0
mov dword [rsi + 0x7c], eax
mov rax, qword [0x14012a9f8]
mov ebx, 1
cmp word [rax], 0
je 0x1400463a6
mov edx, ebx
mov rcx, rdi
call fcn.14003b7c0
mov dword [rsi + 0x84], eax
jmp 0x1400463a6
lea rdx, [0x1400f8360]
mov rcx, qword [0x14012a9f8]
call fcn.1400d6a7c
xor edx, edx
mov rcx, qword [rsp + 0x68]
test eax, eax
jne 0x140045a00
call fcn.14003b7c0
mov dword [rsi + 0x90], eax
jmp case.0x1400418c9.3
call fcn.14003b7c0
mov dword [rsi + 0x8c], eax
jmp case.0x1400418c9.3
xor edx, edx
mov rcx, r10
call fcn.14003b7c0
mov dword [rsi + 0x74], eax
jmp case.0x1400418c9.3
xor edx, edx
mov rcx, r10
call fcn.14003b7c0
mov dword [rsi + 0x78], eax
jmp case.0x1400418c9.3
lea rdx, [0x1400fa07c]
mov rcx, qword [0x14012a9f0]
call fcn.1400b9750
xor edx, edx
mov rcx, qword [rsp + 0x68]
test rax, rax
je 0x140045a67
mov qword [rsi], 0xffffffffffffffff
call fcn.14003b7c0
mov dword [rsi + 0x34], eax
jmp case.0x1400418c9.3
mov dword [rsi + 0x34], 0xffffffff
call fcn.14003b7c0
mov qword [rsi], rax
test rax, rax
jne case.0x1400418c9.3
mov qword [rsi], 0xa
jmp case.0x1400418c9.3
mov edx, 7
mov rcx, qword [0x14012a9f0]
call fcn.140014c40
cmp eax, 7
je case.0x1400418c9.3
cmp eax, 1
sete al
mov byte [rsi + 0x133], al
jmp case.0x1400418c9.3
mov rcx, qword [0x14012a9f0]
call fcn.140025b80
dec eax
cmp eax, 5
ja case.default.0x140045ae1
cdqe
lea r11, [0x140000000]
mov ecx, dword [r11 + rax*4 + 0x46c20]
add rcx, r11
jmp rcx
mov ebx, 1
mov dword [rsi + 0x30], ebx
jmp 0x1400463a6
mov eax, 2
mov dword [rsi + 0x30], eax
jmp case.0x1400418c9.3
mov dword [rsi + 0x30], 4
jmp case.0x1400418c9.3
mov eax, 3
mov dword [rsi + 0x30], eax
jmp case.0x1400418c9.3
mov byte [rsi + 0x129], 1
jmp case.0x1400418c9.3
mov byte [rsi + 0x129], 0
jmp case.0x1400418c9.3
mov r8d, 5
lea rdx, [0x1400f84d0]
mov rcx, qword [0x14012a9f0]
call fcn.1400d7250
test eax, eax
jne 0x140045c1b
mov ebx, 1
mov edx, ebx
mov rdi, qword [rsp + 0x68]
mov rcx, rdi
call fcn.14003b6f0
cmp rax, 0x1e
jae 0x1400463a6
mov edx, ebx
mov rcx, rdi
call fcn.14003b7c0
mov rbx, rax
mov edx, 0x2e
mov rcx, qword [0x14012a9f8]
call fcn.1400d7d64
mov rdi, rax
test rax, rax
je 0x140045ba0
lea rcx, [rax + 2]
call fcn.140005830
xor ecx, ecx
jmp 0x140045ba4
xor ecx, ecx
mov eax, ecx
lea rax, [rbx + rax + 2]
mov ebx, 1
cmp rax, 0xff
jg 0x1400463a6
mov dword [rsp + 0x20], ecx
mov r9d, ebx
mov r8d, ebx
mov edx, ebx
mov rcx, qword [0x14012a9f8]
call fcn.1400b9140
lea rcx, [0x1400f1524]
mov rdx, rcx
test eax, eax
lea rax, [0x1400fc17c]
cmovne rdx, rax
lea r9, [0x1400fae24]
test rdi, rdi
cmovne r9, rcx
lea rcx, [rsi + 0x94]
mov qword [rsp + 0x20], rdx
mov r8, qword [0x14012a9f8]
lea rdx, [0x1400fc180]
call fcn.1400d77e8
jmp 0x1400463a6
mov r8d, 7
lea rdx, [0x1400f84c0]
mov rcx, qword [0x14012a9f0]
call fcn.1400d7250
test eax, eax
jne case.0x1400418c9.3
mov rcx, qword [0x14012a9f8]
movzx eax, word [rcx]
cmp eax, 0x44
je 0x140045c6c
cmp eax, 0x48
je 0x140045c5e
cmp eax, 0x64
je 0x140045c6c
cmp eax, 0x68
jne case.0x1400418c9.3
movzx eax, byte [rcx]
mov byte [rsi + 0x135], al
jmp case.0x1400418c9.3
mov byte [rsi + 0x135], 0x44
jmp case.0x1400418c9.3
mov rdx, qword [0x14012aa00]
mov rcx, qword [0x14012a9f8]
call fcn.140066650
jmp 0x140046382
movzx ecx, byte [r10 + 1]
xor eax, eax
mov edx, eax
cmp cl, 4
cmova rdx, qword [0x14012a970]
cmp cl, 3
cmova rax, qword [0x14012a968]
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x38], rax
mov rax, qword [0x14012aa18]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14012aa10]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14012aa08]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa00]
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
lea rcx, [0x14012c5c0]
call fcn.1400ac200
jmp 0x140046382
mov rax, qword [0x14012aa08]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa00]
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
lea rcx, [0x14012c5c0]
call fcn.1400982f0
jmp 0x140046382
xor eax, eax
cmp byte [r10 + 1], 2
cmova rax, qword [0x14012a960]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa00]
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
mov rcx, r10
call fcn.140098dd0
jmp 0x140046382
mov r9, qword [0x14012aa08]
mov r8, qword [0x14012aa00]
mov rdx, qword [0x14012a9f8]
mov rcx, r10
call fcn.14009a370
jmp 0x140046382
mov rcx, qword [0x14012a9f0]
call fcn.140027900
mov edx, eax
test eax, eax
je case.default.0x140045ae1
dec edx
je 0x140045dc4
dec edx
je 0x140045db5
sub edx, 3
je 0x140045dd1
cmp edx, 2
jmp 0x140045dcb
cmp byte [0x14012ac41], 0
je case.0x1400418c9.3
jmp 0x140045dd1
cmp byte [0x14012ac41], 0
jne case.0x1400418c9.3
call fcn.14004cb00
jmp case.0x1400418c9.3
mov edx, 1
mov rcx, r10
call fcn.14003b7c0
test eax, eax
setne dil
mov rcx, qword [0x14012a9f0]
call fcn.140014cf0
mov edx, eax
movzx r8d, dil
mov rcx, qword [rsp + 0x68]
call fcn.14004cb60
jmp 0x140046382
mov edx, 7
mov rcx, qword [0x14012a9f0]
call fcn.140014c40
cmp eax, 7
je case.0x1400418c9.3
cmp eax, 1
sete al
mov byte [rsi + 0x134], al
jmp case.0x1400418c9.3
mov rcx, qword [0x14012a9f0]
call fcn.140027860
mov byte [rsi + 0x132], al
cmp al, 4
jne case.0x1400418c9.3
mov byte [rsi + 0x132], 0
jmp case.0x1400418c9.3
mov edx, 7
mov rcx, qword [0x14012a9f0]
call fcn.140014c40
cmp eax, 7
je case.0x1400418c9.3
cmp eax, 1
sete al
mov byte [rsi + 0x12a], al
jmp case.0x1400418c9.3
mov edx, 7
mov rcx, qword [0x14012a9f0]
call fcn.140014c40
cmp eax, 7
je case.0x1400418c9.3
cmp eax, 1
sete al
mov byte [rsi + 0x12b], al
jmp case.0x1400418c9.3
mov rcx, qword [0x14012a9f0]
call fcn.140027980
mov edx, eax
dec eax
cmp eax, 0xc
ja case.0x1400418c9.3
cdqe
lea r11, [0x140000000]
mov ecx, dword [r11 + rax*4 + 0x46c38]
add rcx, r11
jmp rcx
mov ebx, 1
mov ecx, ebx
call qword [sym.imp.USER32.DLL_BlockInput]
mov byte [0x14012b625], bl
jmp 0x1400463a6
xor ecx, ecx
call qword [sym.imp.USER32.DLL_BlockInput]
mov byte [0x14012b625], 0
jmp case.0x1400418c9.3
mov dword [reloc.OLEAUT32.DLL_VariantChangeType], edx
jmp case.0x1400418c9.3
mov byte [0x14012b626], 1
or byte [0x14012b627], 2
cmp qword [0x14012ac10], 0
jne case.0x1400418c9.3
mov rax, qword [0x140127158]
movzx ecx, word [rax]
call fcn.140013040
jmp case.0x1400418c9.3
mov byte [0x14012b626], 0
jmp case.0x1400418c9.3
mov r8, qword [0x14012a9f0]
lea rdx, [0x1401255c4]
mov cl, 0x90
call fcn.140074df0
jmp 0x140046382
mov r8, qword [0x14012a9f0]
lea rdx, [0x14012569c]
mov cl, reloc.OLEAUT32.DLL_SafeArrayLock
call fcn.140074df0
jmp 0x140046382
mov r8, qword [0x14012a9f0]
lea rdx, [0x1401256a0]
mov cl, 0x91
call fcn.140074df0
jmp 0x140046382
lea rcx, [0x14012c5c0]
call fcn.140029f00
jmp case.0x1400418c9.3
mov dl, 1
lea rcx, [0x14012c5c0]
call fcn.14002a130
jmp case.0x1400418c9.3
xor edx, edx
mov rcx, r10
call fcn.14003b7c0
mov ebx, 1
mov ecx, eax
jmp 0x140043d4c
mov r9, qword [0x14012aa10]
mov r8, qword [0x14012aa08]
mov rdx, qword [0x14012aa00]
mov rcx, qword [0x14012a9f8]
call fcn.1400b4e90
jmp 0x140046382
mov rax, qword [0x14012aa08]
mov qword [rsp + 0x20], rax
mov r9, qword [0x14012aa00]
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
mov rcx, r10
call fcn.1400b53c0
jmp 0x140046382
mov r9, qword [0x14012aa00]
cmp byte [r10 + 1], 3
mov eax, 0
cmovb r9, rax
mov r8, qword [0x14012a9f8]
mov rdx, qword [0x14012a9f0]
mov rcx, r10
call fcn.1400b5510
jmp 0x140046382
cmp byte [r10 + 1], 2
jae 0x140046090
mov rdx, qword [rsi + 0x18]
test rdx, rdx
je 0x140046090
lea r9, [rdx + 0x810]
lea r8, [rdx + 0x10]
mov rdx, qword [rdx + 8]
mov rcx, r10
call fcn.1400b55a0
jmp 0x140046382
lea r9, [rsp + 0x78]
lea r8, [rbp - 0x38]
mov edx, 2
mov rcx, qword [0x14012a9f8]
call fcn.1400251f0
mov rdi, rax
mov r8, qword [rbp - 0x38]
test r8, r8
jne 0x1400460ca
mov r8, qword [0x14012aa00]
mov qword [rbp - 0x38], r8
mov r9, qword [0x14012aa08]
jmp 0x1400460d1
mov r9, qword [0x14012aa00]
mov rdx, rax
mov rcx, qword [rsp + 0x68]
call fcn.1400b55a0
mov ebx, eax
mov dword [rsp + 0x60], eax
cmp byte [rsp + 0x78], 0
je 0x140046388
test rdi, rdi
je 0x140046388
mov rcx, rdi
call qword [sym.imp.ADVAPI32.DLL_RegCloseKey]
jmp 0x140046388
cmp byte [r10 + 1], 2
jae 0x140046149
mov rdx, qword [rsi + 0x18]
test rdx, rdx
je 0x140046149
lea rcx, [rdx + 0x810]
lea r9, [rdx + 0x10]
mov rax, qword [0x14012a9f0]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
mov r8, qword [rdx + 8]
mov edx, dword [rdx + 0x1010]
mov rcx, r10
call fcn.1400b59c0
jmp 0x140046382
lea r9, [rsp + 0x78]
lea r8, [rbp - 0x38]
mov edx, 2
mov rcx, qword [0x14012a9f8]
call fcn.1400251f0
mov qword [rbp - 0x60], rax
mov rdi, qword [rbp - 0x38]
test rdi, rdi
jne 0x14004618b
mov rdi, qword [0x14012aa00]
mov qword [rbp - 0x38], rdi
mov rbx, qword [0x14012aa08]
mov rsi, qword [0x14012aa10]
jmp 0x140046199
mov rbx, qword [0x14012aa00]
mov rsi, qword [0x14012aa08]
mov rcx, qword [0x14012a9f0]
call fcn.140025440
mov edx, eax
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rbx
mov r9, rdi
mov rdi, qword [rbp - 0x60]
mov r8, rdi
mov rcx, qword [rsp + 0x68]
call fcn.1400b59c0
jmp 0x1400460de
cmp byte [r10 + 1], 1
jae 0x140046255
mov rax, qword [rsi + 0x18]
test rax, rax
je 0x140046255
cmp dword [rax + 0x1010], 0xfffffffe
jne 0x140046231
lea r9, [rax + 0x10]
cmp word [r9], 0
je 0x140046223
add rax, 0x810
mov qword [rsp + 0x20], rax
lea r8, [0x1400fc198]
mov edx, 0x400
lea rcx, [rbp + 0x180]
call fcn.1400b9310
lea r8, [rbp + 0x180]
mov r10, qword [rsp + 0x68]
jmp 0x14004622a
lea r8, [rax + 0x810]
xor eax, eax
mov r9d, eax
jmp 0x14004623c
lea r8, [rax + 0x10]
lea r9, [rax + 0x810]
mov qword [rbp - 0x38], r8
mov rdx, qword [rsi + 0x18]
mov rdx, qword [rdx + 8]
mov rcx, r10
call fcn.1400b5e70
jmp 0x140046382
lea r9, [rsp + 0x78]
lea r8, [rbp - 0x38]
mov edx, 2
mov rcx, qword [0x14012a9f0]
call fcn.1400251f0
mov rsi, rax
mov rbx, qword [rbp - 0x38]
test rbx, rbx
jne 0x14004628f
mov rbx, qword [0x14012a9f8]
mov qword [rbp - 0x38], rbx
mov rdi, qword [0x14012aa00]
jmp 0x140046296
mov rdi, qword [0x14012a9f8]
cmp word [rdi], 0
jne 0x1400462a3
xor eax, eax
mov r9d, eax
jmp 0x1400462bf
lea rdx, [0x1400fc1a8]
mov rcx, rdi
call fcn.1400d6a7c
lea r9, [0x1400f1524]
test eax, eax
cmovne r9, rdi
mov r8, rbx
mov rdx, rsi
mov rcx, qword [rsp + 0x68]
call fcn.1400b5e70
mov ebx, eax
mov dword [rsp + 0x60], eax
cmp byte [rsp + 0x78], 0
je 0x140046388
test rsi, rsi
je 0x140046388
mov rcx, rsi
jmp 0x1400460fb
mov rcx, qword [0x14012a9f0]
call fcn.1400254f0
cmp eax, 0xffffffff
je case.default.0x140045ae1
mov dword [rsi + 0x110], eax
jmp case.0x1400418c9.3
cmp dword [0x14012c564], 0
je 0x140046326
mov rcx, qword [0x14012a9f0]
call fcn.14000cf80
test al, al
jne case.0x1400418c9.3
mov rcx, qword [0x14012a9f0]
call qword [sym.imp.KERNEL32.DLL_OutputDebugStringW]
jmp case.0x1400418c9.3
xor edx, edx
mov rcx, r10
call fcn.14003b7c0
mov rcx, rax
call fcn.14008e630
xor ecx, ecx
mov ebx, ecx
test al, al
setne bl
mov dword [rsp + 0x60], ebx
jmp 0x140046388
mov rcx, qword [0x14012a9f0]
call fcn.140028160
cmp eax, 0xffffffff
jne 0x14004639b
lea rdx, [0x1400f5e78]
mov r9, qword [0x14012a9f0]
mov rcx, qword [rsp + 0x68]
xor r8d, r8d
call fcn.14004e200
mov dword [rsp + 0x60], eax
mov ebx, eax
mov eax, dword [rsp + 0x60]
test ebx, ebx
je 0x14004677e
mov ebx, 1
jmp 0x1400463ac
mov dword [rsi + 0x13c], eax
mov ebx, 1
mov eax, ebx
mov dword [rsp + 0x60], ebx
cmp dword [rbp + 0xa18], 3
je 0x14004677e
mov r10, qword [rsp + 0x68]
mov r10, qword [r10 + 0x20]
mov qword [rsp + 0x68], r10
jmp 0x1400463e0
mov rax, qword [r10 + 0x30]
cmp qword [rcx + 0x30], rax
jne 0x14004640f
mov qword [rsp + 0x68], rcx
mov r10, rcx
mov ebx, 1
test r10, r10
je case.0x140040577.107
mov rsi, qword [rsp + 0x68]
xor edi, edi
jmp 0x140040190
mov rdi, qword [rbp - 0x48]
mov qword [rdi], rcx
jmp case.0x140040577.107
mov rdi, qword [rbp - 0x48]
mov qword [rdi], rcx
mov eax, edx
jmp 0x14004677e
mov rdi, qword [rbp - 0x48]
mov qword [rdi], rcx
mov eax, 1
jmp 0x14004677e
cmp ebx, 7
mov eax, 1
cmove ebx, eax
jmp case.0x140040577.107
mov rax, qword [rcx + 0x10]
jmp 0x140046775
lea r9, [0x1400f1524]
xor r8d, r8d
lea rdx, [0x1400fef00]
mov rcx, rdi
call fcn.14004e200
xor eax, eax
jmp 0x14004677e
cmp esi, 7
mov eax, 1
cmove esi, eax
mov eax, esi
jmp 0x14004677e
mov r9, qword [0x14012aa00]
xor r8d, r8d
lea rdx, [0x1400f5ed8]
mov rcx, qword [rsp + 0x68]
call fcn.14004e200
jmp 0x14004677e
mov r9, qword [0x14012a9f8]
xor r8d, r8d
lea rdx, [0x1400f5ea8]
mov rcx, qword [rsp + 0x68]
call fcn.14004e200
jmp 0x14004677e
mov rax, qword [rbp - 0x70]
jmp 0x140046775
test rdi, rdi
je 0x1400464de
cmp dword [rdi + 0x10], 6
jne 0x1400464c8
mov rcx, qword [rdi]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.DLL_SafeArrayGetDim]
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x1400464d6
call fcn.1400d6fc8
mov rcx, rdi
call fcn.1400d6fc0
test ebx, ebx
je case.0x140040577.107
cmp ebx, 8
je case.0x140040577.107
lea r9, [0x1400f1524]
xor r8d, r8d
lea rdx, [0x1400fbad0]
mov rcx, qword [0x14012cc60]
call fcn.14004e200
jmp 0x14004677e
mov rdi, qword [rbp - 0x48]
mov qword [rdi], rcx
jmp 0x14004677e
test rdi, rdi
je 0x140046571
cmp dword [rdi + 0x10], 0
jne 0x140046571
mov rcx, qword [0x14012a950]
test rcx, rcx
je 0x140046562
cmp byte [rcx + 0x23], 0
jne 0x140046540
mov rax, qword [rcx + 0x10]
jmp 0x140046543
mov rax, rcx
test byte [rax + 0x21], 2
je 0x140046562
mov rdx, rdi
call fcn.1400073f0
cmp dword [rdi + 0x10], 6
jne 0x140046571
mov rcx, qword [rdi]
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.DLL_htonl]
jmp 0x140046571
xor eax, eax
mov dword [rdi + 0x10], eax
mov rax, qword [0x14012a9f0]
mov qword [rdi], rax
cmp dword [rbp + 0xa18], 1
mov eax, 7
cmovne ebx, eax
jmp case.0x140040577.107
mov rax, qword [r10 + 0x28]
test rax, rax
jne 0x140046775
mov eax, 5
jmp 0x14004677e
mov rcx, qword [r10 + 0x28]
test rcx, rcx
je 0x1400465ac
mov rdi, qword [rbp - 0x48]
mov qword [rdi], rcx
mov eax, 6
jmp 0x14004677e
cmp byte [r10 + 1], 0
jne 0x1400465db
lea r9, [0x1400f1524]
xor r8d, r8d
lea rdx, [0x1400fc020]
mov rcx, r10
call fcn.14004cdb0
jmp 0x14004677e
mov ecx, SafeArrayAllocDescriptor
call fcn.1400d7718
mov rdi, rax
mov rcx, qword [rsp + 0x68]
test rax, rax
jne 0x14004660d
lea r9, [0x1400f1524]
xor r8d, r8d
lea rdx, [0x1400f5a40]
call fcn.14004e200
jmp 0x14004677e
mov rax, qword [0x14012c420]
mov qword [rbp], rax
mov rax, qword [0x14012c428]
mov qword [rbp + 0xa10], rax
xor eax, eax
mov qword [0x14012c420], rax
mov qword [0x14012c428], rax
mov dword [rsp + 0x28], eax
lea rax, [rbp + 0xa10]
mov qword [rsp + 0x20], rax
lea r9, [rbp]
mov r8, rdi
xor edx, edx
call fcn.1400960c0
mov esi, eax
mov rbx, qword [rbp]
cmp eax, 1
jne 0x140046683
cmp dword [rdi + 0x10], 0
jne 0x140046683
cmp qword [rdi], rbx
jne 0x140046683
mov qword [rdi + 0x18], rbx
cmp qword [rbp + 0xa10], 0x400000
jbe 0x1400466db
dec dword [0x14012c430]
jmp 0x1400466db
test rbx, rbx
je 0x1400466c1
mov rcx, qword [0x14012c420]
test rcx, rcx
je 0x1400466ac
call fcn.1400d6fc8
cmp qword [0x14012c428], 0x400000
jbe 0x1400466ac
dec dword [0x14012c430]
mov qword [0x14012c420], rbx
mov rax, qword [rbp + 0xa10]
mov qword [0x14012c428], rax
cmp esi, 1
je 0x1400466d5
mov rcx, rdi
call fcn.1400d6fc0
mov eax, esi
jmp 0x14004677e
xor eax, eax
mov qword [rdi + 0x18], rax
mov r8, rdi
mov rdx, qword [rbp - 0x58]
mov rcx, qword [rsp + 0x68]
call fcn.14004ce70
xor eax, eax
jmp 0x14004677e
mov rax, qword [0x140127158]
cmp word [rax], 0
jne 0x140046726
cmp dword [0x14012b6cc], 0
jne 0x140046726
cmp qword [0x14012ac08], 0
jne 0x140046726
cmp qword [0x14012ac10], 0
jne 0x140046726
cmp byte [0x14012ac06], 0
je case.0x140040577.111
mov eax, 8
jmp 0x14004677e
xor edx, edx
mov rcx, r10
call fcn.14003b7c0
mov r8, rax
mov edx, 6
lea rcx, [0x14012c5c0]
call fcn.14002a1f0
jmp 0x14004677e
cmp dword [rbp + 0xa18], 2
je case.0x140040577.107
lea r9, [0x1400f1524]
xor r8d, r8d
lea rdx, [0x1400fc060]
mov rcx, r10
call fcn.14004e200
jmp 0x14004677e
xor eax, eax
jmp 0x14004677e
mov rdi, qword [rbp - 0x48]
mov qword [rdi], rax
mov eax, ebx
lea r11, [rsp + 0xae8]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
movaps xmm10, xmmword [r11 - 0x58]
movaps xmm11, xmmword [r11 - 0x68]
mov rsp, r11
pop rdi
pop rsi
pop rbx
pop rbp
ret