Function at 0x140007f30
Capabilities:
Encrypt data using speck

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x78]
sub rsp, 0x178
mov rax, qword [rbp + 0xf8]
mov r14, rcx
movzx edi, word [rbp + 0xe8]
movabs rcx, 0xffffffff003c2bb3
movzx r13d, byte [rbp + 0xf0]
add rax, rcx
movzx r15d, byte [rbp + 0xe0]
cmp rax, 2
mov r10d, edx
mov r12d, 0x7fff
mov rdx, qword [0x140101c70]
setbe sil
xor r11d, r11d
test rdx, rdx
jne 0x140007fb7
lea rdx, [rbp - 0x70]
mov qword [rsp + 0x60], rdx
jmp 0x140008088
movsxd rcx, dword [0x140101d1c]
imul rbx, rcx, 0xd4
inc ecx
add rbx, rdx
cmp ecx, dword [0x1400fe05c]
mov qword [rsp + 0x60], rbx
cmovge ecx, r11d
mov dword [0x140101d1c], ecx
mov byte [rbx], r15b
mov byte [rbx + 6], r13b
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
mov dword [0x140101d18], eax
sub ecx, dword [0x140105138]
xorps xmm0, xmm0
mov dword [0x140105138], eax
cvtsi2ss xmm0, rcx
divss xmm0, dword [0x1400ee1a8]
movss dword [rbx + 8], xmm0
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov rdx, qword [rsp + 0x60]
mov rbx, rax
test rax, rax
je 0x14000805b
cmp rax, qword [0x140101d10]
je 0x140008051
mov rcx, qword [0x140101c50]
lea r8, [rdx + 0xc]
mov edx, 0x418
mov r9, rax
call qword [sym.imp.USER32.dll_PostMessageW]
mov rdx, qword [rsp + 0x60]
jmp 0x140008069
xor r11d, r11d
mov word [rdx + 0xc], r11w
jmp 0x14000806c
movabs rcx, 0x41002f004e
mov qword [rdx + 0xc], rcx
xor r11d, r11d
mov r9, qword [rbp + 0xd8]
mov r8, qword [rbp + 0xd0]
mov r10d, dword [rbp + 0xc8]
mov qword [0x140101d10], rbx
cmp r15b, 0xe7
jne 0x1400080ca
movzx eax, word [r9 + 4]
mov rcx, r14
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], rdx
mov word [rdx + 2], ax
mov eax, 0x55
mov word [rdx + 4], ax
mov edx, r10d
mov byte [rsp + 0x30], r13b
mov word [rsp + 0x28], r11w
mov byte [rsp + 0x20], r15b
call fcn.140009af0
jmp 0x140009960
mov r10, qword [0x140105fc8]
lea eax, [r15 + 0x64]
cmp al, 3
mov word [rdx + 2], di
mov ecx, r11d
cmova cx, di
cmp r14, qword [0x140101c78]
mov dword [rsp + 0x50], ecx
jne 0x140008115
movzx ebx, byte [rbp + 0x100]
and bl, 1
jne 0x140008166
movzx ecx, r13b
movzx eax, r15b
xor cl, 1
lea rdx, [0x140102aa0]
shl cl, 7
mov byte [rax + rdx], cl
jmp 0x140008161
mov ecx, dword [rbp + 0x100]
mov ebx, ecx
shr ebx, 4
movzx edi, r15b
and bl, 1
lea rax, [rdi + rdi*2]
cmp byte [r10 + rax*8 + 0xc], 0
jne 0x140008166
movzx r8d, r13b
movzx edx, r15b
call fcn.14000b2b0
mov r10, qword [0x140105fc8]
test al, al
je 0x14000815e
movzx eax, r13b
lea rdx, [0x140102aa0]
xor al, 1
shl al, 7
mov byte [rdi + rdx], al
xor r11d, r11d
mov rdx, qword [rsp + 0x60]
mov eax, 0x69
test sil, sil
jne 0x140008180
test bl, bl
mov eax, SafeArrayAllocDescriptor
mov ecx, 0x61
cmovne ax, cx
cmp byte [0x140102a8d], 0
lea rcx, [rdx + 4]
mov qword [rsp + 0x78], rcx
mov word [rcx], ax
je 0x1400081c7
lea eax, [r15 - 0x5b]
cmp al, 1
ja 0x1400081c7
test r13b, r13b
jne 0x1400081c7
mov qword [rsp + 0x40], r11
mov rcx, r14
mov qword [rsp + 0x38], 0x7fffffff
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rdx
mov byte [rsp + 0x20], r13b
jmp 0x140009950
cmp byte [0x140105f96], 0
je 0x14000829b
cmp r15b, 0x1b
jne 0x14000829b
test r13b, r13b
jne 0x14000829b
xor edx, edx
lea rcx, str.32771
call qword [sym.imp.USER32.dll_FindWindowW]
test rax, rax
je 0x14000828f
xor edx, edx
mov rcx, rax
call qword [sym.imp.USER32.dll_GetWindowThreadProcessId]
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp ebx, eax
jne 0x14000828f
xor r8d, r8d
mov dword [rsp + 0x28], 0xffc3d44d
xor r9d, r9d
mov byte [rsp + 0x20], r8b
movzx edx, r15b
xor ecx, ecx
call fcn.1400152e0
movzx edx, byte [0x140102a9e]
xor r8d, r8d
shr dl, 3
xor r9d, r9d
and dl, 1
mov dword [rsp + 0x28], 0xffc3d44d
or dl, 0xa4
mov byte [rsp + 0x20], r8b
lea ecx, [r8 + 1]
call fcn.1400152e0
mov rdx, qword [rsp + 0x60]
xor eax, eax
mov qword [rsp + 0x40], rax
movzx r8d, r15b
mov qword [rsp + 0x38], 0x7fffffff
mov rcx, r14
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rdx
mov byte [rsp + 0x20], al
jmp 0x140009954
mov r10, qword [0x140105fc8]
mov rdx, qword [rsp + 0x60]
mov r14d, dword [rsp + 0x50]
mov rbx, qword [rbp + 0xc0]
cmp rbx, qword [0x140101c80]
movzx eax, r14w
mov qword [rbp - 0x78], rax
lea rcx, [rax + rax*2]
mov rax, qword [0x140105fd0]
lea rdi, [rax + rcx*8]
movzx eax, byte [rax + rcx*8 + 0x17]
mov byte [rsp + 0x58], al
jne 0x1400082d4
test al, al
jne 0x1400082e0
movzx eax, r15b
lea rcx, [rax + rax*2]
lea rdi, [r10 + rcx*8]
test sil, sil
je 0x14000834d
mov eax, 0xffc3d44e
cmp qword [rbp + 0xf8], rax
jne 0x140008312
test r13b, r13b
je 0x140008312
cmp qword [0x140102be0], rdi
jne 0x140008312
xor eax, eax
mov byte [rdi + 0x11], 0
mov qword [0x140102be0], rax
mov byte [rdi + 0x14], 0
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], rdx
mov byte [rsp + 0x30], r13b
mov word [rsp + 0x28], r14w
mov byte [rsp + 0x20], r15b
mov rcx, rbx
mov edx, dword [rbp + 0xc8]
mov r8, qword [rbp + 0xd0]
mov r9, qword [rbp + 0xd8]
call fcn.140009af0
jmp 0x140009960
test r13b, r13b
jne 0x14000835b
mov byte [rdi + 0x15], r13b
mov word [rdi + 8], r12w
cmp rbx, qword [0x140101c78]
jne 0x1400083c4
test r15b, r15b
jne 0x140008385
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], rdx
mov byte [rsp + 0x30], r13b
mov word [rsp + 0x28], r14w
mov byte [rsp + 0x20], r15b
jmp 0x14000832c
lea eax, [r15 - 1]
cmp al, 1
ja 0x1400083c4
cmp dword [0x140101c00], 0
jne 0x1400083ed
xor edx, edx
lea rcx, str.32768
call qword [sym.imp.USER32.dll_FindWindowW]
test rax, rax
je 0x1400083bd
xor edx, edx
mov rcx, rax
call qword [sym.imp.USER32.dll_GetWindowThreadProcessId]
cmp eax, dword [0x140105110]
je 0x1400083ed
mov r10, qword [0x140105fc8]
mov rax, qword [0x140102be0]
test rax, rax
je 0x14000841e
cmp rax, rdi
je 0x14000841e
test r13b, r13b
jne 0x14000841e
cmp rbx, qword [0x140101c80]
jne 0x140008404
xor eax, eax
cmp byte [rdi + 0xc], al
sete al
jmp 0x14000840f
mov byte [rdi + 0x14], 0
mov rdx, qword [rsp + 0x60]
movzx eax, r13b
xor al, 1
mov byte [rdi + 0x11], al
jmp 0x140008312
mov rax, qword [0x140102be0]
movzx eax, byte [rax + 0xc]
test eax, eax
je 0x14000841e
mov rax, qword [0x140102be0]
mov byte [rax + 0x16], 1
cmp byte [rdi + 0xd], 0
jne 0x14000842a
cmp byte [rdi + 0xe], 0
je 0x1400083f1
xor esi, esi
mov word [rsp + 0x54], r12w
mov qword [rsp + 0x70], rsi
movzx r9d, r12w
mov dword [rsp + 0x68], r9d
test r13b, r13b
je 0x14000847c
movzx edx, byte [rdi + 0x14]
movzx eax, word [rdi + 8]
movzx r8d, byte [rdi + 0x11]
mov byte [rsp + 0x6d], r8b
mov byte [rbp + 0xe0], dl
mov byte [rdi + 0x14], sil
cmp ax, r12w
je 0x140008494
movzx r9d, ax
mov word [rsp + 0x54], ax
mov dword [rsp + 0x68], r9d
mov word [rdi + 8], r12w
jmp 0x140008494
movzx eax, byte [rbp + 0xe0]
mov byte [rsp + 0x6d], al
movzx eax, byte [rbp + 0xe0]
mov byte [rbp + 0xe0], al
movzx eax, r13b
xor cl, cl
xor al, 1
cmp rbx, qword [0x140101c80]
mov byte [rdi + 0x11], al
jne 0x140008518
cmp byte [rdi + 0xc], sil
je 0x14000853d
cmp byte [r10 + 0xf41], sil
jne 0x1400084c8
cmp byte [r10 + 0xf59], sil
jne 0x1400084c8
xor al, al
jmp 0x1400084ca
mov al, 1
mov byte [r10 + 0x1a9], al
cmp byte [r10 + 0xf71], sil
jne 0x1400084e7
cmp byte [r10 + 0xf89], sil
jne 0x1400084e7
xor al, al
jmp 0x1400084e9
mov al, 1
mov byte [r10 + 0x1c1], al
cmp byte [r10 + 0xf11], sil
jne 0x14000850d
cmp byte [r10 + 0xf29], sil
jne 0x14000850d
xor al, al
mov byte [r10 + 0x191], al
jmp 0x14000853d
mov al, 1
mov byte [r10 + 0x191], al
jmp 0x14000853d
cmp qword [0x140101c80], rsi
jne 0x14000853d
mov cl, 1
call fcn.1400180d0
mov r10, qword [0x140105fc8]
mov cl, 1
mov byte [0x140102a9d], al
mov byte [0x140102a9e], al
mov rax, qword [rdi]
test rax, rax
je 0x14000854f
cmp dword [rax], 7
mov byte [rsp + 0x59], 1
je 0x140008554
mov byte [rsp + 0x59], sil
test cl, cl
jne 0x140008566
mov cl, 1
call fcn.1400180d0
mov r10, qword [0x140105fc8]
movzx ecx, byte [rdi + 0xd]
test cl, cl
je 0x140008853
test r13b, r13b
jne 0x140008853
mov rax, qword [0x140102be0]
test rax, rax
je 0x140008596
cmp byte [rdi + 0xe], sil
je 0x140008596
cmp rdi, rax
jne 0x140008853
cmp cl, 1
jne 0x14000865d
movzx edx, byte [rsp + 0x58]
mov ecx, esi
test dl, dl
movzx eax, r15b
movzx r11d, r14w
cmove r11d, eax
cmovne cx, r11w
movzx eax, r11b
cmovne eax, esi
mov dword [rbp - 0x7c], r11d
movzx edx, cx
xor r8d, r8d
movzx ecx, al
call fcn.140018330
cmp si, word [0x140102c1c]
movzx r9d, al
mov byte [rsp + 0x6c], al
mov r8d, esi
mov dword [rbp - 0x80], esi
jae 0x140008779
movzx edx, byte [0x140101d3b]
mov r14, rsi
nop word [rax + rax]
cmp byte [rsp + 0x58], 0
mov rcx, qword [0x140102c08]
mov rsi, qword [rcx + r14]
je 0x140008618
movzx eax, word [rsi + 0xa]
jmp 0x14000861c
movzx eax, byte [rsi + 0x11]
cmp r11d, eax
je 0x14000862b
test byte [rsi + 0xe], r9b
je 0x140008749
cmp word [rsi + 6], 0
je 0x1400086d0
cmp byte [rsi + 0x19], 0
je 0x140008749
test dl, dl
jne 0x140008749
mov r10, qword [0x140105fc8]
xor esi, esi
mov rbx, qword [rbp + 0xc0]
mov r14d, dword [rsp + 0x50]
xor dl, dl
cmp rdi, qword [0x140102be0]
je 0x140008672
mov qword [0x140102be0], rdi
mov byte [rdi + 0x16], dl
cmp byte [rdi + 0xe], 0
je 0x1400087d5
movzx eax, byte [rdi + 0xc]
movzx ecx, byte [0x140102a9d]
test al, al
je 0x14000868f
not al
and cl, al
test cl, cl
jne 0x1400086a1
test dl, dl
jne 0x1400086a1
test byte [rdi + 0x10], 1
je 0x1400087d5
cmp rbx, qword [0x140101c80]
jne 0x140008780
cmp byte [rsp + 0x58], 0
je 0x140008780
mov rax, qword [0x140105fb8]
movzx ecx, cl
shl rcx, 9
add rcx, qword [rbp - 0x78]
jmp 0x140008793
mov rbx, qword [rsi + 0x28]
mov rax, rbx
test rbx, rbx
je 0x140008749
nop dword [rax]
cmp byte [rax + 0x28], 0
jne 0x1400086f1
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1400086e0
jmp 0x140008749
test rbx, rbx
je 0x140008749
cmp byte [rbx + 0x28], 0
je 0x140008732
test dl, dl
je 0x14000870c
mov rcx, rbx
call fcn.14009cbb0
test al, al
je 0x14000872b
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140008648
mov rdx, qword [rsi + 0x20]
call fcn.14000d580
test rax, rax
jne 0x140008648
movzx edx, byte [0x140101d3b]
mov rbx, qword [rbx + 0x10]
test rbx, rbx
jne 0x1400086f6
mov r8d, dword [rbp - 0x80]
mov r11d, dword [rbp - 0x7c]
movzx r9d, byte [rsp + 0x6c]
movzx eax, word [0x140102c1c]
inc r8d
add r14, 8
mov dword [rbp - 0x80], r8d
cmp r8d, eax
jl 0x140008600
mov r10, qword [0x140105fc8]
xor esi, esi
mov rbx, qword [rbp + 0xc0]
mov r14d, dword [rsp + 0x50]
mov dl, 1
jmp 0x140008672
movzx ecx, cl
movzx eax, r15b
shl ecx, 8
add ecx, eax
mov rax, qword [0x140105fb0]
movzx r9d, word [rax + rcx*2]
mov dword [rsp + 0x68], r9d
mov word [rsp + 0x54], r9w
test r9w, r9w
jns 0x1400087b0
mov word [rdi + 8], r9w
jmp 0x1400087e0
movzx eax, r9w
and ax, r12w
cmp ax, word [0x140102c1c]
jae 0x1400087da
movzx ecx, ax
mov rax, qword [0x140105fc0]
movzx ecx, word [rax + rcx*2]
mov word [rdi + 8], cx
jmp 0x1400087da
mov r9d, dword [rsp + 0x68]
cmp r9w, r12w
jne 0x140008858
test dl, dl
je 0x1400087f5
mov rcx, qword [rsp + 0x78]
mov eax, reloc.OLEAUT32.dll_SafeArrayAllocDescriptor
or byte [rdi + 0x10], 8
mov word [rcx], ax
cmp byte [rdi + 0xc], 0
jne 0x14000883a
test byte [rdi + 0x10], 1
jne 0x14000883a
cmp byte [rsp + 0x59], 0
jne 0x14000883a
test dl, dl
jne 0x14000883a
mov rdx, qword [rsp + 0x60]
mov rcx, rbx
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x38], 0x7fffffff
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rdx
mov byte [rsp + 0x20], 0
mov byte [rdi + 0x15], 1
jmp 0x140009950
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], rdx
mov byte [rsp + 0x30], 0
jmp 0x140008321
mov r9d, dword [rsp + 0x68]
xor r14b, r14b
cmp byte [rdi + 0xe], r14b
je 0x1400088ba
test r13b, r13b
je 0x1400088ba
cmp qword [0x140102be0], rdi
movzx edx, byte [rbp + 0xe0]
jne 0x140008881
test dl, dl
je 0x1400088ba
mov qword [0x140102be0], rsi
cmp byte [rdi + 0xf], 0
jne 0x1400088b7
movzx eax, byte [rdi + 0x10]
test al, 8
je 0x140008898
xor cl, cl
and al, 0xf7
mov byte [rdi + 0x10], al
jmp 0x14000889a
mov cl, 1
test dl, dl
je 0x140008958
test cl, cl
je 0x140008958
mov qword [rsp + 0x40], rsi
mov rcx, rbx
jmp 0x140009933
mov r14b, 1
cmp byte [rdi + 0xd], 0
je 0x140008a56
test r13b, r13b
je 0x140008a56
mov rax, qword [0x140102be0]
cmp rax, rdi
cmove rax, rsi
cmp byte [rdi + 0x12], 0
mov qword [0x140102be0], rax
je 0x140008911
xor r8d, r8d
mov dword [rsp + 0x28], 0xffc3d44d
xor r9d, r9d
mov byte [rdi + 0x12], 0
mov dl, reloc.OLEAUT32.dll_SafeArrayGetUBound
mov byte [rsp + 0x20], r8b
lea ecx, [r8 + 1]
call fcn.1400152e0
mov r10, qword [0x140105fc8]
cmp byte [rdi + 0x13], 0
je 0x140008940
xor r8d, r8d
mov dword [rsp + 0x28], 0xffc3d44d
xor r9d, r9d
mov byte [rdi + 0x13], 0
mov dl, reloc.OLEAUT32.dll_SafeArrayGetDim
mov byte [rsp + 0x20], r8b
lea ecx, [r8 + 1]
call fcn.1400152e0
mov r10, qword [0x140105fc8]
mov r9d, dword [rsp + 0x68]
cmp r9w, r12w
jne 0x14000897a
movzx eax, byte [rdi + 0x10]
test al, 8
je 0x14000897a
and al, 0xf7
mov byte [rdi + 0x10], al
mov rdx, qword [rsp + 0x60]
mov esi, dword [rsp + 0x50]
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], rdx
mov byte [rsp + 0x30], r13b
mov word [rsp + 0x28], si
jmp 0x140008327
movzx ecx, byte [rsp + 0x59]
movzx eax, byte [rdi + 0x16]
test cl, cl
je 0x140008a15
cmp al, 2
jne 0x1400089de
mov esi, dword [rsp + 0x50]
xor r9d, r9d
mov eax, 0xffc3d44e
movzx r8d, si
mov dword [rsp + 0x28], eax
movzx edx, r15b
mov byte [rsp + 0x20], 0
lea ecx, [r9 + 1]
call fcn.1400152e0
xor r9d, r9d
mov dword [rsp + 0x28], 0xffc3d44d
movzx r8d, si
mov byte [rsp + 0x20], 0
movzx edx, r15b
lea ecx, [r9 + 2]
call fcn.1400152e0
mov rcx, rbx
jmp 0x14000992c
cmp al, 1
je 0x140008958
cmp byte [rdi + 0xe], 0
jne 0x140008a45
cmp byte [rdi + 0xc], 0
jne 0x140008958
test byte [rdi + 0x10], 1
jne 0x140008958
test cl, cl
jne 0x140008958
mov qword [rsp + 0x40], rsi
mov rcx, rbx
jmp 0x140009933
test al, al
je 0x1400089e6
cmp r9w, r12w
jne 0x1400089e6
cmp byte [rdi + 0xc], 0
jne 0x140008958
test byte [rdi + 0x10], 1
mov rcx, rbx
mov rdx, qword [rsp + 0x60]
jne 0x140009282
mov qword [rsp + 0x40], rsi
jmp 0x140009938
cmp byte [rsp + 0x6d], 0
jne 0x140008a56
cmp byte [rdi + 0xf], 0
je 0x140008958
cmp qword [0x140102be0], 0
mov esi, 0xffc3d44d
mov byte [rbp + 0xe0], 0
mov r11d, 0x7ffd
je 0x140008e7d
test r13b, r13b
je 0x140008a85
cmp byte [rdi + 0xf], 0
je 0x140008e7d
cmp r9w, r12w
jne 0x140009198
movzx ebx, word [rdi + 0xa]
xor eax, eax
mov r8d, eax
cmp bx, r12w
je 0x140008c6e
mov rax, qword [0x140102c08]
movzx ecx, bx
mov rdx, qword [rax + rcx*8]
movzx eax, byte [rdx + 0x11]
test al, al
jne 0x140008abf
cmp word [rdx + 0xa], 0
je 0x140008b1e
movzx ebx, word [rdx + 0xc]
test al, al
je 0x140008ad4
movzx eax, al
lea rcx, [rax + rax*2]
lea rax, [r10 + rcx*8]
jmp 0x140008ae7
movzx eax, word [rdx + 0xa]
lea rcx, [rax + rax*2]
mov rax, qword [0x140105fd0]
lea rax, [rax + rcx*8]
cmp byte [rax + 0x11], 0
je 0x140008b13
cmp byte [rdx + 0x16], 0
je 0x140008b07
test r13b, r13b
jne 0x140008b1b
movzx eax, word [rdx + 4]
mov word [rdi + 8], ax
test r8, r8
jne 0x140008b27
jmp 0x140008b13
test r13b, r13b
jne 0x140008b13
test r8, r8
cmove r8, rdx
cmp bx, r12w
jne 0x140008aa2
jmp 0x140008b1e
mov r8, rdx
test r8, r8
je 0x140008c6e
movzx edx, byte [r8 + 0x11]
mov ecx, edx
test edx, edx
je 0x140008b99
sub ecx, 0x10
je 0x140008b7f
sub ecx, 1
je 0x140008b65
cmp ecx, 1
je 0x140008b4b
lea rcx, [rdx + rdx*2]
lea rax, [r10 + rcx*8]
jmp 0x140008bad
cmp byte [r10 + 0xf89], 0
mov eax, 0xf60
mov ecx, 0xf78
cmovne eax, ecx
add rax, r10
jmp 0x140008bad
cmp byte [r10 + 0xf59], 0
mov eax, 0xf30
mov ecx, 0xf48
cmovne eax, ecx
add rax, r10
jmp 0x140008bad
cmp byte [r10 + 0xf29], 0
mov eax, 0xf00
mov ecx, 0xf18
cmovne eax, ecx
add rax, r10
jmp 0x140008bad
movzx eax, word [r8 + 0xa]
lea rcx, [rax + rax*2]
mov rax, qword [0x140105fd0]
lea rax, [rax + rcx*8]
movzx r9d, word [r8 + 6]
mov qword [0x140102be0], rax
test r9w, r9w
je 0x140008bca
mov word [rsp + 0x54], r9w
jmp 0x140008c5f
movzx eax, word [r8 + 4]
lea r9, [rbp + 0xe0]
mov rbx, qword [rsp + 0x78]
lea r8, [rdi + 0x10]
movzx edx, r13b
mov word [rsp + 0x54], ax
lea rcx, [rsp + 0x54]
mov qword [rsp + 0x20], rbx
call fcn.14000e140
mov r8, rax
test rax, rax
je 0x1400098c4
mov rax, qword [rbp + 0xf8]
movabs rcx, 0xffffffff003c2c17
add rcx, rax
cmp rcx, 0x66
ja 0x140008c3b
movzx edx, byte [r8 + 0x24]
mov ecx, esi
sub ecx, eax
cmp ecx, edx
jg 0x140008c3b
test rbx, rbx
je 0x140008c37
mov eax, 0x69
mov word [rbx], ax
xor al, al
jmp 0x140008c3d
mov al, 1
xor ecx, ecx
test al, al
cmovne rcx, r8
mov qword [rsp + 0x70], rcx
test rcx, rcx
je 0x1400098c4
movzx r9d, word [rsp + 0x54]
mov r11d, 0x7ffd
mov rax, qword [0x140102be0]
movzx ebx, r9w
mov byte [rax + 0x16], 2
movzx eax, bx
sub ax, r11w
cmp ax, 1
ja 0x140008e7d
test r13b, r13b
jne 0x140008c88
mov byte [rdi + 0x14], 1
test byte [0x140102a9e], 0xc
jne 0x140008cad
xor r8d, r8d
mov dword [rsp + 0x28], 0xffc3d44d
xor r9d, r9d
mov byte [rsp + 0x20], r8b
mov dl, reloc.OLEAUT32.dll_SafeArrayGetUBound
xor ecx, ecx
call fcn.1400152e0
mov esi, dword [rsp + 0x50]
lea eax, [r15 + 0x5e]
cmp al, 1
ja 0x140008cdf
test r13b, r13b
jne 0x140008cdf
xor r9d, r9d
mov dword [rsp + 0x28], 0xffc3d44d
movzx r8d, si
mov byte [rsp + 0x20], r13b
movzx edx, r15b
lea ecx, [r9 + 1]
call fcn.1400152e0
mov rax, qword [0x140102be0]
mov r14d, 0x7ffd
mov byte [rax + 0x12], 1
cmp bx, r14w
jne 0x140008d2b
test byte [0x140102a9e], 0x30
jne 0x140008d1b
xor r8d, r8d
mov dword [rsp + 0x28], 0xffc3d44d
xor r9d, r9d
mov byte [rsp + 0x20], r8b
mov dl, reloc.OLEAUT32.dll_SafeArrayGetDim
xor ecx, ecx
call fcn.1400152e0
mov rax, qword [0x140102be0]
mov byte [rax + 0x13], 1
jmp 0x140008db5
mov eax, 0x7ffe
cmp bx, ax
jne 0x140008db5
lea eax, [r15 + 0x60]
cmp al, 1
ja 0x140008d67
test r13b, r13b
jne 0x140008d67
xor r9d, r9d
mov dword [rsp + 0x28], 0xffc3d44d
movzx r8d, si
mov byte [rsp + 0x20], r13b
movzx edx, r15b
lea ecx, [r9 + 1]
call fcn.1400152e0
test byte [0x140102a9e], 0x10
je 0x140008d8e
xor r8d, r8d
mov dword [rsp + 0x28], 0xffc3d44d
xor r9d, r9d
mov byte [rsp + 0x20], r8b
mov dl, 0xa0
lea ecx, [r8 + 1]
call fcn.1400152e0
test byte [0x140102a9e], 0x20
je 0x140008db5
xor r8d, r8d
mov dword [rsp + 0x28], 0xffc3d44d
xor r9d, r9d
mov byte [rsp + 0x20], r8b
mov dl, 0xa1
lea ecx, [r8 + 1]
call fcn.1400152e0
test byte [0x140102a9e], 1
je 0x140008ddc
xor r8d, r8d
mov dword [rsp + 0x28], 0xffc3d44d
xor r9d, r9d
mov byte [rsp + 0x20], r8b
mov dl, 0xa2
lea ecx, [r8 + 1]
call fcn.1400152e0
test byte [0x140102a9e], 2
je 0x140008e03
xor r8d, r8d
mov dword [rsp + 0x28], 0xffc3d44d
xor r9d, r9d
mov byte [rsp + 0x20], r8b
mov dl, 0xa3
lea ecx, [r8 + 1]
call fcn.1400152e0
xor r8d, r8d
mov dword [rsp + 0x28], 0xffc3d44d
xor r9d, r9d
mov byte [rsp + 0x20], r8b
mov dl, 9
lea ecx, [r8 + 2]
call fcn.1400152e0
cmp bx, r14w
jne 0x140008e6b
mov rax, qword [0x140102be0]
cmp byte [rax + 0x13], 0
je 0x140008e6b
lea eax, [r15 - 0x60]
cmp al, 9
jbe 0x140008e42
cmp r15b, 0x6e
jne 0x140008e6b
xor r8d, r8d
mov dword [rsp + 0x28], 0xffc3d44d
xor r9d, r9d
mov byte [rsp + 0x20], r8b
mov dl, reloc.OLEAUT32.dll_SafeArrayGetDim
lea ecx, [r8 + 1]
call fcn.1400152e0
mov rax, qword [0x140102be0]
mov byte [rax + 0x13], 0
mov rcx, qword [rsp + 0x78]
mov eax, 0x68
mov word [rcx], ax
jmp 0x14000991c
cmp r9w, r12w
jne 0x140009198
movzx eax, byte [rdi + 0xc]
movzx edx, byte [0x140102a9d]
test al, al
je 0x140008e9a
not al
and dl, al
mov r10, qword [rbp + 0xc0]
cmp r10, qword [0x140101c80]
movzx r11d, byte [rsp + 0x58]
jne 0x140008ed0
test r11b, r11b
je 0x140008ed0
mov rbx, qword [rbp - 0x78]
mov rax, qword [0x140105fb8]
movzx ecx, dl
shl rcx, 9
add rcx, rbx
movzx r8d, r15b
jmp 0x140008ee8
mov rax, qword [0x140105fb0]
mov rbx, qword [rbp - 0x78]
movzx ecx, dl
shl ecx, 8
movzx r8d, r15b
add ecx, r8d
movzx r9d, word [rax + rcx*2]
mov dword [rsp + 0x68], r9d
movzx eax, r9w
mov word [rsp + 0x54], r9w
cmp r9w, r12w
jne 0x140008f86
cmp byte [0x140105f96], 0
je 0x140008f86
cmp r15b, 9
je 0x140008f86
and dl, 0xf3
cmp r10, qword [0x140101c80]
jne 0x140008f39
test r11b, r11b
je 0x140008f39
mov rax, qword [0x140105fb8]
movzx ecx, dl
shl rcx, 9
add rcx, rbx
jmp 0x140008f49
mov rax, qword [0x140105fb0]
movzx ecx, dl
shl ecx, 8
add ecx, r8d
movzx r9d, word [rax + rcx*2]
mov edx, 0x7ff9
movzx ecx, r9w
mov dword [rsp + 0x68], r9d
and cx, r12w
mov word [rsp + 0x54], r9w
movzx eax, r9w
cmp cx, dx
jbe 0x140008f75
cmp cx, r12w
jb 0x140008f86
mov r9d, r12d
mov dword [rsp + 0x68], r12d
mov word [rsp + 0x54], r12w
mov eax, r12d
test ax, ax
jns 0x140008fc1
test r13b, r13b
jne 0x14000909d
mov word [rdi + 8], r9w
cmp word [rdi + 8], r12w
lea rcx, [rdi + 8]
jne 0x140009129
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], rdx
mov byte [rsp + 0x30], 0
jmp 0x140009113
cmp ax, r12w
je 0x1400090b3
and ax, r12w
test r13b, r13b
je 0x1400090dd
cmp ax, word [0x140102c1c]
jae 0x140009098
movzx ebx, ax
mov rax, qword [0x140105fc0]
cmp word [rax + rbx*2], r12w
je 0x140009098
test r14b, r14b
jne 0x14000902f
mov r14, qword [rsp + 0x78]
lea r8, [rdi + 0x10]
lea r9, [rbp + 0xe0]
mov qword [rsp + 0x20], r14
movzx edx, r13b
lea rcx, [rsp + 0x54]
call fcn.14000e140
mov rdx, rax
test rax, rax
jne 0x140009043
mov qword [rsp + 0x70], rax
mov rax, qword [0x140105fc0]
movzx r9d, word [rax + rbx*2]
mov word [rsp + 0x54], r9w
jmp 0x1400090a2
mov r8, qword [rbp + 0xf8]
movabs rax, 0xffffffff003c2c17
add rax, r8
cmp rax, 0x66
ja 0x14000907c
movzx ecx, byte [rdx + 0x24]
mov eax, esi
sub eax, r8d
cmp eax, ecx
jg 0x14000907c
test r14, r14
je 0x140009078
mov eax, 0x69
mov word [r14], ax
xor al, al
jmp 0x14000907e
mov al, 1
xor ecx, ecx
test al, al
cmovne rcx, rdx
mov qword [rsp + 0x70], rcx
test rcx, rcx
je 0x14000902f
movzx r9d, word [rsp + 0x54]
jmp 0x1400090a2
test r14b, r14b
jne 0x1400090b3
mov r9d, dword [rsp + 0x68]
cmp r9w, r12w
jne 0x140009198
mov r10, qword [rbp + 0xc0]
test r13b, r13b
je 0x140008f99
cmp byte [rdi + 0xc], 0
jne 0x1400090ff
test byte [rdi + 0x10], 1
jne 0x1400090ff
cmp byte [rdi + 0xd], 0
je 0x1400090ff
cmp byte [rsp + 0x59], 0
jne 0x1400090ff
mov rcx, r10
jmp 0x14000992c
cmp ax, word [0x140102c1c]
mov r9d, dword [rsp + 0x68]
jae 0x1400090a2
movzx ecx, ax
mov rax, qword [0x140105fc0]
movzx ecx, word [rax + rcx*2]
mov word [rdi + 8], cx
jmp 0x1400090a2
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], rdx
mov byte [rsp + 0x30], r13b
mov esi, dword [rsp + 0x50]
mov rcx, r10
mov word [rsp + 0x28], si
mov byte [rsp + 0x20], r15b
jmp 0x14000832f
xor ebx, ebx
lea r8, [rdi + 0x10]
lea r9, [rbp + 0xe0]
mov qword [rsp + 0x20], rbx
mov dl, 1
call fcn.14000e140
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rbp + 0xc0]
cmp byte [rbp + 0xe0], bl
je 0x140009177
mov esi, dword [rsp + 0x50]
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], rdx
mov byte [rsp + 0x30], bl
mov word [rsp + 0x28], si
mov byte [rsp + 0x20], r15b
jmp 0x14000832f
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x38], 0x7fffffff
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rdx
mov byte [rsp + 0x20], bl
jmp 0x140009950
movzx eax, byte [rdi + 0x10]
lea rbx, [rdi + 0x10]
test al, 8
je 0x1400091b4
test r13b, r13b
je 0x1400091b4
and al, 0xf7
mov byte [rbp + 0xe0], 1
mov byte [rbx], al
movzx eax, r9w
and ax, r12w
cmp ax, word [0x140102c1c]
jae 0x140009346
cmp qword [rsp + 0x70], 0
jne 0x140009346
mov r14, qword [rsp + 0x78]
lea r9, [rbp + 0xe0]
mov r8, rbx
mov qword [rsp + 0x20], r14
movzx edx, r13b
lea rcx, [rsp + 0x54]
call fcn.14000e140
mov rdx, rax
test rax, rax
je 0x140009253
mov rax, qword [rbp + 0xf8]
movabs rcx, 0xffffffff003c2c17
add rcx, rax
cmp rcx, 0x66
ja 0x140009235
movzx ecx, byte [rdx + 0x24]
sub esi, eax
cmp esi, ecx
jg 0x140009235
test r14, r14
je 0x140009231
mov eax, 0x69
mov word [r14], ax
xor al, al
jmp 0x140009237
mov al, 1
xor r8d, r8d
test al, al
mov esi, r8d
cmovne rsi, rdx
test rsi, rsi
je 0x140009256
movzx r9d, word [rsp + 0x54]
jmp 0x14000934b
xor r8d, r8d
cmp word [r14], 0x69
je 0x1400098c4
test r13b, r13b
je 0x1400092a4
cmp byte [rdi + 0x15], 0
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rbp + 0xc0]
je 0x140009282
mov qword [rsp + 0x40], r8
jmp 0x140009938
mov esi, dword [rsp + 0x50]
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], rdx
mov byte [rsp + 0x30], r13b
mov word [rsp + 0x28], si
mov byte [rsp + 0x20], r15b
jmp 0x14000832f
cmp word [rdi + 8], r12w
lea rcx, [rdi + 8]
jne 0x1400092c8
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], rdx
mov byte [rsp + 0x30], 0
jmp 0x1400098d8
mov qword [rsp + 0x20], r8
lea r9, [rbp + 0xe0]
mov r8, rbx
mov byte [rbp + 0xe0], 0
mov dl, 1
call fcn.14000e140
cmp byte [rbp + 0xe0], 0
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rbp + 0xc0]
je 0x14000931c
mov esi, dword [rsp + 0x50]
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], rdx
mov byte [rsp + 0x30], 0
mov word [rsp + 0x28], si
mov byte [rsp + 0x20], r15b
jmp 0x14000832f
and byte [rbx], 0xf7
xor eax, eax
mov byte [rdi + 0x15], 1
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], 0x7fffffff
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rdx
mov byte [rsp + 0x20], al
jmp 0x140009950
mov rsi, qword [rsp + 0x70]
and r9w, r12w
test byte [0x140102a9e], 0xcc
mov dword [rsp + 0x68], r9d
je 0x14000944b
cmp byte [rbp + 0xe0], 0
jne 0x14000944b
cmp byte [0x140105f95], 0
jne 0x14000938b
mov rcx, qword [rbp + 0xc0]
cmp rcx, qword [0x140101c78]
jne 0x140009452
test byte [0x140102a9e], 0xc0
movzx edx, byte [0x140102a9c]
je 0x1400093cd
test dl, 0xc0
jne 0x1400093c1
cmp r9w, word [0x140102c1c]
jae 0x1400093cd
mov rax, qword [0x140102c08]
movzx ecx, r9w
mov rcx, qword [rax + rcx*8]
movzx eax, byte [rcx + 0xf]
and al, 0xc0
je 0x1400093cd
mov byte [0x140105f94], 1
jmp 0x14000944b
cmp byte [0x140105f94], 0
jne 0x14000944b
movzx eax, byte [0x140102a9e]
test al, 0xc
je 0x14000944b
test al, 3
jne 0x14000944b
test dl, 0xc
jne 0x14000940b
cmp r9w, word [0x140102c1c]
jae 0x14000944b
mov rax, qword [0x140102c08]
movzx ecx, r9w
mov rcx, qword [rax + rcx*8]
movzx eax, byte [rcx + 0xf]
and al, 0xc
je 0x14000944b
cmp qword [0x140101c80], 0
je 0x14000941e
mov byte [0x140105f94], 1
jmp 0x14000944b
movzx r8d, word [0x1400ffaa0]
xor r9d, r9d
movzx edx, byte [reloc.OLEAUT32.dll_SafeArrayGetElemsize]
mov dword [rsp + 0x28], 0xffc3d44d
mov byte [rsp + 0x20], 0
lea ecx, [r9 + 2]
call fcn.1400152e0
mov r9d, dword [rsp + 0x68]
mov rcx, qword [rbp + 0xc0]
mov eax, 0x7ffa
cmp r9w, ax
je 0x1400094a4
jbe 0x140009479
mov eax, 0x7ffc
cmp r9w, ax
jbe 0x1400094b7
mov eax, 0x7ffe
cmp r9w, ax
jbe 0x14000955d
mov rax, qword [rsi + 8]
movzx r12d, r9w
test rax, rax
je 0x1400097a7
cmp byte [rax], 5
jb 0x1400097a7
movzx eax, word [rsi + 0x20]
shl eax, 0x10
cdqe
or r12, rax
jmp 0x1400097a7
cmp byte [0x140105f96], 0
jne 0x1400094b7
mov rdx, qword [rsp + 0x60]
jmp 0x140009282
xor al, al
test byte [0x140102a9e], 4
je 0x1400094c7
mov r14b, 0xa4
jmp 0x1400094db
test byte [0x140102a9e], 8
movzx r14d, al
mov eax, 0xa5
cmovne r14d, eax
cmp byte [0x140105f96], 0
je 0x14000964c
mov eax, 0x7ffb
cmp r9w, ax
je 0x14000955d
mov edx, reloc.OLEAUT32.dll_SafeArrayGetUBound
movzx eax, r14b
test r14b, r14b
mov dword [rsp + 0x28], 0xffc3d44d
cmovne edx, eax
xor r8d, r8d
xor r9d, r9d
mov byte [rsp + 0x20], r8b
lea ecx, [r8 + 1]
call fcn.1400152e0
cmp byte [rdi + 0xc], 0
je 0x140009551
lea eax, [r15 - 0x5b]
cmp al, 1
jbe 0x140009551
test r13b, r13b
jne 0x140009551
xor r8d, r8d
mov dword [rsp + 0x28], 0xffc3d44d
xor r9d, r9d
mov byte [rsp + 0x20], r8b
movzx edx, r15b
lea ecx, [r8 + 1]
call fcn.1400152e0
mov byte [0x140105f96], 0
jmp 0x1400097a7
cmp byte [0x140105f96], 0
je 0x1400094ad
test r13b, r13b
jne 0x140009597
lea eax, [r15 + 0x60]
cmp al, 3
ja 0x140009597
xor r8d, r8d
mov dword [rsp + 0x28], 0xffc3d44d
xor r9d, r9d
mov byte [rsp + 0x20], r8b
movzx edx, r15b
lea ecx, [r8 + 1]
call fcn.1400152e0
test byte [0x140102a9e], 0xc
je 0x1400095ad
test r13b, r13b
je 0x1400095c9
lea eax, [r15 + 0x5c]
cmp al, 1
ja 0x1400095c9
xor r8d, r8d
mov dword [rsp + 0x28], 0xffc3d44d
xor r9d, r9d
mov byte [rsp + 0x20], r8b
mov dl, reloc.OLEAUT32.dll_SafeArrayGetUBound
xor ecx, ecx
call fcn.1400152e0
mov r9d, dword [rsp + 0x68]
xor bl, bl
mov r14d, 0x7ffd
cmp r9w, r14w
jne 0x140009603
test byte [0x140102a9e], 0x30
jne 0x140009603
xor r8d, r8d
mov dword [rsp + 0x28], 0xffc3d44d
xor r9d, r9d
mov byte [rsp + 0x20], r8b
mov dl, reloc.OLEAUT32.dll_SafeArrayGetDim
xor ecx, ecx
call fcn.1400152e0
mov bl, 1
xor r8d, r8d
mov dword [rsp + 0x28], 0xffc3d44d
xor r9d, r9d
mov byte [rsp + 0x20], r8b
mov dl, 9
lea ecx, [r8 + 2]
call fcn.1400152e0
test bl, bl
je 0x1400097a3
xor r8d, r8d
mov dword [rsp + 0x28], 0xffc3d44d
xor r9d, r9d
mov byte [rsp + 0x20], r8b
mov dl, reloc.OLEAUT32.dll_SafeArrayGetDim
lea ecx, [r8 + 1]
call fcn.1400152e0
jmp 0x1400097a3
lea eax, [r15 + 0x5c]
cmp al, 1
lea eax, [r15 + 0x60]
setbe byte [rbp + 0xf8]
cmp al, 1
lea eax, [r15 + 0x5e]
setbe dl
cmp al, 1
mov byte [rsp + 0x6c], dl
setbe cl
xor sil, sil
test byte [0x140102a9e], 0x10
je 0x140009680
mov sil, 0xa0
jmp 0x1400096a0
test byte [0x140102a9e], 0x20
je 0x14000968e
mov sil, 0xa1
jmp 0x1400096a0
test r13b, r13b
jne 0x1400096a0
test dl, dl
movzx esi, sil
movzx eax, r15b
cmovne esi, eax
xor bl, bl
test byte [0x140102a9e], 1
je 0x1400096af
mov bl, 0xa2
jmp 0x1400096cd
test byte [0x140102a9e], 2
je 0x1400096bc
mov bl, 0xa3
jmp 0x1400096cd
test r13b, r13b
jne 0x1400096cd
test cl, cl
movzx ebx, bl
movzx eax, r15b
cmovne ebx, eax
xor r12b, r12b
test sil, sil
je 0x1400096f8
xor r8d, r8d
mov dword [rsp + 0x28], 0xffc3d44d
xor r9d, r9d
mov byte [rsp + 0x20], r8b
movzx edx, sil
lea ecx, [r8 + 1]
call fcn.1400152e0
mov r12b, 1
test bl, bl
je 0x14000971b
xor r8d, r8d
mov dword [rsp + 0x28], 0xffc3d44d
xor r9d, r9d
mov byte [rsp + 0x20], r8b
movzx edx, bl
lea ecx, [r8 + 1]
call fcn.1400152e0
cmp byte [rbp + 0xf8], 0
je 0x14000972d
test r13b, r13b
jne 0x140009732
movzx r14d, r15b
test r14b, r14b
jne 0x14000974e
xor r8d, r8d
mov dword [rsp + 0x28], 0xffc3d44d
xor r9d, r9d
mov byte [rsp + 0x20], r8b
mov dl, reloc.OLEAUT32.dll_SafeArrayGetUBound
xor ecx, ecx
call fcn.1400152e0
xor r8d, r8d
mov dword [rsp + 0x28], 0xffc3d44d
xor r9d, r9d
mov byte [rsp + 0x20], r8b
mov dl, 9
lea ecx, [r8 + 2]
call fcn.1400152e0
test r12b, r12b
je 0x140009796
cmp byte [rsp + 0x6c], 0
jne 0x140009796
xor r8d, r8d
mov dword [rsp + 0x28], 0xffc3d44d
xor r9d, r9d
mov byte [rsp + 0x20], r8b
movzx edx, sil
xor ecx, ecx
call fcn.1400152e0
mov byte [0x140105f96], 1
mov r12d, 0x7fff
lea rbx, [rdi + 0x10]
cmp byte [rsp + 0x59], 0
mov eax, 0x68
mov rcx, qword [rsp + 0x78]
mov word [rcx], ax
je 0x140009816
test r13b, r13b
je 0x14000989e
cmp byte [rdi + 0xd], 0
je 0x140009816
mov esi, dword [rsp + 0x50]
xor r9d, r9d
mov eax, 0xffc3d44e
movzx r8d, si
mov dword [rsp + 0x28], eax
movzx edx, r15b
mov byte [rsp + 0x20], 0
lea ecx, [r9 + 1]
call fcn.1400152e0
xor r9d, r9d
mov dword [rsp + 0x28], 0xffc3d44d
movzx r8d, si
mov byte [rsp + 0x20], 0
movzx edx, r15b
lea ecx, [r9 + 2]
call fcn.1400152e0
jmp 0x140009925
test r13b, r13b
je 0x14000989e
cmp byte [rdi + 0xc], 0
je 0x140009847
cmp byte [rdi + 0x15], 0
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rbp + 0xc0]
je 0x140009282
xor eax, eax
mov qword [rsp + 0x40], rax
jmp 0x140009938
cmp byte [rbp + 0xe0], 0
je 0x14000991c
mov rdx, qword [rsp + 0x60]
mov rax, qword [rbp + 0xc0]
mov esi, dword [rsp + 0x50]
mov rcx, rax
mov r9, qword [rbp + 0xd8]
mov r8, qword [rbp + 0xd0]
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], rdx
mov edx, dword [rbp + 0xc8]
mov byte [rsp + 0x30], r13b
mov word [rsp + 0x28], si
mov byte [rsp + 0x20], r15b
call fcn.140009af0
jmp 0x140009960
mov rax, qword [0x140102be0]
mov byte [rdi + 0x14], 1
test rax, rax
je 0x1400098b8
cmp byte [rax + 0xc], 0
je 0x1400098b8
mov byte [rax + 0x16], 2
cmp byte [rbp + 0xe0], 0
je 0x1400098f2
or byte [rbx], 8
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], rdx
mov byte [rsp + 0x30], r13b
mov esi, dword [rsp + 0x50]
mov rcx, qword [rbp + 0xc0]
mov word [rsp + 0x28], si
mov byte [rsp + 0x20], r15b
jmp 0x14000832f
lea eax, [r15 + 0x5c]
cmp al, 1
ja 0x14000991c
mov r8d, dword [rsp + 0x50]
xor r9d, r9d
mov dword [rsp + 0x28], 0xffc3d450
movzx edx, r15b
mov byte [rsp + 0x20], 0
lea ecx, [r9 + 1]
call fcn.1400152e0
test r13b, r13b
jne 0x140009925
mov byte [rdi + 0x15], 1
mov rcx, qword [rbp + 0xc0]
xor eax, eax
mov qword [rsp + 0x40], rax
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x38], 0x7fffffff
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rdx
mov byte [rsp + 0x20], r13b
movzx r8d, r15b
mov rdx, qword [rbp + 0xd8]
call fcn.140009980
add rsp, 0x178
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret