Function at 0x140027cd0
Capabilities:
Check for time delay via gettickcount
Find taskbar
Generate random numbers using a mersenne twister
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 - 0xb18]
sub rsp, 0xbf8
mov qword [rbp + 0x28], 0xfffffffffffffffe
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
lea rax, [rbp + 0xb38]
test r9, r9
cmovne rax, r9
mov qword [rbp - 0x50], rax
xor edx, edx
mov qword [rax], rdx
mov rbx, qword [0x1400edaa8]
mov qword [rsp + 0x78], rbx
mov rdi, rcx
mov qword [rsp + 0x68], rcx
lea esi, [rdx + 1]
test rcx, rcx
je 0x14002c778
xorps xmm8, xmm8
movzx eax, byte [rbp + 0xb20]
mov dword [rbp - 0x6c], eax
nop word [rax + rax]
cmp dword [0x1400f6624], 0
je 0x140027d8e
cmp qword [0x1400f6608], 0
je 0x140027d79
mov rcx, qword [0x1400f65f8]
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
xor eax, eax
mov qword [0x1400f6608], rax
call qword [sym.imp.USER32.dll_CloseClipboard]
xor eax, eax
mov dword [0x1400f6624], eax
mov qword [0x1400f65f8], rax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov r8d, eax
mov ecx, eax
sub ecx, dword [0x1400f6574]
mov rax, qword [0x1400edaa8]
cmp ecx, dword [rax + 0x110]
jbe 0x140027de6
xor eax, eax
mov dword [rsp + 0x20], eax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0x80]
call qword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x140027dd7
mov edx, esi
or ecx, 0xffffffff
call fcn.140001800
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov r8d, eax
mov dword [0x1400f6574], eax
cmp byte [rbx + 0x124], 0
jne 0x140027e19
cmp byte [rbx + 0x126], 0
jne 0x140027e19
mov eax, dword [0x1400f6568]
cmp eax, 0xffffffff
jle 0x140027e19
mov ecx, dword [rbx + 0x38]
cmp ecx, eax
jle 0x140027e13
mov byte [rbx + 0x124], 1
jmp 0x140027e19
lea eax, [rcx + 1]
mov dword [rbx + 0x38], eax
mov rax, qword [rbx]
mov rdx, qword [0x1400f6560]
cmp rax, 0xffffffffffffffff
jle 0x140027e2e
cmp rdx, rax
jge 0x140027e42
mov eax, dword [rbx + 0x34]
cmp eax, 0xffffffff
jle 0x140027e55
sub r8d, dword [0x1400f6570]
cmp r8d, eax
jb 0x140027e55
mov edx, esi
mov ecx, 0xa
call fcn.140001800
mov rdx, qword [0x1400f6560]
cmp byte [rbx + 0x130], 0
je 0x140027e7c
nop
mov edx, esi
mov ecx, 0x8000012f
call fcn.140001800
cmp byte [rbx + 0x130], 0
jne 0x140027e60
mov rdx, qword [0x1400f6560]
mov qword [0x1400f6068], rdi
cmp byte [rbx + 0x131], 0
je 0x140027ed3
movsxd rax, dword [0x1400f4498]
lea rbx, [0x140000000]
mov qword [rbx + rax*8 + 0xf4ae0], rdi
call qword [sym.imp.KERNEL32.dll_GetTickCount]
movsxd rdx, dword [0x1400f4498]
mov dword [rbx + rdx*4 + 0xf44a0], eax
inc edx
cmp edx, 0x190
mov eax, 0
cmovge edx, eax
mov dword [0x1400f4498], edx
mov rdx, qword [0x1400f6560]
movzx eax, byte [rdi]
cmp al, 1
je 0x140027f0c
cmp al, 0x6b
je 0x140027f0c
cmp al, 0x72
je 0x140027f0c
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rdx, qword [rbp + 0xb30]
mov rcx, rdi
call fcn.14005ef90
mov dword [rsp + 0x60], eax
cmp eax, 1
jne 0x14002c3f6
mov rdx, qword [0x1400f6560]
movzx ebx, byte [rdi]
mov dword [rbp - 0x58], ebx
lea eax, [rbx - 9]
cmp al, 0x17
ja 0x140028096
inc rdx
mov qword [0x1400f6560], rdx
mov rcx, rdi
call fcn.14002cc50
cmp eax, 3
jne 0x140027fed
mov rax, qword [rdi + 0x20]
cmp byte [rax], 0x73
jne 0x140027f7e
nop dword [rax]
nop word [rax + rax]
lea r9, [rbp - 0x78]
mov r8, qword [rbp + 0xb30]
mov edx, 2
mov rcx, qword [rax + 0x20]
call fcn.140027cd0
mov edx, eax
mov dword [rsp + 0x60], eax
mov rax, qword [rdi + 0x20]
mov rcx, qword [rbp - 0x78]
cmp rcx, rax
je 0x140027f50
jmp 0x140027fa0
lea r9, [rbp - 0x78]
mov r8, qword [rbp + 0xb30]
mov edx, 3
mov rcx, rax
call fcn.140027cd0
mov edx, eax
mov dword [rsp + 0x60], eax
mov rcx, qword [rbp - 0x78]
cmp rcx, rdi
je 0x14002c372
cmp dword [rbp + 0xb28], 3
je 0x14002c391
cmp edx, 1
jne 0x14002c391
test rcx, rcx
jne 0x14002c360
mov rdi, qword [rdi + 0x28]
mov qword [rsp + 0x68], rdi
mov rbx, qword [rsp + 0x78]
cmp byte [rdi], 0x21
jne 0x14002c377
mov rdi, qword [rdi + 0x28]
mov qword [rsp + 0x68], rdi
jmp 0x14002c377
mov rdi, qword [rdi + 0x28]
mov qword [rsp + 0x68], rdi
cmp byte [rdi], 0x21
jne 0x140028084
mov rax, qword [rdi + 0x20]
cmp byte [rax], 0x73
jne 0x14002803e
nop dword [rax + rax]
lea r9, [rbp - 0x78]
mov r8, qword [rbp + 0xb30]
mov edx, 2
mov rcx, qword [rax + 0x20]
call fcn.140027cd0
mov edx, eax
mov dword [rsp + 0x60], eax
mov rax, qword [rdi + 0x20]
mov rcx, qword [rbp - 0x78]
cmp rcx, rax
je 0x140028010
jmp 0x140028060
lea r9, [rbp - 0x78]
mov r8, qword [rbp + 0xb30]
mov edx, 3
mov rcx, rax
call fcn.140027cd0
mov edx, eax
mov dword [rsp + 0x60], eax
mov rcx, qword [rbp - 0x78]
cmp dword [rbp + 0xb28], 3
je 0x14002c391
cmp edx, 1
jne 0x14002c391
test rcx, rcx
je 0x140028a9b
jmp 0x14002c360
cmp dword [rbp + 0xb28], 3
je 0x14002c778
jmp 0x14002c372
movzx eax, bl
add eax, 0xffffffa0
lea r8, [0x140000000]
cmp eax, 0x7e
ja case.0x1400280c2.110
cdqe
movzx eax, byte [r8 + rax + 0x2c7d8]
mov ecx, dword [r8 + rax*4 + 0x2c79c]
add rcx, r8
jmp rcx
inc rdx
mov qword [0x1400f6560], rdx
mov rdx, qword [rdi + 0x28]
test rdx, rdx
je 0x1400280ed
mov qword [rbp - 0x20], rdx
xor eax, eax
mov ebx, eax
cmp qword [rdi + 0x10], 1
sete bl
test ebx, ebx
je 0x14002815c
jmp 0x14002813a
mov dl, 1
mov rcx, rdi
call fcn.140047360
mov rdx, rax
mov qword [rbp - 0x20], rax
test rax, rax
je 0x14002c43c
mov rcx, qword [rsp + 0x78]
cmp qword [rcx + 0xd8], 0
je 0x140028158
mov rax, qword [rax + 0x10]
mov rcx, qword [rax + 0x30]
test rcx, rcx
je 0x140028138
cmp qword [rcx + 0x10], 1
jne 0x14002812f
cmp byte [rcx], 0x73
je 0x140028158
mov rcx, qword [rcx + 0x30]
test rcx, rcx
jne 0x140028123
mov ebx, esi
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx + 0xd8]
mov qword [rcx + 0xe0], rax
xor eax, eax
mov qword [rcx + 0xd8], rax
jmp 0x14002815c
xor eax, eax
mov ebx, eax
mov rcx, rdx
call fcn.1400016b0
mov ecx, eax
mov dword [rsp + 0x60], eax
test ebx, ebx
je 0x14002818a
mov rdx, qword [rsp + 0x78]
mov rax, qword [rdx + 0xe0]
mov qword [rdx + 0xd8], rax
xor eax, eax
mov qword [rdx + 0xe0], rax
test ecx, ecx
je 0x14002c3a5
cmp ecx, 8
je 0x14002c3a5
cmp dword [rbp + 0xb28], 3
je 0x14002c39f
mov rdi, qword [rdi + 0x20]
mov qword [rsp + 0x68], rdi
jmp 0x14002c372
inc rdx
mov qword [0x1400f6560], rdx
mov rcx, qword [rdi + 0x28]
mov qword [rbp - 0x20], rcx
test rcx, rcx
jne 0x1400281e7
mov dl, 1
mov rcx, rdi
call fcn.140047360
mov rcx, rax
mov qword [rbp - 0x20], rax
test rax, rax
je 0x14002c43c
mov rbx, qword [rsp + 0x78]
mov qword [rbx + 0xe8], rcx
cmp dword [rbp + 0xb28], 3
je 0x14002c3ac
mov rdx, qword [rcx + 0x10]
mov rax, qword [rdx + 0x30]
cmp qword [rdi + 0x30], rax
jne 0x14002c3ac
mov rdi, rdx
mov qword [rsp + 0x68], rdx
jmp 0x14002c377
inc rdx
mov qword [0x1400f6560], rdx
mov rbx, qword [rbp + 0xb20]
mov rbx, qword [rbx + 0x10]
test rbx, rbx
jne 0x140028252
xor r8d, r8d
mov rdx, qword [0x1400f5810]
lea rcx, [0x1400f59d0]
call fcn.1400250d0
mov rbx, rax
mov dword [rsp + 0x60], esi
xor eax, eax
mov esi, eax
test rbx, rbx
je 0x14002834f
mov rcx, qword [0x1400f5818]
cmp word [rcx], ax
je 0x140028283
lea rdx, [0x1400d1b54]
call fcn.140099630
test eax, eax
jne 0x140028283
mov dl, 1
jmp 0x140028285
xor edx, edx
lea r9, [rbp - 0x20]
xor r8d, r8d
mov rcx, rbx
call fcn.1400809d0
mov esi, eax
mov rdi, qword [rbp - 0x20]
test rdi, rdi
je 0x14002834a
xor r8d, r8d
mov rdx, rdi
mov rcx, qword [rsp + 0x68]
call fcn.140047470
test rax, rax
je 0x14002c43c
mov r8, qword [rsp + 0x78]
mov rdx, qword [r8 + 0xd8]
test rdx, rdx
je 0x14002830c
mov rax, qword [rdi + 0x10]
mov rcx, qword [rax + 0x30]
test rcx, rcx
je 0x1400282f5
nop word [rax + rax]
cmp qword [rcx + 0x10], 1
jne 0x1400282ec
cmp byte [rcx], 0x73
je 0x14002830c
mov rcx, qword [rcx + 0x30]
test rcx, rcx
jne 0x1400282e0
mov ebx, 1
mov qword [r8 + 0xe0], rdx
xor eax, eax
mov qword [r8 + 0xd8], rax
jmp 0x140028310
xor eax, eax
mov ebx, eax
mov rcx, rdi
call fcn.1400016b0
mov ecx, eax
mov dword [rsp + 0x60], eax
test ebx, ebx
je 0x14002833e
mov rdx, qword [rsp + 0x78]
mov rax, qword [rdx + 0xe0]
mov qword [rdx + 0xd8], rax
xor eax, eax
mov qword [rdx + 0xe0], rax
test ecx, 0xfffffff7
je 0x14002c3a5
mov rdi, qword [rsp + 0x68]
test esi, esi
sete dl
mov rcx, qword [rbp + 0xb20]
call fcn.140030e80
cmp dword [rbp + 0xb28], 3
je 0x14002c3b9
mov rdi, qword [rdi + 0x20]
mov qword [rsp + 0x68], rdi
mov esi, 1
jmp 0x14002c372
mov rbx, qword [rdi + 0x10]
mov rax, rbx
sub rax, 1
je 0x1400283d7
sub rax, 3
je 0x1400283ba
cmp rax, 5
jne 0x140028478
xor r9d, r9d
xor r8d, r8d
mov edx, esi
mov rcx, qword [0x1400f5818]
call fcn.140014e70
mov qword [rbp - 0x30], rax
jmp 0x140028488
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x1400f5810]
call fcn.140014e70
mov qword [rbp - 0x30], rax
jmp 0x1400284c2
movzx ecx, byte [rdi + 1]
test ecx, ecx
je 0x140028473
cmp ecx, 1
mov rcx, qword [0x1400f5810]
je 0x140028430
lea rdx, [0x1400d3b20]
call fcn.140099630
test eax, eax
jne 0x140028407
lea ebx, [rax + 5]
jmp 0x140028488
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x1400f5810]
call fcn.140014e70
mov qword [rbp - 0x30], rax
xor eax, eax
mov ebx, eax
cmp qword [rbp - 0x30], rax
setne bl
add rbx, 3
jmp 0x140028478
xor ebx, ebx
mov dword [rsp + 0x20], ebx
mov r9d, esi
mov r8d, esi
mov edx, esi
call fcn.140079dc0
test eax, eax
je 0x14002844e
mov ebx, 2
jmp 0x140028488
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x1400f5810]
call fcn.140014e70
mov qword [rbp - 0x30], rax
cmp rax, 0
setne bl
add rbx, 3
jmp 0x140028478
mov ebx, 2
cmp rbx, 3
je 0x140028507
cmp rbx, 4
je 0x1400284c2
lea rax, [rbx - 9]
mov rcx, qword [0x1400f5820]
cmp rax, 1
ja 0x1400284b8
call fcn.140015b10
mov r9d, eax
mov dword [rbp - 0x48], eax
shr eax, 2
and al, 1
mov dword [rbp - 0x6c], eax
je 0x1400284f1
and r9d, 0xfffffffb
mov dword [rbp - 0x48], r9d
jmp 0x1400284f1
mov r8d, dword [rbp - 0x6c]
mov r9d, dword [rbp - 0x48]
jmp 0x140028541
mov rcx, qword [0x1400f5820]
call fcn.140015ab0
mov r9d, eax
mov dword [rbp - 0x48], eax
mov rax, qword [0x1400f5828]
cmp word [rax], 0x31
jne 0x1400284ec
cmp word [rax + 2], 0
jne 0x1400284ec
mov al, 1
jmp 0x1400284ee
xor al, al
mov dword [rbp - 0x6c], eax
test r9d, r9d
je 0x14002c3cd
mov rcx, qword [0x1400f5820]
mov r8d, dword [rbp - 0x6c]
jmp 0x140028541
mov rcx, qword [0x1400f5818]
call fcn.140015ab0
mov r9d, eax
mov dword [rbp - 0x48], eax
test eax, eax
je 0x14002c409
mov rcx, qword [0x1400f5820]
cmp word [rcx], 0x31
jne 0x14002853a
cmp word [rcx + 2], 0
jne 0x14002853a
mov r8b, 1
jmp 0x14002853d
xor r8b, r8b
mov dword [rbp - 0x6c], r8d
mov byte [rbp + 0xb38], 0
xor r10d, r10d
mov qword [rbp - 0x78], r10
mov rsi, qword [rdi + 0x28]
cmp byte [rsi], 0x6c
jne 0x140028561
mov rdi, rsi
mov rsi, qword [rsi + 0x20]
jmp 0x140028564
mov rdi, r10
mov rdx, qword [rsp + 0x78]
mov rax, qword [rdx + 8]
mov qword [rbp - 0x40], rax
mov rax, qword [rdx + 0x10]
mov qword [rbp - 0x10], rax
mov rax, qword [rdx + 0x18]
mov qword [rbp - 0x80], rax
mov rax, qword [rdx + 0x20]
mov qword [rbp - 0x58], rax
mov rax, qword [rdx + 0x28]
mov qword [rbp - 0x68], rax
cmp rbx, 8
je 0x14002859f
mov qword [rdx + 8], 1
lea rax, [rbx - 2]
cmp rax, 8
ja case.default.0x1400285bf
lea r11, [0x140000000]
mov eax, dword [r11 + rax*4 + 0x2c858]
add rax, r11
jmp rax
mov rax, qword [rsp + 0x68]
cmp byte [rax + 1], r10b
jbe 0x1400285da
xor edx, edx
mov rcx, rax
call fcn.140022370
xor cl, cl
jmp 0x1400285df
mov rax, r10
mov cl, 1
mov byte [rsp + 0x30], cl
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
lea r9, [rbp - 0x78]
lea r8, [rbp + 0xb38]
mov rdx, qword [rbp + 0xb30]
mov rdi, qword [rsp + 0x68]
mov rcx, rdi
call fcn.14002e370
mov dword [rsp + 0x60], eax
jmp 0x140028855
lea r9, [rbp - 0x78]
lea r8, [rbp + 0xb38]
mov rdx, qword [rbp + 0xb30]
mov rdi, qword [rsp + 0x68]
mov rcx, rdi
call fcn.14002e4a0
mov dword [rsp + 0x60], eax
jmp 0x140028855
mov qword [rsp + 0x20], rdi
lea r9, [rbp - 0x78]
lea r8, [rbp + 0xb38]
mov rdx, qword [rbp + 0xb30]
mov rdi, qword [rsp + 0x68]
mov rcx, rdi
call fcn.14002e6c0
mov dword [rsp + 0x60], eax
jmp 0x140028855
lea rdx, [0x1400d5dd8]
call fcn.140099630
mov qword [rsp + 0x20], rdi
lea r9, [rbp - 0x78]
lea r8, [rbp + 0xb38]
mov rdx, qword [rbp + 0xb30]
mov rdi, qword [rsp + 0x68]
mov rcx, rdi
test eax, eax
je 0x1400286a7
call fcn.14002f460
mov dword [rsp + 0x60], eax
jmp 0x140028855
call fcn.14002f800
mov dword [rsp + 0x60], eax
jmp 0x140028855
lea rcx, [rbp + 0x30]
call fcn.1400162e0
nop
mov rdx, qword [0x1400f5818]
cmp word [rdx], 0
je 0x140028738
mov rcx, qword [rsp + 0x78]
mov r9d, dword [rcx + 0x134]
btr r9d, 0x1f
mov r8d, 0x30c
lea rcx, [rbp + 0x30]
call fcn.140077a00
test al, al
je 0x140028738
mov rax, qword [0x1400f5820]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x30]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
lea r9, [rbp - 0x78]
lea r8, [rbp + 0xb38]
mov rdx, qword [rbp + 0xb30]
mov rdi, qword [rsp + 0x68]
mov rcx, rdi
call fcn.14002fc10
mov dword [rsp + 0x60], eax
lea rcx, [rbp + 0x30]
call fcn.140016200
jmp 0x140028745
mov dword [rsp + 0x60], 1
mov rdi, qword [rsp + 0x68]
lea rcx, [rbp + 0x30]
call fcn.140016350
jmp 0x140028855
mov rax, qword [0x1400f5818]
cmp rbx, 3
cmove rax, qword [0x1400f5810]
mov qword [rsp + 0x38], rax
mov byte [rsp + 0x30], r8b
mov dword [rsp + 0x28], r9d
mov qword [rsp + 0x20], rdi
lea r9, [rbp - 0x78]
lea r8, [rbp + 0xb38]
mov rdx, qword [rbp + 0xb30]
mov rdi, qword [rsp + 0x68]
mov rcx, rdi
call fcn.14002ead0
mov dword [rsp + 0x60], eax
jmp 0x140028855
lea r9, [rbp - 0x70]
cmp rbx, 4
jne 0x1400287cd
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x1400f5810]
call fcn.140014e70
mov rbx, rax
mov rax, qword [0x1400f5818]
mov qword [rbp + 8], rax
jmp 0x1400287e9
lea r8, [rbp + 8]
mov edx, 1
mov rcx, qword [0x1400f5818]
call fcn.140014e70
mov rbx, rax
mov rax, qword [rbp + 8]
test rbx, rbx
je 0x140028848
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], rbx
mov rax, qword [rbp - 0x30]
mov qword [rsp + 0x38], rax
mov eax, dword [rbp - 0x6c]
mov byte [rsp + 0x30], al
mov eax, dword [rbp - 0x48]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rdi
lea r9, [rbp - 0x78]
lea r8, [rbp + 0xb38]
mov rdx, qword [rbp + 0xb30]
mov rdi, qword [rsp + 0x68]
mov rcx, rdi
call fcn.14002ef50
mov dword [rsp + 0x60], eax
cmp byte [rbp - 0x70], 0
je 0x140028855
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x140028855
mov dword [rsp + 0x60], 1
mov rdi, qword [rsp + 0x68]
mov rax, qword [rbp - 0x40]
mov rbx, qword [rsp + 0x78]
mov qword [rbx + 8], rax
mov rax, qword [rbp - 0x10]
mov qword [rbx + 0x10], rax
mov rax, qword [rbp - 0x80]
mov qword [rbx + 0x18], rax
mov rax, qword [rbp - 0x58]
mov qword [rbx + 0x20], rax
mov rax, qword [rbp - 0x68]
mov qword [rbx + 0x28], rax
mov eax, dword [rsp + 0x60]
test eax, eax
je 0x14002c3f6
cmp eax, 7
je 0x14002c3f6
cmp eax, 8
je 0x14002c3f6
cmp byte [rbp + 0xb38], 0
jne 0x1400288c8
mov rcx, qword [rbp - 0x78]
test rcx, rcx
je 0x1400288d2
mov rax, qword [rdi + 0x30]
cmp qword [rcx + 0x30], rax
jne 0x14002c3eb
mov rdi, rcx
mov qword [rsp + 0x68], rcx
mov esi, 1
jmp 0x14002c377
cmp dword [rbp + 0xb28], 3
je 0x14002c3ff
mov rdi, rsi
mov qword [rsp + 0x68], rsi
mov esi, 1
jmp 0x14002c377
mov rsi, qword [rsp + 0x78]
movzx edi, byte [rsi + 0x148]
mov byte [rbp - 0x60], dil
cmp bl, 0x70
jne 0x140028934
mov rcx, qword [0x1400f5760]
test rcx, rcx
je 0x140028926
mov rdx, qword [rsi + 0x138]
call fcn.14007ce60
test eax, eax
je 0x14002c427
lea rcx, [rsi + 0x138]
call fcn.1400319a0
jmp 0x14002893b
mov byte [rsi + 0x148], 1
xor eax, eax
mov qword [rbp - 0x78], rax
mov rsi, qword [rsp + 0x68]
mov r10, qword [rsi + 0x20]
cmp byte [r10], 0x73
jne 0x14002898c
mov rdi, qword [rbp + 0xb30]
mov ebx, 2
nop dword [rax]
lea r9, [rbp - 0x78]
mov r8, rdi
mov edx, ebx
mov rcx, qword [r10 + 0x20]
call fcn.140027cd0
mov dword [rsp + 0x60], eax
mov r10, qword [rsi + 0x20]
mov rcx, qword [rbp - 0x78]
cmp rcx, r10
je 0x140028960
mov ebx, dword [rbp - 0x58]
movzx edi, byte [rbp - 0x60]
jmp 0x1400289ac
lea r9, [rbp - 0x78]
mov r8, qword [rbp + 0xb30]
mov edx, 3
mov rcx, r10
call fcn.140027cd0
mov dword [rsp + 0x60], eax
mov rcx, qword [rbp - 0x78]
mov rsi, qword [rsi + 0x28]
mov qword [rsp + 0x68], rsi
cmp bl, 0x6f
jne 0x140028a19
mov rbx, qword [rsp + 0x78]
mov byte [rbx + 0x148], dil
xor dl, dl
mov rdi, rsi
cmp byte [rsi], 0x70
jne 0x1400289e9
mov dl, 1
cmp qword [rbx + 0x138], 0
jne 0x1400288c8
mov rdi, qword [rsi + 0x28]
mov qword [rsp + 0x68], rdi
cmp byte [rdi], 0x71
je 0x140028a2b
test dl, dl
jne 0x140028a6b
cmp qword [rbx + 0x138], 0
je 0x140028a6b
lea rcx, [rbx + 0x138]
call fcn.1400319a0
mov esi, 1
mov eax, esi
mov dword [rsp + 0x60], eax
mov rcx, qword [rbp - 0x78]
jmp 0x140028a70
mov rdi, rsi
cmp bl, 0x70
jne 0x140028a6b
cmp byte [rsi], 0x71
jne 0x140028a6b
mov rbx, qword [rsp + 0x78]
cmp eax, 1
jne 0x140028a39
test rcx, rcx
je 0x1400288c8
lea r9, [rbp + 0x10]
xor r8d, r8d
lea edx, [r8 + 3]
mov rcx, rdi
call fcn.140027cd0
cmp qword [rbp + 0x10], 0
jne 0x14002c443
add eax, 0xfffffffb
cmp eax, 2
jbe 0x14002c443
mov eax, dword [rsp + 0x60]
mov rcx, qword [rbp - 0x78]
mov esi, 1
cmp dword [rbp + 0xb28], 3
je 0x14002c465
cmp eax, 1
jne 0x14002c465
test rcx, rcx
je 0x14002c372
jmp 0x14002c360
cmp qword [rdi + 0x10], 1
jne 0x140028aa9
mov rdi, qword [rdi + 0x28]
mov qword [rsp + 0x68], rdi
jmp 0x14002c372
lea r9, [rbp - 0x78]
mov r8, qword [rbp + 0xb30]
mov edx, 2
mov rcx, qword [rdi + 0x20]
call fcn.140027cd0
mov dword [rsp + 0x60], eax
mov rcx, qword [rbp - 0x78]
cmp rcx, rdi
je 0x14002c372
cmp dword [rbp + 0xb28], 3
je 0x14002c465
cmp eax, 1
jne 0x14002c465
test rcx, rcx
je 0x140028a9b
mov rax, qword [rcx + 0x30]
cmp qword [rdi + 0x30], rax
jmp 0x14002c368
inc rdx
mov qword [0x1400f6560], rdx
mov rbx, qword [0x1400f5760]
mov qword [rbp - 0x80], rbx
mov rsi, qword [0x1400edaa8]
movzx r10d, byte [rdi]
lea eax, [r10 - 1]
cmp eax, 0xdf
ja case.0x140028b37.8
cdqe
mov ecx, dword [r8 + rax*4 + 0x2c87c]
add rcx, r8
jmp rcx
mov rcx, rdi
call fcn.1400402d0
jmp 0x14002c330
mov r10, qword [0x1400f5818]
cmp byte [rdi + 1], 1
jbe 0x140028bff
mov rax, qword [rdi + 8]
cmp byte [rax + 0x21], 0
je 0x140028b71
mov esi, 1
mov edi, esi
mov dword [rsp + 0x60], esi
jmp 0x14002c343
mov rdx, qword [rax + 0x38]
test rdx, rdx
je 0x140028b98
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
mov rdx, qword [rdx]
mov rcx, rbx
call fcn.140001460
mov esi, 1
mov edi, esi
mov dword [rsp + 0x60], esi
jmp 0x14002c343
mov rdx, qword [0x1400f5768]
test rdx, rdx
je 0x140028bff
cmp word [r10], 0
jne 0x140028bff
movzx eax, byte [rdx + 0x23]
test al, al
jne 0x140028bbb
mov rax, qword [rdx + 0x10]
movzx eax, byte [rax + 0x23]
movzx ecx, al
sub ecx, 1
je 0x140028bf2
cmp ecx, 2
jne 0x140028bff
movzx eax, byte [rbx + 0x23]
cmp al, cl
jne 0x140028bd8
lea edi, [rcx - 1]
jmp 0x14002c332
test al, al
jne 0x140028be0
mov rbx, qword [rbx + 0x10]
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.14007cf50
jmp 0x14002c330
mov rcx, rbx
call fcn.14007ccf0
jmp 0x14002c330
mov byte [rsp + 0x20], 1
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rdx, r10
mov rcx, rbx
call fcn.14007d4e0
jmp 0x14002c330
mov rax, qword [rdi + 8]
cmp qword [rax + 0x38], 0
je 0x140028c3c
cmp byte [rax + 0x21], 0
jne 0x140028c3c
mov ebx, 1
mov dword [rbp - 0x58], ebx
mov edi, ebx
xor eax, eax
mov ebx, eax
jmp 0x140028c9c
xor edx, edx
mov dword [rbp - 0x58], edx
mov rcx, qword [0x1400f5818]
mov rbx, qword [0x1400f5768]
test rbx, rbx
je 0x140028c81
cmp word [rcx], dx
jne 0x140028c81
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x140028c69
mov rax, qword [rbx + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
jne 0x140028c81
test rbx, rbx
je 0x140028c84
mov edx, 1
mov rcx, rbx
call fcn.140014360
jmp 0x140028c9a
mov rbx, rdx
mov eax, 1
mov dword [rsp + 0x20], eax
mov r9d, eax
xor r8d, r8d
mov edx, eax
call fcn.140079dc0
mov edi, eax
mov edx, 1
mov rcx, qword [rbp - 0x80]
call fcn.140014360
mov esi, eax
mov rax, qword [0x1400f5820]
movzx ecx, word [rax]
test cx, cx
je 0x140028e33
call fcn.14000a640
movzx edx, ax
lea rcx, [0x1400d5ed0]
call fcn.1400977e8
test rax, rax
je 0x140028e33
test edi, edi
jne 0x140028cf0
mov esi, 1
mov edi, esi
mov dword [rsp + 0x60], esi
jmp 0x14002c343
cmp dword [rbp - 0x58], 0
je 0x140028d0d
mov rcx, qword [rsp + 0x68]
mov rax, qword [rcx + 8]
mov rcx, qword [rax + 0x38]
xorps xmm6, xmm6
cvtsi2sd xmm6, qword [rcx]
jmp 0x140028d2d
test rbx, rbx
je 0x140028d1e
xor edx, edx
mov rcx, rbx
call fcn.1400144a0
jmp 0x140028d2a
mov rcx, qword [0x1400f5818]
call fcn.1400142a0
movaps xmm6, xmm0
xor r8d, r8d
mov esi, 1
mov edx, esi
mov rbx, qword [rbp - 0x80]
mov rcx, rbx
call fcn.1400015b0
cmp word [rax], 0
je 0x140028d88
xor r8d, r8d
mov edx, esi
mov rcx, rbx
call fcn.1400015b0
mov rcx, rax
lea rdx, [rbp - 0x18]
call fcn.140079880
test eax, eax
jne 0x140028da0
mov byte [rsp + 0x20], sil
xor r9d, r9d
or r8, 0xffffffffffffffff
lea rdx, [0x1400bdf7c]
mov rcx, rbx
call fcn.14007d4e0
mov edi, eax
jmp 0x14002c337
lea rcx, [rbp]
call qword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
lea rdx, [rbp - 0x18]
lea rcx, [rbp]
call qword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
mov rax, qword [0x1400f5820]
movzx ecx, word [rax]
call fcn.14000a640
movzx eax, ax
cmp eax, 0x44
je 0x140028de4
cmp eax, 0x48
je 0x140028dda
cmp eax, 0x4d
je 0x140028dd0
cmp eax, 0x53
jne 0x140028dec
mulsd xmm6, qword [0x1400dbef8]
jmp 0x140028dec
mulsd xmm6, qword [0x1400dbf08]
jmp 0x140028dec
mulsd xmm6, qword [0x1400dbf18]
jmp 0x140028dec
mulsd xmm6, qword [0x1400dbf20]
mov rax, qword [rbp - 0x18]
cvttsd2si rcx, xmm6
add rax, rcx
mov dword [rbp - 0x18], eax
shr rax, 0x20
mov dword [rbp - 0x14], eax
xor r8d, r8d
lea rdx, [rbp - 0x18]
lea rcx, [rbp + 0x2c0]
call fcn.140079bc0
mov byte [rsp + 0x20], sil
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rdx, rax
mov rcx, rbx
call fcn.14007d4e0
mov edi, eax
jmp 0x14002c337
cmp edi, 2
je 0x140028ea0
cmp esi, 2
je 0x140028ea0
cmp dword [rbp - 0x58], 0
je 0x140028e55
mov rcx, qword [rsp + 0x68]
mov rax, qword [rcx + 8]
mov rcx, qword [rax + 0x38]
mov rbx, qword [rcx]
jmp 0x140028e75
test rbx, rbx
je 0x140028e66
xor edx, edx
mov rcx, rbx
call fcn.140014400
jmp 0x140028e72
mov rcx, qword [0x1400f5818]
call fcn.140014270
mov rbx, rax
xor edx, edx
mov rcx, qword [rbp - 0x80]
call fcn.140014400
lea rdx, [rbx + rax]
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
mov rcx, qword [rbp - 0x80]
call fcn.140001460
mov esi, 1
mov edi, esi
mov dword [rsp + 0x60], esi
jmp 0x14002c343
cmp dword [rbp - 0x58], 0
je 0x140028ebd
mov rcx, qword [rsp + 0x68]
mov rax, qword [rcx + 8]
mov rcx, qword [rax + 0x38]
xorps xmm6, xmm6
cvtsi2sd xmm6, qword [rcx]
jmp 0x140028edd
test rbx, rbx
je 0x140028ece
xor edx, edx
mov rcx, rbx
call fcn.1400144a0
jmp 0x140028eda
mov rcx, qword [0x1400f5818]
call fcn.1400142a0
movaps xmm6, xmm0
xor edx, edx
mov rcx, qword [rbp - 0x80]
call fcn.1400144a0
addsd xmm0, xmm6
movsd qword [rbp - 0x68], xmm0
mov r8b, 0x28
mov rdx, qword [rbp - 0x68]
jmp 0x140028e87
mov rax, qword [0x1400f5820]
movzx ecx, word [rax]
test cx, cx
je 0x14002903e
call fcn.14000a640
movzx edx, ax
lea rcx, [0x1400d5ed0]
call fcn.1400977e8
test rax, rax
je 0x14002903e
mov rbx, qword [0x1400f5818]
mov rcx, qword [0x1400f5768]
test rcx, rcx
je 0x140028f70
cmp word [rbx], 0
jne 0x140028f70
movzx eax, byte [rcx + 0x23]
test al, al
jne 0x140028f53
mov rax, qword [rcx + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
jne 0x140028f70
test rcx, rcx
je 0x140028f70
xor r8d, r8d
mov esi, 1
mov edx, esi
call fcn.1400015b0
mov rbx, rax
jmp 0x140028f75
mov esi, 1
xor r8d, r8d
mov edx, esi
mov rdi, qword [rbp - 0x80]
mov rcx, rdi
call fcn.1400015b0
mov rdx, rax
lea r8, [rbp - 0x5f]
mov rcx, rbx
call fcn.140079cc0
mov rbx, rax
cmp byte [rbp - 0x5f], 0
je 0x140028fc0
mov byte [rsp + 0x20], 1
xor r9d, r9d
or r8, 0xffffffffffffffff
lea rdx, [0x1400bdf7c]
mov rcx, rdi
call fcn.14007d4e0
mov edi, eax
jmp 0x14002c337
mov rax, qword [0x1400f5820]
movzx ecx, word [rax]
call fcn.14000a640
movzx eax, ax
cmp eax, 0x44
je 0x14002900d
cmp eax, 0x48
je 0x140028ff7
cmp eax, 0x4d
jne 0x14002902b
movabs rax, 0x8888888888888889
imul rbx
add rbx, rdx
sar rbx, 5
jmp 0x140029021
movabs rax, 0x48d159e26af37c05
imul rbx
mov rbx, rdx
sar rbx, 0xa
jmp 0x140029021
movabs rax, 0x1845c8a0ce512957
imul rbx
mov rbx, rdx
sar rbx, 0xd
mov rax, rbx
shr rax, 0x3f
add rbx, rax
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
mov rdx, rbx
mov rcx, rdi
call fcn.140001460
jmp 0x140028b66
mov rax, qword [rdi + 8]
cmp qword [rax + 0x38], 0
je 0x14002905e
cmp byte [rax + 0x21], 0
jne 0x14002905e
mov ebx, 1
mov esi, ebx
mov edi, ebx
xor eax, eax
mov ebx, eax
jmp 0x1400290bd
xor edx, edx
mov esi, edx
mov rcx, qword [0x1400f5818]
mov rbx, qword [0x1400f5768]
test rbx, rbx
je 0x1400290a2
cmp word [rcx], dx
jne 0x1400290a2
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x14002908a
mov rax, qword [rbx + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
jne 0x1400290a2
test rbx, rbx
je 0x1400290a5
mov edx, 1
mov rcx, rbx
call fcn.140014360
jmp 0x1400290bb
mov rbx, rdx
mov eax, 1
mov dword [rsp + 0x20], eax
mov r9d, eax
xor r8d, r8d
mov edx, eax
call fcn.140079dc0
mov edi, eax
mov edx, 1
mov rcx, qword [rbp - 0x80]
call fcn.140014360
cmp edi, 2
je 0x140029121
cmp eax, 2
je 0x140029121
test esi, esi
je 0x1400290eb
mov rcx, qword [rsp + 0x68]
mov rax, qword [rcx + 8]
mov rcx, qword [rax + 0x38]
mov rbx, qword [rcx]
jmp 0x14002910b
test rbx, rbx
je 0x1400290fc
xor edx, edx
mov rcx, rbx
call fcn.140014400
jmp 0x140029108
mov rcx, qword [0x1400f5818]
call fcn.140014270
mov rbx, rax
xor edx, edx
mov rcx, qword [rbp - 0x80]
call fcn.140014400
sub rax, rbx
mov rdx, rax
jmp 0x140028e84
test esi, esi
je 0x14002913c
mov rcx, qword [rsp + 0x68]
mov rax, qword [rcx + 8]
mov rcx, qword [rax + 0x38]
xorps xmm6, xmm6
cvtsi2sd xmm6, qword [rcx]
jmp 0x14002915c
test rbx, rbx
je 0x14002914d
xor edx, edx
mov rcx, rbx
call fcn.1400144a0
jmp 0x140029159
mov rcx, qword [0x1400f5818]
call fcn.1400142a0
movaps xmm6, xmm0
xor edx, edx
mov rcx, qword [rbp - 0x80]
call fcn.1400144a0
subsd xmm0, xmm6
movsd qword [rbp - 0x68], xmm0
mov r8b, 0x28
mov rdx, qword [rbp - 0x68]
jmp 0x140028e87
mov rax, qword [rdi + 8]
cmp qword [rax + 0x38], 0
je 0x14002919c
cmp byte [rax + 0x21], 0
jne 0x14002919c
mov ebx, 1
mov esi, ebx
mov edi, ebx
xor eax, eax
mov ebx, eax
jmp 0x1400291fb
xor edx, edx
mov esi, edx
mov rcx, qword [0x1400f5818]
mov rbx, qword [0x1400f5768]
test rbx, rbx
je 0x1400291e0
cmp word [rcx], dx
jne 0x1400291e0
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x1400291c8
mov rax, qword [rbx + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
jne 0x1400291e0
test rbx, rbx
je 0x1400291e3
mov edx, 1
mov rcx, rbx
call fcn.140014360
jmp 0x1400291f9
mov rbx, rdx
mov eax, 1
mov dword [rsp + 0x20], eax
mov r9d, eax
xor r8d, r8d
mov edx, eax
call fcn.140079dc0
mov edi, eax
mov edx, 1
mov rcx, qword [rbp - 0x80]
call fcn.140014360
cmp edi, 2
je 0x140029260
cmp eax, 2
je 0x140029260
test esi, esi
je 0x140029229
mov rcx, qword [rsp + 0x68]
mov rax, qword [rcx + 8]
mov rcx, qword [rax + 0x38]
mov rbx, qword [rcx]
jmp 0x140029249
test rbx, rbx
je 0x14002923a
xor edx, edx
mov rcx, rbx
call fcn.140014400
jmp 0x140029246
mov rcx, qword [0x1400f5818]
call fcn.140014270
mov rbx, rax
xor edx, edx
mov rcx, qword [rbp - 0x80]
call fcn.140014400
imul rax, rbx
mov rdx, rax
jmp 0x140028e84
test esi, esi
je 0x14002927b
mov rcx, qword [rsp + 0x68]
mov rax, qword [rcx + 8]
mov rcx, qword [rax + 0x38]
xorps xmm6, xmm6
cvtsi2sd xmm6, qword [rcx]
jmp 0x14002929b
test rbx, rbx
je 0x14002928c
xor edx, edx
mov rcx, rbx
call fcn.1400144a0
jmp 0x140029298
mov rcx, qword [0x1400f5818]
call fcn.1400142a0
movaps xmm6, xmm0
xor edx, edx
mov rcx, qword [rbp - 0x80]
call fcn.1400144a0
mulsd xmm0, xmm6
movsd qword [rbp - 0x68], xmm0
mov r8b, 0x28
mov rdx, qword [rbp - 0x68]
jmp 0x140028e87
mov rax, qword [rdi + 8]
cmp qword [rax + 0x38], 0
je 0x1400292db
cmp byte [rax + 0x21], 0
jne 0x1400292db
mov ebx, 1
mov esi, ebx
mov edi, ebx
xor eax, eax
mov ebx, eax
jmp 0x14002933a
xor edx, edx
mov esi, edx
mov rcx, qword [0x1400f5818]
mov rbx, qword [0x1400f5768]
test rbx, rbx
je 0x14002931f
cmp word [rcx], dx
jne 0x14002931f
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x140029307
mov rax, qword [rbx + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
jne 0x14002931f
test rbx, rbx
je 0x140029322
mov edx, 1
mov rcx, rbx
call fcn.140014360
jmp 0x140029338
mov rbx, rdx
mov eax, 1
mov dword [rsp + 0x20], eax
mov r9d, eax
xor r8d, r8d
mov edx, eax
call fcn.140079dc0
mov edi, eax
mov edx, 1
mov rcx, qword [rbp - 0x80]
call fcn.140014360
cmp edi, 2
je 0x1400293bd
cmp eax, 2
je 0x1400293bd
test esi, esi
je 0x140029368
mov rcx, qword [rsp + 0x68]
mov rax, qword [rcx + 8]
mov rcx, qword [rax + 0x38]
mov rbx, qword [rcx]
jmp 0x140029388
test rbx, rbx
je 0x140029379
xor edx, edx
mov rcx, rbx
call fcn.140014400
jmp 0x140029385
mov rcx, qword [0x1400f5818]
call fcn.140014270
mov rbx, rax
mov rcx, qword [rbp - 0x80]
test rbx, rbx
jne 0x1400293a9
mov byte [rsp + 0x20], 1
xor r9d, r9d
or r8, 0xffffffffffffffff
xor edx, edx
call fcn.14007d4e0
jmp 0x14002c330
xor edx, edx
call fcn.140014400
cqo
idiv rbx
mov rdx, rax
jmp 0x140028e84
test esi, esi
je 0x1400293d8
mov rcx, qword [rsp + 0x68]
mov rax, qword [rcx + 8]
mov rcx, qword [rax + 0x38]
xorps xmm6, xmm6
cvtsi2sd xmm6, qword [rcx]
jmp 0x1400293f8
test rbx, rbx
je 0x1400293e9
xor edx, edx
mov rcx, rbx
call fcn.1400144a0
jmp 0x1400293f5
mov rcx, qword [0x1400f5818]
call fcn.1400142a0
movaps xmm6, xmm0
ucomisd xmm6, xmm8
jp 0x14002941d
jne 0x14002941d
mov byte [rsp + 0x20], 1
xor r9d, r9d
or r8, 0xffffffffffffffff
xor edx, edx
mov rcx, qword [rbp - 0x80]
call fcn.14007d4e0
jmp 0x14002c330
xor edx, edx
mov rcx, qword [rbp - 0x80]
call fcn.1400144a0
divsd xmm0, xmm6
movsd qword [rbp - 0x68], xmm0
mov r8b, 0x28
mov rdx, qword [rbp - 0x68]
jmp 0x140028e87
mov edx, 2
mov rcx, rdi
call fcn.140022370
mov rbx, rax
mov esi, 1
test eax, eax
jns 0x14002945c
xor eax, eax
mov ebx, eax
jmp 0x14002946b
mov edx, esi
mov rcx, rdi
call fcn.1400222c0
cmp ebx, eax
cmovg ebx, eax
movsxd r8, ebx
mov byte [rsp + 0x20], 1
xor r9d, r9d
mov rdx, qword [0x1400f5818]
mov rcx, qword [rbp - 0x80]
call fcn.14007d4e0
mov edi, eax
jmp 0x14002c337
mov edx, 2
mov rcx, rdi
call fcn.140022370
mov rbx, rax
test eax, eax
mov eax, 0
cmovs ebx, eax
mov esi, 1
mov edx, esi
mov rcx, rdi
call fcn.1400222c0
mov rcx, rax
mov eax, ebx
cmp rax, rcx
cmova ebx, ecx
movsxd r8, ebx
sub rcx, r8
mov rax, qword [0x1400f5818]
lea rdx, [rax + rcx*2]
mov byte [rsp + 0x20], sil
xor r9d, r9d
mov rcx, qword [rbp - 0x80]
call fcn.14007d4e0
mov edi, eax
jmp 0x14002c337
cmp byte [rdi + 1], 4
jb 0x14002952e
mov rax, qword [rdi + 8]
mov rcx, qword [rax + 0x68]
cmp word [rcx], 0
je 0x14002952e
mov edx, 3
mov rcx, rdi
call fcn.140022370
mov rdi, rax
cmp eax, 1
jge 0x140029533
mov byte [rsp + 0x20], 1
xor r9d, r9d
or r8, 0xffffffffffffffff
xor edx, edx
mov rcx, rbx
call fcn.14007d4e0
jmp 0x14002c330
mov edi, 0x7fffffff
mov edx, 2
mov rsi, qword [rsp + 0x68]
mov rcx, rsi
call fcn.140022370
mov rbx, rax
mov rax, qword [0x1400f5830]
movzx ecx, word [rax]
call fcn.14000a640
cmp ax, 0x4c
jne 0x14002957b
cmp ebx, 1
jl 0x140029401
mov ecx, 1
mov eax, ecx
sub eax, edi
add ebx, eax
cmp ebx, ecx
jge 0x140029586
dec edi
add edi, ebx
jmp 0x140029580
mov ecx, 1
cmp ebx, 1
cmovl ebx, ecx
mov edx, ecx
mov rcx, rsi
call fcn.1400222c0
mov rdx, rax
mov eax, ebx
mov byte [rsp + 0x20], 1
cmp rdx, rax
jb 0x140029406
lea eax, [rbx - 1]
movsxd rcx, eax
sub rdx, rcx
mov eax, edi
cmp rax, rdx
cmova edi, edx
movsxd rcx, ebx
mov rax, qword [0x1400f5818]
sub rax, 2
lea rdx, [rax + rcx*2]
movsxd r8, edi
xor r9d, r9d
jmp 0x14002940f
mov edx, 2
mov rcx, rdi
call fcn.140022370
mov rbx, rax
test eax, eax
mov eax, 0
cmovs ebx, eax
mov esi, 1
mov edx, esi
mov rcx, rdi
call fcn.1400222c0
mov r8, rax
mov eax, ebx
cmp rax, r8
cmova ebx, r8d
movsxd rcx, ebx
sub r8, rcx
jmp 0x1400294c7
mov edx, 2
mov rcx, rdi
call fcn.140022370
mov rbx, rax
test eax, eax
mov eax, 0
cmovs ebx, eax
mov esi, 1
mov edx, esi
mov rcx, rdi
call fcn.1400222c0
mov r8, rax
mov eax, ebx
cmp rax, r8
cmova ebx, r8d
movsxd rax, ebx
sub r8, rax
mov byte [rsp + 0x20], sil
jmp 0x140029473
mov eax, 1
mov r8d, eax
mov edx, eax
mov rcx, rbx
call fcn.1400015b0
mov rbx, rax
mov rsi, qword [rbp - 0x80]
cmp rax, qword [0x1400f5818]
jne 0x14002968c
movzx eax, byte [rsi + 0x23]
test al, al
jne 0x140029688
mov rax, qword [rsi + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
je 0x1400296f0
mov ebx, 1
mov edx, ebx
mov rcx, rdi
call fcn.1400222c0
mov r8, rax
mov byte [rsp + 0x20], bl
xor r9d, r9d
xor edx, edx
mov rcx, rsi
call fcn.14007d4e0
cmp eax, ebx
jne 0x14002c76d
xor r8d, r8d
mov edx, ebx
mov rcx, rsi
call fcn.1400015b0
mov rbx, rax
mov rcx, qword [0x1400f5818]
mov rdx, rax
sub rdx, rcx
nop dword [rax]
nop dword [rax + rax]
movzx eax, word [rcx]
mov word [rcx + rdx], ax
add rcx, 2
test ax, ax
jne 0x1400296e0
mov rax, qword [0x1400f5820]
movzx ecx, word [rax]
test cx, cx
je 0x140029722
call fcn.14000a640
cmp ax, 0x54
jne 0x140029722
mov rax, qword [0x1400f5820]
cmp word [rax + 2], 0
jne 0x140029722
mov rcx, rbx
call fcn.140013f70
jmp 0x140029738
mov rcx, rbx
cmp byte [rdi], 0x31
jne 0x140029732
call qword [sym.imp.USER32.dll_CharLowerW]
jmp 0x140029738
call qword [sym.imp.USER32.dll_CharUpperW]
xor edx, edx
mov rcx, rsi
call fcn.140014860
jmp 0x14002c330
mov rcx, qword [0x1400f5768]
test rcx, rcx
je 0x140029778
cmp byte [rcx + 0x23], 0
jne 0x140029763
mov rax, qword [rcx + 0x10]
movzx edx, byte [rax + 0x21]
jmp 0x140029767
movzx edx, byte [rcx + 0x21]
test dl, 1
je 0x140029778
call fcn.140014790
mov esi, 1
jmp 0x140029787
mov esi, 1
mov edx, esi
mov rcx, rdi
call fcn.1400222c0
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
mov rdx, rax
mov rcx, rbx
call fcn.140001460
jmp 0x140028b66
mov rbx, qword [0x1400f5828]
mov qword [rbp - 0x68], rbx
mov dword [rbp - 0x28], 0xffffffff
movzx ecx, word [rbx]
test cx, cx
je 0x1400297e9
call fcn.14000a640
movzx edx, ax
lea rcx, [0x1400d5edc]
call fcn.1400977e8
test rax, rax
je 0x1400297e9
lea rcx, [rbx + 2]
cmp word [rcx], 0
je 0x1400297e9
call fcn.14000e350
mov dword [rbp - 0x58], eax
test eax, eax
jle 0x140029915
jmp 0x1400297f0
mov dword [rbp - 0x58], 1
mov rax, qword [0x1400f5820]
mov qword [rbp - 0x40], rax
cmp word [rax], 0
jne 0x14002980a
xor eax, eax
mov ebx, eax
jmp 0x140029919
mov rax, qword [0x1400f5818]
mov qword [rbp - 0x10], rax
mov edx, 4
mov rcx, rdi
call fcn.140022370
mov rbx, rax
test eax, eax
mov eax, 0
cmovs ebx, eax
lea edx, [rax + 1]
mov rcx, rdi
call fcn.1400222c0
mov rdi, rax
cmp ebx, eax
jge 0x140029915
mov rax, qword [rbp - 0x68]
movzx ecx, word [rax]
cmp cx, 0x31
je 0x1400298d5
call fcn.14000a640
cmp ax, 0x52
je 0x1400298d5
mov edx, 2
mov rcx, qword [rsp + 0x68]
call fcn.1400222c0
mov qword [rbp - 0x68], rax
mov edi, 1
movsxd rax, ebx
mov rcx, qword [rbp - 0x10]
lea rcx, [rcx + rax*2]
mov rbx, qword [rbp - 0x40]
mov esi, dword [rbp - 0x58]
nop dword [rax + rax]
mov rax, qword [0x1400edaa8]
movzx edx, byte [rax + 0x12a]
test dl, dl
jne 0x1400298ac
mov rdx, rbx
call fcn.14007a410
jmp 0x1400298c0
cmp dl, 2
mov rdx, rbx
jne 0x1400298bb
call fcn.14007a6b0
jmp 0x1400298c0
call fcn.140097874
test rax, rax
je 0x140029915
cmp edi, esi
je 0x1400298ff
inc edi
mov rcx, qword [rbp - 0x68]
lea rcx, [rax + rcx*2]
jmp 0x140029890
movzx r9d, byte [rsi + 0x12a]
movsxd rax, ebx
sub rdi, rax
mov esi, dword [rbp - 0x58]
mov dword [rsp + 0x20], esi
mov r8, qword [rbp - 0x40]
mov rdx, rdi
mov rbx, qword [rbp - 0x10]
mov rcx, rbx
call fcn.14007a1d0
jmp 0x140029903
mov rbx, qword [rbp - 0x10]
test rax, rax
je 0x140029915
sub rax, rbx
mov rdx, rax
sar rdx, 1
mov qword [rbp - 0x28], rdx
mov rbx, qword [rbp - 0x28]
lea rdx, [0x1400be064]
test ebx, ebx
lea rax, [0x1400d1680]
cmovs rdx, rax
mov byte [rsp + 0x20], 1
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rcx, qword [0x1400f1518]
call fcn.14007d4e0
movsxd rdx, ebx
jmp 0x140028e84
mov rcx, rdi
call fcn.140040750
jmp 0x14002c330
mov r9, qword [0x1400f5828]
mov r8, qword [0x1400f5820]
mov rdx, qword [0x1400f5818]
call fcn.1400357c0
jmp 0x14002c330
mov rax, qword [0x1400f5828]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5820]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.140040970
jmp 0x14002c330
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.140041230
jmp 0x14002c330
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.140041970
jmp 0x14002c330
mov edx, 7
mov rcx, rdi
call fcn.140022370
mov qword [rbp - 0x68], rax
mov edx, 6
mov rcx, rdi
call fcn.140022370
mov qword [rbp - 0x40], rax
mov edx, 5
mov rcx, rdi
call fcn.140022370
mov rsi, rax
mov edx, 4
mov rcx, rdi
call fcn.140022370
mov rdi, rax
mov edx, 3
mov rcx, qword [rsp + 0x68]
call fcn.140022370
mov rbx, rax
mov edx, 2
mov rcx, qword [rsp + 0x68]
call fcn.140022370
mov rdx, rax
mov byte [rsp + 0x40], 0
mov rax, qword [0x1400f5850]
mov qword [rsp + 0x38], rax
mov rax, qword [rbp - 0x68]
mov dword [rsp + 0x30], eax
mov rax, qword [rbp - 0x40]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], esi
mov r9d, edi
mov r8d, ebx
mov rcx, qword [rsp + 0x68]
call fcn.14003c2a0
jmp 0x14002c330
mov edx, 5
mov rcx, rdi
call fcn.140022370
mov rsi, rax
mov edx, 4
mov rcx, rdi
call fcn.140022370
mov rdi, rax
mov edx, 3
mov rcx, qword [rsp + 0x68]
call fcn.140022370
mov rbx, rax
mov edx, 2
mov rcx, qword [rsp + 0x68]
call fcn.140022370
mov rdx, rax
mov rax, qword [0x1400f5840]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], esi
mov r9d, edi
mov r8d, ebx
mov rcx, qword [rsp + 0x68]
call fcn.14003cc70
jmp 0x14002c330
mov edx, 2
mov rcx, rdi
call fcn.140022370
mov rbx, rax
mov esi, 1
mov edx, esi
mov rcx, rdi
call fcn.140022370
mov rdx, rax
mov r9, qword [0x1400f5828]
mov r8d, ebx
mov rcx, rdi
call fcn.140055320
jmp 0x140029486
cmp r10b, 0x42
sete dl
xor r9d, r9d
mov r8d, dword [rsi + 0x10c]
mov rcx, qword [0x1400f5810]
call fcn.14000e7c0
jmp case.0x140028b37.3
mov r8d, 1
cmp dword [rsi + 0x10c], 3
mov eax, 3
cmove r8d, eax
xor r9d, r9d
xor edx, edx
mov rcx, qword [0x1400f5810]
call fcn.14000e7c0
jmp case.0x140028b37.3
xor r9d, r9d
xor edx, edx
lea r8d, [r9 + 2]
mov rcx, qword [0x1400f5810]
call fcn.14000e7c0
jmp case.0x140028b37.3
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x1400f5810]
call fcn.14000e7c0
jmp case.0x140028b37.3
mov rcx, qword [0x1400f5810]
call fcn.1400106b0
jmp 0x14002c330
lea rbx, [0x1400bdf7c]
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x40], rbx
mov rax, qword [0x1400f5840]
mov qword [rsp + 0x38], rax
mov rax, qword [0x1400f5838]
mov qword [rsp + 0x30], rax
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400f5828]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5820]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
movzx ecx, r10b
call fcn.1400109d0
jmp 0x14002c330
mov rax, qword [0x1400f5838]
mov qword [rsp + 0x48], rax
mov rax, qword [0x1400f5828]
mov qword [rsp + 0x40], rax
mov rax, qword [0x1400f5840]
mov qword [rsp + 0x38], rax
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x30], rax
lea rax, [0x1400bdf7c]
mov qword [rsp + 0x28], rax
jmp 0x140029be6
lea rbx, [0x1400bdf7c]
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x40], rbx
mov rax, qword [0x1400f5828]
mov qword [rsp + 0x38], rax
mov rax, qword [0x1400f5820]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
mov r9, qword [0x1400f5818]
mov r8, qword [0x1400f5810]
mov rdx, rbx
jmp 0x140029c00
mov edx, 4
mov rcx, rdi
call fcn.140022370
mov rdx, rax
mov rcx, rdi
call fcn.14003f610
jmp 0x14002c330
cmp r10b, 0x76
sete al
xor ecx, ecx
mov dword [rsp + 0x38], ecx
mov qword [rsp + 0x30], rcx
mov byte [rsp + 0x28], al
mov rax, qword [0x1400f5828]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5820]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
mov rcx, rsi
call fcn.14007e3b0
mov esi, 1
test rax, rax
je 0x140028b66
mov rax, qword [0x1400edaa8]
mov ecx, dword [rax + 0x74]
cmp ecx, 0xffffffff
jle 0x140028b66
mov edx, esi
call fcn.140001800
jmp 0x140028b66
mov r8d, 9
lea rdx, [0x1400d5ee8]
mov rcx, qword [0x1400f5810]
call fcn.14009bc18
mov rdx, qword [0x1400f5828]
mov r8, qword [0x1400f5818]
test eax, eax
jne 0x140029d58
cmp word [r8], ax
jne 0x140029d58
cmp word [rdx], ax
jne 0x140029d58
mov bl, 1
jmp 0x140029d5a
xor bl, bl
mov edi, reloc.OLEAUT32.dll_SafeArrayLock
test bl, bl
mov eax, 0
cmovne edi, eax
mov rcx, qword [rsp + 0x68]
movzx eax, byte [rcx]
add al, 0x7e
cmp al, 1
mov rax, qword [0x1400f5820]
ja 0x140029db9
cmp word [rax], 0
je 0x140029db2
mov edx, 2
call fcn.140022480
mulsd xmm0, qword [0x1400dbec0]
cvttsd2si edi, xmm0
test edi, edi
mov eax, 0x1f4
cmove edi, eax
mov rdx, qword [0x1400f5828]
mov r8, qword [0x1400f5818]
mov rax, qword [0x1400f5830]
cmp word [rax], 0
jne 0x140029e1f
test bl, bl
je 0x140029e1f
mov rax, qword [0x1400f5810]
lea rdx, [rax + 0x12]
nop
movzx eax, word [rdx]
cmp ax, 0x20
je 0x140029ddf
cmp ax, 9
jne 0x140029de5
add rdx, 2
jmp 0x140029dd0
xor r8d, r8d
lea rcx, [0x1400f59d0]
call fcn.1400250d0
test rax, rax
je 0x140029e11
mov r8d, edi
mov rcx, qword [rsp + 0x68]
movzx edx, byte [rcx]
mov rcx, rax
call fcn.140080830
jmp 0x14002c330
mov rdx, qword [0x1400f5828]
mov r8, qword [0x1400f5818]
mov rax, qword [rsp + 0x68]
movzx ecx, byte [rax]
lea eax, [rcx + 0x7e]
cmp al, 1
jbe 0x140029e56
mov qword [rsp + 0x28], rdx
mov rax, qword [0x1400f5820]
mov qword [rsp + 0x20], rax
mov r9, r8
mov r8, qword [0x1400f5810]
movzx edx, cl
call fcn.140037530
jmp 0x14002c330
cmp cl, 0x83
sete al
mov byte [rsp + 0x30], al
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
mov r9d, edi
mov rdx, qword [0x1400f5810]
mov rcx, rsi
call fcn.14007e7b0
jmp 0x140029cf1
mov rdx, qword [0x1400f5818]
call fcn.14003b9c0
jmp 0x14002c330
mov rdx, qword [0x1400f5818]
mov rcx, qword [0x1400f5810]
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
test eax, eax
sete dl
mov rcx, rdi
call fcn.140030e80
jmp 0x14002c330
lea rax, [rbp + 0x18]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0x3a98
mov esi, 1
mov dword [rsp + 0x20], esi
lea r9, [0x1400d5f00]
xor r8d, r8d
lea edx, [rsi + 0x19]
mov ecx, 0xffff
call qword [sym.imp.USER32.dll_SendMessageTimeoutW]
test rax, rax
sete dl
mov rcx, rdi
call fcn.140030e80
jmp 0x140029486
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.140056e10
jmp 0x14002c330
lea rdx, [0x1400f6578]
mov rcx, qword [0x1400f5810]
call fcn.140077510
lea rdx, [0x1400f6590]
mov rcx, qword [0x1400f5818]
call fcn.140077510
lea rdx, [0x1400f65a8]
mov rcx, qword [0x1400f5820]
call fcn.140077510
jmp case.0x140028b37.3
lea rdx, [0x1400d1478]
mov rcx, qword [0x1400f5820]
call fcn.14007a410
test rax, rax
setne bl
xor edx, edx
mov eax, edx
cmp byte [rdi + 1], 3
cmova rax, qword [0x1400f5778]
test bl, bl
sete cl
mov qword [rsp + 0x48], rax
mov byte [rsp + 0x40], 1
mov byte [rsp + 0x38], bl
mov qword [rsp + 0x30], rdx
mov rax, qword [0x1400f5820]
mov qword [rsp + 0x28], rax
mov byte [rsp + 0x20], cl
mov r9, qword [0x1400f5818]
xor r8d, r8d
mov rdx, qword [0x1400f5810]
lea rcx, [0x1400f59d0]
call fcn.140032270
mov edi, eax
test bl, bl
je 0x14002c332
lea rdx, [0x1400d5f18]
test eax, eax
lea rax, [0x1400be064]
cmovne rdx, rax
mov byte [rsp + 0x20], 1
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rcx, qword [0x1400f1518]
jmp 0x140029413
mov rcx, rdi
call fcn.140037640
jmp 0x14002c330
cmp byte [rdi + 1], 2
jbe 0x14002a06f
mov rax, qword [0x1400f5848]
mov qword [rsp + 0x40], rax
mov rax, qword [0x1400f5840]
mov qword [rsp + 0x38], rax
mov rax, qword [0x1400f5838]
mov qword [rsp + 0x30], rax
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400f5828]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5820]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
call fcn.140037f90
jmp 0x14002c330
lea rbx, [0x1400bdf7c]
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], rbx
mov rax, qword [0x1400f5818]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5810]
mov r8, rbx
mov rdx, rbx
call fcn.140037f90
jmp 0x14002c330
mov rax, qword [0x1400f5860]
mov qword [rsp + 0x58], rax
mov rax, qword [0x1400f5858]
mov qword [rsp + 0x50], rax
mov rax, qword [0x1400f5850]
mov qword [rsp + 0x48], rax
mov rax, qword [0x1400f5848]
mov qword [rsp + 0x40], rax
mov rax, qword [0x1400f5840]
mov qword [rsp + 0x38], rax
mov rax, qword [0x1400f5838]
mov qword [rsp + 0x30], rax
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400f5828]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5820]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.140055820
jmp 0x14002c330
cmp r10b, 0x47
sete al
mov byte [rsp + 0x38], al
mov rax, qword [0x1400f5838]
mov qword [rsp + 0x30], rax
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400f5828]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5820]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.140038100
jmp 0x14002c330
xor r8d, r8d
mov dl, 1
mov rcx, qword [0x1400f5828]
call fcn.14000e380
mov ebx, eax
test al, al
jne 0x14002a1b5
mov r9, qword [0x1400f5828]
xor r8d, r8d
lea rdx, [0x1400d3b78]
mov rcx, rdi
call fcn.1400310e0
jmp 0x14002c330
mov rax, qword [0x1400f5830]
cmp word [rax], 0
je 0x14002a1d9
mov edx, 4
mov rcx, rdi
call fcn.140022370
mov rcx, rax
mov esi, 1
jmp 0x14002a1e0
mov esi, 1
mov ecx, esi
mov rax, qword [0x1400f5848]
mov qword [rsp + 0x40], rax
mov rax, qword [0x1400f5840]
mov qword [rsp + 0x38], rax
mov rax, qword [0x1400f5820]
mov qword [rsp + 0x30], rax
mov rax, qword [0x1400f5818]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400f5810]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5838]
mov r8d, ecx
movzx edx, bl
mov rcx, rdi
call fcn.1400381c0
jmp 0x140029486
mov rax, qword [0x1400f5850]
mov qword [rsp + 0x48], rax
mov rax, qword [0x1400f5848]
mov qword [rsp + 0x40], rax
mov rax, qword [0x1400f5840]
mov qword [rsp + 0x38], rax
mov rax, qword [0x1400f5838]
mov qword [rsp + 0x30], rax
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400f5828]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5820]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.1400387e0
jmp 0x14002c330
mov rax, qword [0x1400f5850]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400f5848]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5840]
mov r8, qword [0x1400f5838]
mov rdx, qword [0x1400f5830]
mov rcx, rdi
call fcn.140038a10
jmp 0x14002c330
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5828]
mov r8, qword [0x1400f5820]
mov rdx, qword [0x1400f5818]
mov rcx, rdi
call fcn.140038bd0
jmp 0x14002c330
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400f5828]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5820]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.140038de0
jmp 0x14002c330
mov rax, qword [0x1400f5838]
mov qword [rsp + 0x30], rax
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400f5828]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5820]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.140038f10
jmp 0x14002c330
mov rax, qword [0x1400f5838]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5828]
mov r8, qword [0x1400f5820]
mov rdx, qword [0x1400f5818]
mov rcx, rdi
call fcn.140039000
jmp 0x14002c330
mov rax, qword [0x1400f5840]
mov qword [rsp + 0x38], rax
mov rax, qword [0x1400f5838]
mov qword [rsp + 0x30], rax
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400f5828]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5820]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.140055b60
jmp 0x14002c330
mov rax, qword [0x1400f5848]
mov qword [rsp + 0x38], rax
mov rax, qword [0x1400f5840]
mov qword [rsp + 0x30], rax
mov rax, qword [0x1400f5838]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5828]
mov r8, qword [0x1400f5820]
mov rdx, qword [0x1400f5818]
mov rcx, rdi
call fcn.1400563d0
jmp 0x14002c330
mov rax, qword [0x1400f5838]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5828]
mov r8, qword [0x1400f5820]
mov rdx, qword [0x1400f5818]
call fcn.1400398e0
jmp 0x14002c330
mov rax, qword [0x1400f5848]
mov qword [rsp + 0x40], rax
mov rax, qword [0x1400f5840]
mov qword [rsp + 0x38], rax
mov rax, qword [0x1400f5838]
mov qword [rsp + 0x30], rax
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400f5828]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5820]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
call fcn.140039980
jmp 0x14002c330
cmp r10b, 0x90
sete dl
mov rcx, rdi
call fcn.140039ae0
jmp 0x14002c330
mov r9, qword [0x1400f5820]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.140039de0
jmp 0x14002c330
mov rax, qword [0x1400f5838]
mov qword [rsp + 0x30], rax
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400f5828]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5820]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.14003a400
jmp 0x14002c330
cmp byte [rdi + 1], 1
jbe 0x14002a59f
mov rax, qword [0x1400f5830]
mov rbx, qword [0x1400f5820]
mov r9, qword [0x1400f5828]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
jmp 0x14002a5b6
mov rbx, qword [0x1400f5810]
lea rax, [0x1400bdf7c]
mov r9, rax
mov r8, rax
mov rdx, rax
mov qword [rsp + 0x20], rax
call fcn.1400471a0
test rax, rax
je case.0x140028b37.3
mov rdx, rbx
mov rcx, rax
call qword [sym.imp.USER32.dll_SetWindowTextW]
jmp case.0x140028b37.3
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5828]
mov r8, qword [0x1400f5820]
mov rdx, qword [0x1400f5818]
call fcn.14003a8f0
jmp 0x14002c330
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5828]
mov r8, qword [0x1400f5820]
mov rdx, qword [0x1400f5818]
call fcn.1400471a0
test rax, rax
jne 0x14002a634
xor edx, edx
jmp 0x14002a659
mov r8d, 0x101
lea rdx, [rbp + 0xb0]
mov rcx, rax
call qword [sym.imp.USER32.dll_GetClassNameW]
test eax, eax
jne 0x14002a652
xor edx, edx
jmp 0x14002a659
lea rdx, [rbp + 0xb0]
mov byte [rsp + 0x20], 1
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rcx, rbx
jmp 0x140029413
mov rax, qword [0x1400f5838]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5828]
mov r8, qword [0x1400f5820]
mov rdx, qword [0x1400f5818]
mov rcx, rdi
call fcn.14003ab70
jmp 0x14002c330
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5828]
mov r8, qword [0x1400f5820]
mov rdx, qword [0x1400f5818]
mov rcx, rdi
call fcn.14003b550
jmp 0x14002c330
mov rax, qword [0x1400f5848]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5840]
mov r8, qword [0x1400f5838]
mov rdx, qword [0x1400f5830]
mov rcx, rdi
call fcn.14003b810
jmp 0x14002c330
mov r8, qword [0x1400f5820]
mov rdx, qword [0x1400f5818]
mov rcx, rdi
call fcn.14003bae0
jmp 0x14002c330
xor edx, edx
lea rcx, [0x1400d2618]
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 esi, 1
jmp 0x140029cff
xor edx, edx
lea rcx, [0x1400d2618]
call qword [sym.imp.USER32.dll_FindWindowW]
mov r8d, OleCreatePictureIndirect
jmp 0x14002a733
mov rax, qword [rdi + 0x10]
test rax, rax
jne 0x14002a7a9
mov rdx, qword [0x1400f5810]
cmp word [rdx], ax
je 0x14002a7a9
lea rcx, [0x1400f59d0]
call fcn.14001b5f0
test rax, rax
jne 0x14002a7a9
mov r9, qword [0x1400f5810]
lea rdx, [0x1400d1688]
xor r8d, r8d
mov rcx, rdi
call fcn.1400310e0
jmp 0x14002c330
mov qword [0x1400f64d8], rax
jmp case.0x140028b37.3
mov r9, qword [rdi + 0x10]
test r9, r9
jne 0x14002a7f2
cmp byte [rdi + 1], 1
jbe 0x14002a7f2
mov rax, qword [0x1400f5768]
test rax, rax
je 0x14002a7f2
cmp byte [rax + 0x23], r9b
jne 0x14002a7dc
mov rcx, qword [rax + 0x10]
jmp 0x14002a7df
mov rcx, rax
test byte [rcx + 0x21], 2
je 0x14002a7f2
cmp byte [rax + 0x23], 0
jne 0x14002a7ef
mov rax, qword [rax + 0x10]
mov r9, qword [rax]
mov r8, qword [0x1400f5820]
mov rdx, qword [0x1400f5818]
mov rcx, qword [0x1400f5810]
call fcn.14000bbf0
jmp 0x14002c330
mov rdi, qword [rdi + 0x10]
test rdi, rdi
jne 0x14002a86d
xor r9d, r9d
mov r8, rbx
mov rdx, qword [0x1400f5810]
lea rcx, [0x1400f59d0]
call fcn.14001b650
mov rdi, rax
test rax, rax
jne 0x14002a86d
mov r9, qword [0x1400f5810]
cmp word [r9], ax
jne 0x14002a854
mov rdi, qword [rsi + 0xe8]
test rdi, rdi
jne 0x14002a86d
xor r8d, r8d
lea rdx, [0x1400d1688]
mov rcx, qword [rsp + 0x68]
call fcn.1400310e0
jmp 0x14002c330
mov r8, qword [0x1400f5818]
cmp word [r8], 0
je 0x14002a906
xor edx, edx
mov rcx, r8
call fcn.140015730
mov ebx, eax
test eax, eax
jne 0x14002a8fd
xor eax, eax
mov dword [rsp + 0x20], eax
mov esi, 1
mov r9d, esi
mov r8d, esi
mov edx, esi
mov rcx, qword [0x1400f5818]
call fcn.140079dc0
test eax, eax
jne 0x14002a8fd
lea rdx, [0x1400be4a0]
mov rcx, qword [0x1400f5818]
call fcn.140099630
test eax, eax
jne 0x14002a8dd
mov rdx, rdi
lea rcx, [0x1400f59d0]
call fcn.14001b500
jmp 0x140028b66
mov r9, qword [0x1400f5818]
xor r8d, r8d
lea rdx, [0x1400d32f8]
mov rcx, qword [rsp + 0x68]
call fcn.1400310e0
jmp 0x140029486
mov r8, qword [0x1400f5818]
jmp 0x14002a90a
xor eax, eax
mov ebx, eax
lea eax, [rbx - 1]
mov r9, qword [0x1400f5820]
cmp eax, 1
ja 0x14002a931
cmp ebx, 1
sete al
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], al
lea r8, [0x1400bdf7c]
jmp 0x14002a94e
cmp word [r8], 0
jne 0x14002a943
cmp word [r9], 0
je 0x14002a943
mov al, 1
jmp 0x14002a945
xor eax, eax
mov byte [rsp + 0x28], al
mov byte [rsp + 0x20], 1
mov rdx, rdi
lea rcx, [0x1400f59d0]
call fcn.14001b2e0
jmp case.0x140028b37.3
mov ebx, reloc.OLEAUT32.dll_SafeArrayGetDim
mov rcx, qword [0x1400f5810]
cmp word [rcx], 0
je 0x14002a999
lea rdx, [0x1400d2224]
call fcn.140099630
test eax, eax
je 0x14002a999
xor edx, edx
mov rcx, rdi
call fcn.140022370
mov rbx, rax
test eax, eax
jne 0x14002a999
xor eax, eax
jmp 0x14002a99e
mov eax, 1
mov byte [rsi + 0x126], al
test al, al
je 0x14002a9c8
mov dword [rsi + 0x110], ebx
mov byte [rsi + 0x124], 0
mov qword [rsi], 0xffffffffffffffff
mov dword [rsi + 0x34], 0xffffffff
jmp case.0x140028b37.3
mov dword [rsi + 0x110], 5
mov byte [rsi + 0x124], 1
jmp case.0x140028b37.3
mov rcx, qword [0x1400f5810]
call fcn.1400156b0
mov ecx, eax
sub ecx, 1
je 0x14002aa7e
sub ecx, 1
je 0x14002aa35
cmp ecx, 1
jne case.0x140028b37.3
mov rax, qword [0x1400f5818]
cmp word [rax], 0
je 0x14002aa28
mov ebx, 1
mov edx, ebx
mov rcx, rdi
call fcn.140022370
test rax, rax
jne 0x14002aa28
mov eax, ebx
jmp 0x14002aa2a
xor eax, eax
mov byte [rsi + 0x125], al
jmp case.0x140028b37.3
mov rax, qword [0x1400f5810]
cmp word [rax], 0
je 0x14002aa55
mov edx, 1
mov rcx, rdi
call fcn.140022370
mov dword [0x1400f656c], eax
mov rax, qword [0x1400f5818]
cmp word [rax], 0
je case.0x140028b37.3
mov edx, 2
mov rcx, rdi
call fcn.140022370
mov dword [0x1400f6568], eax
jmp case.0x140028b37.3
mov edx, 1
mov rcx, rdi
call fcn.140022370
mov dword [rsi + 0x3c], eax
jmp case.0x140028b37.3
mov rbx, qword [rdi + 0x10]
test rbx, rbx
jne 0x14002aabe
mov r8b, 1
mov rdx, qword [0x1400f5810]
lea rcx, [0x1400f59d0]
call fcn.1400250d0
mov rbx, rax
test rax, rax
je 0x14002c76d
mov rdx, qword [0x1400f5828]
cmp word [rdx], 0
je 0x14002aaf5
mov rax, qword [rdi + 0x28]
test rax, rax
jne 0x14002aaf1
lea rcx, [0x1400f59d0]
call fcn.14001b5f0
test rax, rax
jne 0x14002aaf1
mov r9, qword [0x1400f5828]
jmp 0x14002a792
mov qword [rbx + 0x20], rax
mov rax, qword [0x1400f5838]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5830]
mov r8, qword [0x1400f5820]
mov rdx, qword [0x1400f5818]
mov rcx, rbx
call fcn.140080620
jmp 0x14002c330
mov rbx, qword [rdi + 0x10]
test rbx, rbx
jne 0x14002ab4e
xor r8d, r8d
mov rdx, qword [0x1400f5810]
lea rcx, [0x1400f59d0]
call fcn.1400250d0
mov rbx, rax
test rax, rax
je case.0x140028b37.3
mov rcx, qword [0x1400f5818]
cmp word [rcx], 0
je 0x14002ab6f
lea rdx, [0x1400d1b54]
call fcn.140099630
test eax, eax
jne 0x14002ab6f
mov dl, 1
jmp 0x14002ab71
xor edx, edx
mov rcx, rbx
call fcn.140080bf0
jmp case.0x140028b37.3
mov rbx, qword [rdi + 0x10]
test rbx, rbx
jne 0x14002aba9
xor r8d, r8d
mov rdx, qword [0x1400f5810]
lea rcx, [0x1400f59d0]
call fcn.1400250d0
mov rbx, rax
test rax, rax
je case.0x140028b37.3
mov rcx, qword [0x1400f5818]
cmp word [rcx], 0
je 0x14002abf9
lea rdx, [0x1400d3830]
call fcn.140099630
test eax, eax
jne 0x14002abd8
xor r8d, r8d
mov dl, 0x82
mov rcx, rbx
call fcn.140080830
jmp case.0x140028b37.3
mov rcx, qword [0x1400f5818]
cmp word [rcx], 0
je 0x14002abf9
lea rdx, [0x1400d1b54]
call fcn.140099630
test eax, eax
jne 0x14002abf9
mov dl, 1
jmp 0x14002abfb
xor edx, edx
mov rcx, rbx
call fcn.140080900
jmp case.0x140028b37.3
mov r8, qword [0x1400f5820]
mov rdx, qword [0x1400f5818]
call fcn.1400422d0
jmp 0x14002c330
mov esi, 1
mov edx, esi
test rbx, rbx
jne 0x14002ac41
mov rcx, rdi
call fcn.140022370
mov rcx, rax
call fcn.140013bd0
jmp 0x140028b66
xor eax, eax
mov dword [rsp + 0x20], eax
mov r9d, esi
xor r8d, r8d
mov rcx, qword [0x1400f5818]
call fcn.140079dc0
cmp eax, 2
je 0x14002ad45
xor eax, eax
mov dword [rsp + 0x20], eax
mov r9d, esi
xor r8d, r8d
mov edx, esi
mov rcx, qword [0x1400f5820]
call fcn.140079dc0
cmp eax, 2
je 0x14002ad45
mov rax, qword [0x1400f5818]
cmp word [rax], 0
je 0x14002aca1
mov edx, esi
mov rcx, rdi
call fcn.140022370
mov rdi, rax
jmp 0x14002aca5
xor eax, eax
mov edi, eax
mov rax, qword [0x1400f5820]
cmp word [rax], 0
je 0x14002acc6
mov edx, 2
mov rcx, qword [rsp + 0x68]
call fcn.140022370
mov rbx, rax
jmp 0x14002accb
mov ebx, 0x7fffffff
cmp edi, ebx
jle 0x14002acd5
mov eax, edi
mov edi, ebx
mov ebx, eax
sub dword [0x1400ef454], esi
jne 0x14002ace2
call fcn.140013c20
mov rax, qword [0x1400f7220]
mov ecx, dword [rax]
add rax, 4
mov qword [0x1400f7220], rax
mov eax, ecx
shr eax, 0xb
xor ecx, eax
mov eax, ecx
and eax, 0xff3a58ad
shl eax, 7
xor ecx, eax
mov eax, ecx
and eax, 0xffffdf8c
shl eax, 0xf
xor ecx, eax
movsxd r8, ebx
movsxd rax, edi
sub r8, rax
inc r8
mov eax, ecx
shr rax, 0x12
xor rax, rcx
cqo
idiv r8
add edx, edi
movsxd rdx, edx
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
mov rcx, qword [rbp - 0x80]
call fcn.140001460
jmp 0x140028b66
mov rax, qword [0x1400f5818]
cmp word [rax], 0
je 0x14002ad61
mov edx, esi
mov rcx, rdi
call fcn.140022480
movaps xmm7, xmm0
jmp 0x14002ad65
movaps xmm7, xmm8
mov rax, qword [0x1400f5820]
cmp word [rax], 0
je 0x14002ad84
mov edx, 2
mov rcx, rdi
call fcn.140022480
movaps xmm6, xmm0
jmp 0x14002ad8c
movsd xmm6, qword [0x1400dbf10]
comisd xmm7, xmm6
jbe 0x14002ad9b
movaps xmm0, xmm7
movaps xmm7, xmm6
movaps xmm6, xmm0
sub dword [0x1400ef454], esi
jne 0x14002ada8
call fcn.140013c20
mov rax, qword [0x1400f7220]
mov ecx, dword [rax]
add rax, 4
mov qword [0x1400f7220], rax
mov eax, ecx
shr eax, 0xb
xor ecx, eax
mov eax, ecx
and eax, 0xff3a58ad
shl eax, 7
xor ecx, eax
mov eax, ecx
and eax, 0xffffdf8c
shl eax, 0xf
xor ecx, eax
mov eax, ecx
shr eax, 0x12
xor eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [0x1400dbe48]
subsd xmm6, xmm7
mulsd xmm0, xmm6
addsd xmm0, xmm7
movsd qword [rbp - 0x68], xmm0
mov r8b, 0x28
mov rdx, qword [rbp - 0x68]
mov rcx, rbx
call fcn.140001460
jmp 0x140028b66
mov r8b, 1
mov rdx, qword [0x1400f5818]
mov rcx, rdi
call fcn.140042400
jmp 0x14002c330
mov r9, qword [0x1400f5820]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.1400425e0
jmp 0x14002c330
mov r8, qword [0x1400f5820]
mov rdx, qword [0x1400f5818]
mov rcx, rdi
call fcn.1400428b0
jmp 0x14002c330
mov rdx, qword [0x1400f5810]
cmp r10b, 0x9b
mov eax, 0
cmove rdx, rax
mov rax, qword [0x1400f5828]
mov qword [rsp + 0x20], rax
mov r8, qword [0x1400f5818]
mov rcx, rdi
call fcn.140042f50
jmp 0x14002c330
mov rax, qword [0x1400f5818]
mov esi, 1
cmp word [rax], 0
je 0x14002aebf
mov edx, esi
mov rcx, rdi
call fcn.140022370
dec eax
jmp 0x14002aec1
xor eax, eax
movsxd r8, eax
test eax, eax
mov eax, 0
cmovs r8, rax
mov rcx, rdi
cmp byte [rdi], 0x9d
jne 0x14002aee4
mov rdx, r8
call fcn.140044150
jmp 0x140029486
mov rdx, qword [0x1400f5810]
call fcn.140044240
jmp 0x140029486
mov rax, qword [0x1400f5818]
mov esi, 1
cmp word [rax], 0
je 0x14002af16
mov edx, esi
mov rcx, rdi
call fcn.140022370
mov rbx, rax
jmp 0x14002af1b
mov ebx, 0x96
mov rax, qword [0x1400f5810]
cmp word [rax], 0
je 0x14002af34
xor edx, edx
mov rcx, rdi
call fcn.140022370
jmp 0x14002af39
mov eax, 0x20b
mov edx, ebx
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_Beep]
jmp 0x140028b66
mov rcx, qword [0x1400f5818]
cmp word [rcx], 0
je 0x14002af6c
lea rdx, [0x1400d5f28]
call fcn.140099630
test eax, eax
je 0x14002af81
mov rcx, qword [0x1400f5818]
lea rdx, [0x1400d1680]
call fcn.140099630
test eax, eax
je 0x14002af81
xor r8d, r8d
jmp 0x14002af84
mov r8b, 1
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.1400443c0
jmp 0x14002c330
cmp byte [rdi + 1], 2
jae 0x14002afa4
mov r9, qword [rsi + 0x20]
jmp 0x14002afa9
xor eax, eax
mov r9d, eax
mov r8, qword [0x1400f5810]
mov rdx, qword [0x1400f5818]
mov rcx, rdi
call fcn.140045760
jmp 0x14002c330
mov rdx, qword [0x1400f5818]
mov rcx, rdi
call fcn.140044ee0
jmp 0x14002c330
mov r8, qword [0x1400f5820]
mov rdx, qword [0x1400f5818]
mov rcx, rdi
call fcn.1400454e0
jmp 0x14002c330
mov rcx, rdi
call fcn.140045b40
jmp 0x14002c330
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.140057bd0
jmp 0x14002c330
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.140057cc0
jmp 0x14002c330
mov r9, qword [0x1400f5820]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.140045e40
jmp 0x14002c330
lea rbx, [rsi + 0x40]
mov edx, 2
mov rcx, rdi
call fcn.140022370
cmp eax, 1
sete r8b
mov qword [rsp + 0x20], rbx
xor r9d, r9d
mov rdx, qword [0x1400f5818]
mov rcx, qword [0x1400f5810]
call fcn.140058400
test eax, eax
jne 0x14002b0d3
mov byte [rsp + 0x20], 1
xor r9d, r9d
or r8, 0xffffffffffffffff
lea rdx, [0x1400be064]
mov rcx, qword [0x1400f1518]
jmp 0x140029413
lea rbx, [rsi + 0x40]
mov edx, 2
mov rcx, rdi
call fcn.140022370
cmp eax, 1
sete r8b
mov qword [rsp + 0x20], rbx
mov r9b, 1
mov rdx, qword [0x1400f5818]
mov rcx, qword [0x1400f5810]
call fcn.140058400
mov edx, eax
mov rcx, rdi
call fcn.140030f60
jmp 0x14002c330
mov edx, 2
mov rcx, rdi
call fcn.140022370
cmp eax, 1
sete r8b
mov rdx, qword [0x1400f5818]
mov rcx, qword [0x1400f5810]
call fcn.140057f20
test al, al
sete dl
mov rcx, rdi
call fcn.140030e80
jmp 0x14002c330
mov rax, qword [0x1400f5820]
movzx ecx, word [rax]
call fcn.14000a640
cmp ax, 0x52
jne 0x14002b156
mov rdx, qword [0x1400f5818]
mov rcx, qword [0x1400f5810]
call qword [sym.imp.KERNEL32.dll_MoveFileW]
test eax, eax
sete dl
mov rcx, rdi
call fcn.140030e80
jmp 0x14002c330
mov edx, 2
mov rcx, rdi
call fcn.140022370
mov r8, rax
mov rdx, qword [0x1400f5818]
mov rcx, qword [0x1400f5810]
call fcn.140058100
test al, al
sete dl
mov rcx, rdi
call fcn.140030e80
jmp 0x14002c330
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.140044d70
jmp 0x14002c330
mov rax, qword [0x1400f5810]
mov esi, 1
cmp word [rax], 0
je 0x14002b1d4
mov edx, esi
mov rcx, rdi
call fcn.140022370
cmp eax, esi
sete dl
mov rcx, qword [0x1400f5810]
call fcn.140058300
test al, al
je 0x14002b1d4
xor edx, edx
jmp 0x14002b1d6
mov dl, 1
mov rcx, rdi
call fcn.140030e80
jmp 0x140029486
mov rdx, qword [0x1400f5818]
cmp word [rdx], 0
jne 0x14002b206
mov rdx, qword [rsi + 0x10]
test rdx, rdx
je 0x14002b1ff
add rdx, 0x2c
jmp 0x14002b206
lea rdx, [0x1400bdf7c]
mov rcx, rdi
call fcn.140045fc0
jmp 0x14002c330
mov rdi, qword [0x1400f5818]
cmp word [rdi], 0
jne 0x14002b236
mov rdi, qword [rsi + 0x10]
test rdi, rdi
je 0x14002b22f
add rdi, 0x2c
jmp 0x14002b236
lea rdi, [0x1400bdf7c]
mov edx, 3
mov rcx, qword [rsp + 0x68]
call fcn.140022370
cmp eax, 1
sete bl
mov rcx, qword [0x1400f5820]
call fcn.140015ab0
mov r9d, eax
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], bl
mov r8, rdi
mov rdx, qword [0x1400f5810]
mov rcx, qword [rsp + 0x68]
call fcn.1400460a0
xor eax, eax
mov edi, eax
cmp qword [rsi + 0x138], rax
sete dil
jmp 0x14002c332
mov rdx, qword [0x1400f5818]
cmp word [rdx], 0
jne 0x14002b2ae
mov rdx, qword [rsi + 0x10]
test rdx, rdx
je 0x14002b2a7
add rdx, 0x2c
jmp 0x14002b2ae
lea rdx, [0x1400bdf7c]
mov rax, qword [0x1400f5820]
movzx r8d, word [rax]
mov rcx, rdi
call fcn.1400467d0
jmp 0x14002c330
mov rdi, qword [0x1400f5818]
cmp word [rdi], 0
jne 0x14002b2e9
mov rdi, qword [rsi + 0x10]
test rdi, rdi
je 0x14002b2e2
add rdi, 0x2c
jmp 0x14002b2e9
lea rdi, [0x1400bdf7c]
mov edx, 4
mov rcx, qword [rsp + 0x68]
call fcn.140022370
cmp eax, 1
sete bl
mov rcx, qword [0x1400f5828]
call fcn.140015ab0
mov byte [rsp + 0x30], 0
mov byte [rsp + 0x28], bl
mov dword [rsp + 0x20], eax
mov rax, qword [0x1400f5820]
movzx r9d, word [rax]
mov r8, rdi
mov rdx, qword [0x1400f5810]
mov rcx, qword [rsp + 0x68]
call fcn.140046920
jmp 0x14002b277
mov rdx, qword [0x1400f5818]
cmp word [rdx], 0
jne 0x14002b35e
mov rdx, qword [rsi + 0x10]
test rdx, rdx
je 0x14002b357
add rdx, 0x2c
jmp 0x14002b35e
lea rdx, [0x1400bdf7c]
mov r8, qword [0x1400f5820]
mov rcx, rdi
call fcn.140046f20
jmp 0x14002c330
mov rdx, qword [0x1400f5818]
cmp word [rdx], 0
jne 0x14002b395
mov rdx, qword [rsi + 0x10]
test rdx, rdx
je 0x14002b38e
add rdx, 0x2c
jmp 0x14002b395
lea rdx, [0x1400bdf7c]
mov rcx, rdi
call fcn.140057d70
jmp 0x14002c330
mov rcx, qword [0x1400f5810]
call fcn.1400445b0
jmp 0x14002b277
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5828]
mov r8, qword [0x1400f5820]
mov rdx, qword [0x1400f5818]
mov rcx, rdi
call fcn.1400446c0
jmp 0x14002c330
mov r9, qword [0x1400f5828]
mov r8, qword [0x1400f5820]
mov rdx, qword [0x1400f5818]
mov rcx, rdi
call fcn.140057270
jmp 0x14002c330
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.1400575e0
jmp 0x14002c330
mov rax, qword [0x1400f5850]
mov qword [rsp + 0x48], rax
mov rax, qword [0x1400f5848]
mov qword [rsp + 0x40], rax
mov rax, qword [0x1400f5840]
mov qword [rsp + 0x38], rax
mov rax, qword [0x1400f5838]
mov qword [rsp + 0x30], rax
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400f5828]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5820]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.1400579a0
jmp 0x14002c330
xor edx, edx
lea ecx, [rdx + 4]
call fcn.14003e760
jmp 0x14002c330
mov edx, 7
mov rcx, qword [0x1400f5810]
call fcn.140015730
mov ecx, eax
cmp eax, 7
jne 0x14002b4bb
xor edx, edx
mov esi, 1
mov ecx, esi
call fcn.14003e760
jmp 0x140029486
cmp byte [rsi + 0x131], 0
je 0x14002b4f0
mov eax, dword [0x1400f4498]
test eax, eax
jle 0x14002b4d2
dec eax
jmp 0x14002b4d7
mov eax, 0x18f
mov dword [0x1400f4498], eax
cdqe
xor edx, edx
lea r11, [0x140000000]
mov qword [r11 + rax*8 + 0xf4ae0], rdx
cmp ecx, 1
sete al
mov byte [rsi + 0x131], al
jmp case.0x140028b37.3
xor edx, edx
lea ecx, [rdx + 2]
call fcn.14003e760
jmp 0x14002c330
xor edx, edx
lea ecx, [rdx + 3]
call fcn.14003e760
jmp 0x14002c330
mov rcx, qword [0x1400edaa8]
add rcx, 0x68
call fcn.140060680
xor esi, esi
test rax, rax
je 0x14002b547
mov rax, qword [0x1400edaa8]
mov rcx, qword [rax + 0x68]
mov rbx, qword [rcx + 8]
jmp 0x14002b54a
mov rbx, rsi
movzx eax, byte [rdi + 1]
test al, al
jne 0x14002b567
movaps xmm3, xmm8
xor r8d, r8d
mov edx, 0x10000
lea rcx, [0x1400d5f38]
jmp 0x14002b5ae
cmp al, 1
jne 0x14002b580
movaps xmm3, xmm8
xor r8d, r8d
mov edx, 0x10000
mov rcx, qword [0x1400f5810]
jmp 0x14002b5ae
mov edx, 3
mov rcx, rdi
call fcn.140022480
movaps xmm6, xmm0
xor edx, edx
mov rcx, rdi
call fcn.140022370
mov rdx, rax
movaps xmm3, xmm6
mov r8, qword [0x1400f5818]
mov rcx, qword [0x1400f5820]
mov qword [rsp + 0x20], rbx
call fcn.14007f600
mov ebx, eax
test eax, eax
jne 0x14002b5de
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x59e
jne 0x14002b5de
mov r9, qword [0x1400f5810]
lea rdx, [0x1400d3178]
jmp 0x14002a799
mov edi, esi
test ebx, ebx
setne dil
jmp 0x14002c332
mov rax, qword [0x1400f5848]
cmp word [rax], 0
je 0x14002b60b
mov edx, 7
mov rcx, rdi
call fcn.140022370
mov qword [rbp - 8], rax
jmp 0x14002b612
mov dword [rbp - 8], 0x80000000
mov rax, qword [0x1400f5840]
cmp word [rax], 0
je 0x14002b631
mov edx, 6
mov rcx, rdi
call fcn.140022370
mov rsi, rax
jmp 0x14002b636
mov esi, 0x80000000
mov rax, qword [0x1400f5838]
cmp word [rax], 0
je 0x14002b655
mov edx, 5
mov rcx, rdi
call fcn.140022370
mov rdi, rax
jmp 0x14002b65a
mov edi, 0x80000000
mov rax, qword [0x1400f5830]
cmp word [rax], 0
je 0x14002b67b
mov edx, 4
mov rcx, qword [rsp + 0x68]
call fcn.140022370
mov rbx, rax
jmp 0x14002b680
mov ebx, 0x80000000
mov edx, 9
mov rcx, qword [rsp + 0x68]
call fcn.140022480
movaps xmm6, xmm0
mov rax, qword [0x1400f5828]
movzx ecx, word [rax]
call fcn.14000a640
cmp ax, 0x48
sete r9b
mov rax, qword [0x1400f5860]
mov qword [rsp + 0x48], rax
movsd qword [rsp + 0x40], xmm6
mov rax, qword [rbp - 8]
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], ebx
mov r8, qword [0x1400f5820]
mov rdx, qword [0x1400f5818]
mov rcx, qword [rbp - 0x80]
call fcn.14003e9e0
jmp 0x14002c330
mov rax, qword [0x1400f5818]
mov esi, 1
cmp word [rax], 0
je 0x14002b70c
mov edx, esi
mov rcx, rdi
call fcn.140022370
mov rbx, rax
jmp 0x14002b710
xor eax, eax
mov ebx, eax
mov rax, qword [0x1400f5810]
cmp word [rax], 0
je 0x14002b72c
xor edx, edx
mov rcx, rdi
call fcn.140022370
mov rcx, rax
jmp 0x14002b731
mov ecx, 0xc8
mov rax, qword [0x1400f5828]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5820]
mov r8d, ebx
mov edx, ecx
call fcn.140055500
jmp 0x140029486
mov rcx, qword [0x1400f2418]
test rcx, rcx
je 0x14002b776
call qword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x14002b776
mov rcx, qword [0x1400f2418]
call qword [sym.imp.USER32.dll_DestroyWindow]
xor ecx, ecx
mov qword [0x1400f2418], rcx
jmp case.0x140028b37.3
mov byte [rsp + 0x38], 0
lea rax, [0x1400bdf7c]
mov qword [rsp + 0x30], rax
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400f5828]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5820]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.140033f10
jmp 0x14002c330
mov byte [rsp + 0x38], 1
mov rax, qword [0x1400f5810]
mov qword [rsp + 0x30], rax
mov rax, qword [0x1400f5838]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5828]
mov r8, qword [0x1400f5820]
mov rdx, qword [0x1400f5818]
mov rcx, rdi
call fcn.140033f10
jmp 0x14002c330
mov rax, qword [0x1400f5828]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5820]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.1400352c0
jmp 0x14002c330
mov rax, qword [0x1400f5828]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5820]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
call fcn.1400356a0
jmp 0x14002c330
mov rcx, rdi
call fcn.140036b60
jmp 0x14002c330
mov rcx, qword [0x1400f5818]
call fcn.140015e00
movzx ebx, ax
mov rcx, qword [0x1400f5810]
call fcn.140015e90
movzx ecx, ax
cmp ecx, 0xffffffff
je case.0x140028b37.3
movzx eax, bx
cmp eax, 0xffffffff
je case.0x140028b37.3
mov eax, 3
shl ax, cl
not ax
and ax, word [rsi + 0x128]
shl bx, cl
or ax, bx
mov word [rsi + 0x128], ax
jmp case.0x140028b37.3
xor edx, edx
mov rcx, rdi
call fcn.140022370
mov byte [rsi + 0x127], al
cmp al, 0x64
jbe case.0x140028b37.3
mov byte [rsi + 0x127], 2
jmp case.0x140028b37.3
mov edx, dword [rsi + 0x10c]
mov rcx, qword [0x1400f5810]
call fcn.1400159e0
mov dword [rsi + 0x10c], eax
jmp case.0x140028b37.3
xor edx, edx
mov rcx, rdi
call fcn.140022370
cmp eax, 0x64
ja case.0x140028b37.3
mov byte [rsi + 0x12e], al
jmp case.0x140028b37.3
lea rdx, [0x1400d22a0]
mov rcx, qword [0x1400f5820]
call fcn.140099630
test eax, eax
mov rax, qword [0x1400f5810]
jne 0x14002b993
cmp word [rax], 0
je 0x14002b96a
xor edx, edx
mov rcx, rdi
call fcn.140022370
mov dword [rsi + 0x80], eax
mov rax, qword [0x1400f5818]
cmp word [rax], 0
je case.0x140028b37.3
mov edx, 1
mov rcx, rdi
call fcn.140022370
mov dword [rsi + 0x88], eax
jmp case.0x140028b37.3
cmp word [rax], 0
je 0x14002b9a6
xor edx, edx
mov rcx, rdi
call fcn.140022370
mov dword [rsi + 0x7c], eax
mov rax, qword [0x1400f5818]
cmp word [rax], 0
je case.0x140028b37.3
mov edx, 1
mov rcx, rdi
call fcn.140022370
mov dword [rsi + 0x84], eax
jmp case.0x140028b37.3
lea rdx, [0x1400d22a0]
mov rcx, qword [0x1400f5818]
call fcn.140099630
xor edx, edx
mov rcx, rdi
test eax, eax
jne 0x14002b9fb
call fcn.140022370
mov dword [rsi + 0x90], eax
jmp case.0x140028b37.3
call fcn.140022370
mov dword [rsi + 0x8c], eax
jmp case.0x140028b37.3
xor edx, edx
mov rcx, rdi
call fcn.140022370
mov dword [rsi + 0x74], eax
jmp case.0x140028b37.3
xor edx, edx
mov rcx, rdi
call fcn.140022370
mov dword [rsi + 0x78], eax
jmp case.0x140028b37.3
lea rdx, [0x1400d5f64]
mov rcx, qword [0x1400f5810]
call fcn.14007a410
xor edx, edx
mov rcx, rdi
test rax, rax
je 0x14002ba60
mov qword [rsi], 0xffffffffffffffff
call fcn.140022370
mov dword [rsi + 0x34], eax
jmp case.0x140028b37.3
mov dword [rsi + 0x34], 0xffffffff
call fcn.140022370
mov qword [rsi], rax
test rax, rax
jne case.0x140028b37.3
mov qword [rsi], 0xa
jmp case.0x140028b37.3
mov edx, 7
mov rcx, qword [0x1400f5810]
call fcn.140015730
cmp eax, 7
je case.0x140028b37.3
cmp eax, 1
sete al
mov byte [rsi + 0x12b], al
jmp case.0x140028b37.3
mov rcx, qword [0x1400f5810]
call fcn.1400152a0
dec eax
cmp eax, 5
ja case.default.0x14002bada
cdqe
lea r11, [0x140000000]
mov ecx, dword [r11 + rax*4 + 0x2cbfc]
add rcx, r11
jmp rcx
mov dword [rsi + 0x30], 1
jmp case.0x140028b37.3
mov eax, 2
mov dword [rsi + 0x30], eax
jmp case.0x140028b37.3
mov dword [rsi + 0x30], 4
jmp case.0x140028b37.3
mov eax, 3
mov dword [rsi + 0x30], eax
jmp case.0x140028b37.3
mov byte [rsi + 0x121], 1
jmp case.0x140028b37.3
mov byte [rsi + 0x121], 0
jmp case.0x140028b37.3
mov r8d, 5
lea rdx, [0x1400d2420]
mov rcx, qword [0x1400f5810]
call fcn.14009bc18
test eax, eax
jne 0x14002bc13
mov ebx, 1
mov edx, ebx
mov rcx, rdi
call fcn.1400222c0
cmp rax, 0x1e
jb 0x14002bb63
mov esi, ebx
jmp 0x140028b66
mov edx, ebx
mov rcx, rdi
call fcn.140022370
mov rdi, rax
mov edx, 0x2e
mov rcx, qword [0x1400f5818]
call fcn.1400977e8
mov rbx, rax
test rax, rax
je 0x14002bb96
lea rcx, [rax + 2]
call fcn.140014270
xor ecx, ecx
jmp 0x14002bb9a
xor ecx, ecx
mov eax, ecx
add rax, 2
add rax, rdi
cmp rax, 0xff
jg case.0x140028b37.3
mov dword [rsp + 0x20], ecx
mov eax, 1
mov r9d, eax
mov r8d, eax
mov edx, eax
mov rcx, qword [0x1400f5818]
call fcn.140079dc0
lea rcx, [0x1400bdf7c]
mov rdx, rcx
test eax, eax
lea rax, [0x1400d5f6c]
cmovne rdx, rax
lea r9, [0x1400d41a4]
test rbx, rbx
cmovne r9, rcx
lea rcx, [rsi + 0x94]
mov qword [rsp + 0x20], rdx
mov r8, qword [0x1400f5818]
lea rdx, [0x1400d5f70]
call fcn.140004900
jmp case.0x140028b37.3
mov r8d, 7
lea rdx, [0x1400d2410]
mov rcx, qword [0x1400f5810]
call fcn.14009bc18
test eax, eax
jne case.0x140028b37.3
mov rcx, qword [0x1400f5818]
movzx eax, word [rcx]
cmp eax, 0x44
je 0x14002bc64
cmp eax, 0x48
je 0x14002bc56
cmp eax, 0x64
je 0x14002bc64
cmp eax, 0x68
jne case.0x140028b37.3
movzx eax, byte [rcx]
mov byte [rsi + 0x12d], al
jmp case.0x140028b37.3
mov byte [rsi + 0x12d], 0x44
jmp case.0x140028b37.3
mov r8, qword [0x1400f5820]
mov rdx, qword [0x1400f5818]
call fcn.14003fa00
jmp 0x14002c330
xor eax, eax
cmp byte [rdi + 1], 3
cmova rax, qword [0x1400f5778]
mov qword [rsp + 0x38], rax
mov rax, qword [0x1400f5838]
mov qword [rsp + 0x30], rax
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400f5828]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5820]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
lea rcx, [0x1400f59d0]
call fcn.14006ef30
jmp 0x14002c330
mov rax, qword [0x1400f5828]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5820]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
lea rcx, [0x1400f59d0]
call fcn.140060700
jmp 0x14002c330
xor eax, eax
cmp byte [rdi + 1], 2
cmova rax, qword [0x1400f5770]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5820]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.1400610a0
jmp 0x14002c330
mov r9, qword [0x1400f5828]
mov r8, qword [0x1400f5820]
mov rdx, qword [0x1400f5818]
mov rcx, rdi
call fcn.140062140
jmp 0x14002c330
mov rcx, qword [0x1400f5810]
call fcn.140015820
mov ecx, eax
test eax, eax
je case.default.0x14002bada
sub ecx, 1
je 0x14002bda7
sub ecx, 1
je 0x14002bd98
sub ecx, 3
je 0x14002bdb4
cmp ecx, 2
jmp 0x14002bdae
cmp byte [0x1400f22c9], 0
je case.0x140028b37.3
jmp 0x14002bdb4
cmp byte [0x1400f22c9], 0
jne case.0x140028b37.3
call fcn.1400309e0
jmp case.0x140028b37.3
mov esi, 1
mov edx, esi
mov rcx, rdi
call fcn.140022370
test eax, eax
setne bl
mov rcx, qword [0x1400f5810]
call fcn.1400157a0
mov edx, eax
movzx r8d, bl
mov rcx, rdi
call fcn.140030a40
jmp 0x140029486
mov edx, 7
mov rcx, qword [0x1400f5810]
call fcn.140015730
cmp eax, 7
je case.0x140028b37.3
cmp eax, 1
sete al
mov byte [rsi + 0x12c], al
jmp case.0x140028b37.3
mov rbx, qword [0x1400f5810]
lea rdx, [0x1400d14b0]
mov rcx, rbx
call fcn.140099630
test eax, eax
jne 0x14002be3b
lea ecx, [rax + 1]
jmp 0x14002be72
lea rdx, [0x1400d14b8]
mov rcx, rbx
call fcn.140099630
test eax, eax
jne 0x14002be54
xor eax, eax
mov ecx, eax
jmp 0x14002be72
lea rdx, [0x1400d2230]
mov rcx, rbx
call fcn.140099630
mov ecx, 4
test eax, eax
mov eax, 2
cmove ecx, eax
movzx eax, cl
cmp cl, 4
mov ecx, 0
cmove eax, ecx
mov byte [rsi + 0x12a], al
jmp case.0x140028b37.3
mov edx, 7
mov rcx, qword [0x1400f5810]
call fcn.140015730
cmp eax, 7
je case.0x140028b37.3
cmp eax, 1
sete al
mov byte [rsi + 0x122], al
jmp case.0x140028b37.3
mov edx, 7
mov rcx, qword [0x1400f5810]
call fcn.140015730
cmp eax, 7
je case.0x140028b37.3
cmp eax, 1
sete al
mov byte [rsi + 0x123], al
jmp case.0x140028b37.3
mov rcx, qword [0x1400f5810]
call fcn.1400158c0
mov edx, eax
dec eax
cmp eax, 0xc
ja case.0x140028b37.3
cdqe
lea r11, [0x140000000]
mov ecx, dword [r11 + rax*4 + 0x2cc14]
add rcx, r11
jmp rcx
mov cl, 1
call fcn.140030b70
jmp case.0x140028b37.3
xor ecx, ecx
call fcn.140030b70
jmp case.0x140028b37.3
mov dword [reloc.WSOCK32.dll_inet_ntoa], edx
jmp case.0x140028b37.3
mov byte [0x1400f154e], 1
or byte [0x1400f22f6], 2
cmp qword [0x1400f1558], 0
jne case.0x140028b37.3
mov rax, qword [0x1400ef488]
movzx edx, word [rax]
call fcn.140008fe0
jmp case.0x140028b37.3
mov byte [0x1400f154e], 0
jmp case.0x140028b37.3
mov r8, qword [0x1400f5810]
lea rdx, [0x1400ef344]
mov cl, 0x90
call fcn.1400470f0
jmp 0x14002c330
mov r8, qword [0x1400f5810]
lea rdx, [0x1400ee35c]
mov cl, reloc.OLEAUT32.dll_SafeArrayLock
call fcn.1400470f0
jmp 0x14002c330
mov r8, qword [0x1400f5810]
lea rdx, [0x1400edabc]
mov cl, 0x91
call fcn.1400470f0
jmp 0x14002c330
mov dl, 1
lea rcx, [0x1400f59d0]
call fcn.140017860
jmp case.0x140028b37.3
xor edx, edx
mov rcx, rdi
call fcn.140022370
mov esi, 1
mov ecx, eax
jmp 0x140029d12
mov rax, qword [0x1400f5830]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5828]
mov r8, qword [0x1400f5820]
mov rdx, qword [0x1400f5818]
call fcn.140076190
jmp 0x14002c330
mov rax, qword [0x1400f5828]
mov qword [rsp + 0x20], rax
mov r9, qword [0x1400f5820]
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.140076420
jmp 0x14002c330
mov r9, qword [0x1400f5820]
cmp byte [rdi + 1], 3
mov eax, 0
cmovb r9, rax
mov r8, qword [0x1400f5818]
mov rdx, qword [0x1400f5810]
mov rcx, rdi
call fcn.1400765b0
jmp 0x14002c330
cmp byte [rdi + 1], 2
jae 0x14002c099
mov rdx, qword [rsi + 0x18]
test rdx, rdx
je 0x14002c099
lea r9, [rdx + 0x810]
lea r8, [rdx + 0x10]
mov rdx, qword [rdx + 8]
mov rcx, rdi
call fcn.140076630
jmp 0x14002c330
lea r9, [rsp + 0x70]
lea r8, [rbp - 0x38]
mov edx, 2
mov rcx, qword [0x1400f5818]
call fcn.140014e70
mov rbx, rax
mov r8, qword [rbp - 0x38]
test r8, r8
jne 0x14002c0d3
mov r8, qword [0x1400f5820]
mov qword [rbp - 0x38], r8
mov r9, qword [0x1400f5828]
jmp 0x14002c0da
mov r9, qword [0x1400f5820]
mov rdx, rax
mov rcx, rdi
call fcn.140076630
mov edi, eax
cmp byte [rsp + 0x70], 0
je 0x14002c332
test rbx, rbx
je 0x14002c332
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x14002c332
cmp byte [rdi + 1], 2
jae 0x14002c14b
mov rdx, qword [rsi + 0x18]
test rdx, rdx
je 0x14002c14b
lea rcx, [rdx + 0x810]
lea r9, [rdx + 0x10]
mov rax, qword [0x1400f5810]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
mov r8, qword [rdx + 8]
mov edx, dword [rdx + 0x1010]
mov rcx, rdi
call fcn.140076a00
jmp 0x14002c330
lea r9, [rsp + 0x70]
lea r8, [rbp - 0x38]
mov edx, 2
mov rcx, qword [0x1400f5818]
call fcn.140014e70
mov rsi, rax
mov rbx, qword [rbp - 0x38]
test rbx, rbx
jne 0x14002c18c
mov rbx, qword [0x1400f5820]
mov qword [rbp - 0x38], rbx
mov rdi, qword [0x1400f5828]
mov rax, qword [0x1400f5830]
jmp 0x14002c19a
mov rdi, qword [0x1400f5820]
mov rax, qword [0x1400f5828]
mov qword [rbp - 0x40], rax
mov rcx, qword [0x1400f5810]
call fcn.140015160
mov edx, eax
mov rax, qword [rbp - 0x40]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
mov r9, rbx
mov r8, rsi
mov rcx, qword [rsp + 0x68]
call fcn.140076a00
mov edi, eax
cmp byte [rsp + 0x70], 0
je 0x14002c332
test rsi, rsi
je 0x14002c332
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x14002c332
cmp byte [rdi + 1], 1
jae 0x14002c26d
mov rdx, qword [rsi + 0x18]
test rdx, rdx
je 0x14002c26d
cmp dword [rdx + 0x1010], 0xfffffffe
jne 0x14002c251
lea rax, [rdx + 0x810]
lea r9, [rdx + 0x10]
mov qword [rsp + 0x20], rax
lea r8, [0x1400d25d8]
mov edx, 0x400
lea rcx, [rbp + 0x2c0]
call fcn.140079fa0
mov rdx, qword [rsi + 0x18]
lea r9, [0x1400bdf7c]
lea r8, [rbp + 0x2c0]
mov rdx, qword [rdx + 8]
mov rcx, rdi
call fcn.140076ec0
jmp 0x14002c330
lea r9, [rdx + 0x810]
lea r8, [rdx + 0x10]
mov rdx, qword [rdx + 8]
mov rcx, rdi
call fcn.140076ec0
jmp 0x14002c330
lea r9, [rsp + 0x70]
lea r8, [rbp - 0x38]
mov edx, 2
mov rcx, qword [0x1400f5810]
call fcn.140014e70
mov rbx, rax
mov r8, qword [rbp - 0x38]
test r8, r8
jne 0x14002c2a7
mov r8, qword [0x1400f5818]
mov qword [rbp - 0x38], r8
mov r9, qword [0x1400f5820]
jmp 0x14002c2ae
mov r9, qword [0x1400f5818]
mov rdx, rax
mov rcx, rdi
call fcn.140076ec0
jmp 0x14002c0e5
mov rcx, qword [0x1400f5810]
call fcn.140015210
cmp eax, 0xffffffff
je case.default.0x14002bada
mov dword [rsi + 0x108], eax
jmp case.0x140028b37.3
mov rcx, qword [0x1400f5810]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp case.0x140028b37.3
xor edx, edx
mov rcx, rdi
call fcn.140022370
mov rcx, rax
call fcn.140058e30
xor ecx, ecx
mov edi, ecx
test al, al
setne dil
jmp 0x14002c332
mov rcx, qword [0x1400f5810]
call fcn.1400160d0
cmp eax, 0xffffffff
je case.default.0x14002bada
mov dword [rsi + 0x134], eax
jmp case.0x140028b37.3
xor eax, eax
mov edi, eax
mov esi, 1
mov dword [rsp + 0x60], edi
test edi, edi
je 0x14002c771
cmp dword [rbp + 0xb28], 3
je 0x14002c771
mov rdi, qword [rsp + 0x68]
mov rdi, qword [rdi + 0x20]
mov qword [rsp + 0x68], rdi
jmp 0x14002c372
mov rax, qword [rdi + 0x30]
cmp qword [rcx + 0x30], rax
jne 0x14002c385
mov rdi, rcx
mov qword [rsp + 0x68], rcx
mov rbx, qword [rsp + 0x78]
test rdi, rdi
je 0x14002c778
jmp 0x140027d50
mov r8, qword [rbp - 0x50]
mov qword [r8], rcx
jmp 0x14002c778
mov r8, qword [rbp - 0x50]
mov qword [r8], rcx
mov eax, edx
jmp 0x14002c77a
cmp ecx, 7
cmove ecx, esi
mov eax, ecx
jmp 0x14002c77a
mov rax, qword [rcx + 0x10]
mov r8, qword [rbp - 0x50]
jmp 0x14002c775
mov eax, dword [rsp + 0x60]
cmp eax, 7
mov ecx, 1
cmove eax, ecx
jmp 0x14002c77a
mov r9, qword [0x1400f5820]
xor r8d, r8d
lea rdx, [0x1400d3b48]
mov rcx, rdi
call fcn.1400310e0
jmp 0x14002c77a
mov rax, qword [rbp - 0x78]
mov r8, qword [rbp - 0x50]
mov qword [r8], rax
mov eax, dword [rsp + 0x60]
jmp 0x14002c77a
mov eax, 1
jmp 0x14002c77a
mov r9, qword [0x1400f5818]
xor r8d, r8d
lea rdx, [0x1400d32f8]
mov rcx, rdi
call fcn.1400310e0
jmp 0x14002c77a
cmp byte [rsi + 0x148], 0
jne 0x14002c43c
lea rcx, [rsi + 0x138]
call fcn.1400319a0
xor eax, eax
jmp 0x14002c77a
lea r9, [0x1400bdf7c]
xor r8d, r8d
lea rdx, [0x1400d58b0]
mov rcx, qword [0x1400f6068]
call fcn.1400310e0
jmp 0x14002c77a
mov r8, qword [rbp - 0x50]
mov qword [r8], rcx
jmp 0x14002c77a
mov rdx, qword [rbp + 0xb30]
test rdx, rdx
je 0x14002c4ba
cmp dword [rdx + 0x10], 0
jne 0x14002c4ba
mov rcx, qword [0x1400f5760]
test rcx, rcx
je 0x14002c4ab
cmp byte [rcx + 0x23], 0
jne 0x14002c49b
mov rax, qword [rcx + 0x10]
jmp 0x14002c49e
mov rax, rcx
test byte [rax + 0x21], 2
je 0x14002c4ab
call fcn.140014570
jmp 0x14002c4ba
xor eax, eax
mov dword [rdx + 0x10], eax
mov rax, qword [0x1400f5810]
mov qword [rdx], rax
cmp dword [rbp + 0xb28], 1
mov eax, 7
cmovne esi, eax
jmp 0x14002c778
mov rax, qword [rdi + 0x28]
test rax, rax
je 0x14002c4f4
mov rax, qword [rax + 0x28]
mov r8, qword [rbp - 0x50]
mov qword [r8], rax
cmp byte [rax], 0x6c
jne 0x14002c778
mov rax, qword [rax + 0x20]
jmp 0x14002c775
mov eax, 5
jmp 0x14002c77a
mov rcx, qword [rdi + 0x28]
test rcx, rcx
je 0x14002c50e
mov r8, qword [rbp - 0x50]
mov qword [r8], rcx
mov eax, 6
jmp 0x14002c77a
cmp byte [rdi + 1], 0
jne 0x14002c53c
lea r9, [0x1400bdf7c]
xor r8d, r8d
lea rdx, [0x1400d5de0]
mov rcx, rdi
call fcn.140030d60
jmp 0x14002c77a
mov rsi, qword [rsp + 0x78]
cmp qword [rsi + 0x138], 0
je 0x14002c557
lea rcx, [rsi + 0x138]
call fcn.1400319a0
mov ecx, SafeArrayAllocDescriptor
call fcn.140095578
mov rbx, rax
mov qword [rbp + 0xb20], rax
test rax, rax
je 0x14002c5bb
mov rcx, qword [0x1400f4490]
test rcx, rcx
jne 0x14002c5d9
mov rax, qword [rdi + 8]
movzx ecx, word [rax + 2]
mov eax, 0xff
cmp cx, ax
jb 0x14002c591
movzx eax, cx
inc eax
movsxd rcx, eax
mov qword [0x1400f4488], rcx
add rcx, rcx
call fcn.1400997a8
mov rcx, rax
mov qword [0x1400f4490], rax
test rax, rax
jne 0x14002c5d9
mov qword [0x1400f4488], rax
lea r9, [0x1400bdf7c]
xor r8d, r8d
lea rdx, [0x1400d1750]
mov rcx, rdi
call fcn.1400310e0
jmp 0x14002c77a
mov qword [rbp + 0xb20], rcx
mov rax, qword [0x1400f4488]
mov qword [rbp - 8], rax
xor eax, eax
mov qword [0x1400f4490], rax
mov qword [0x1400f4488], rax
mov qword [rbp], rcx
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x18], xmm0
mov dword [rbx + 0x10], 0x41
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0x18]
mov qword [rsp + 0x38], rax
lea rax, [rbp - 8]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0xb20]
mov qword [rsp + 0x28], rax
lea rax, [rbp]
mov qword [rsp + 0x20], rax
mov r9, rbx
lea r8, [rsp + 0x60]
xor edx, edx
mov rcx, rdi
call fcn.14005c850
mov rdi, rax
mov rax, qword [rbp + 0xb20]
xor ecx, ecx
cmp rdi, rax
jne 0x14002c663
mov qword [rbx + 0x18], rdi
jmp 0x14002c6ab
mov qword [rbx + 0x18], rcx
test rax, rax
je 0x14002c6ab
mov rcx, qword [0x1400f4490]
test rcx, rcx
je 0x14002c697
call fcn.14009d6d0
mov rax, qword [rbp + 0xb20]
cmp qword [0x1400f4488], 0x400000
jbe 0x14002c697
dec dword [0x1400f4484]
mov qword [0x1400f4490], rax
mov rax, qword [rbp - 8]
mov qword [0x1400f4488], rax
xor ecx, ecx
test rdi, rdi
jne 0x14002c6c4
lea edx, [rdi + 0x20]
mov rcx, rbx
call fcn.140095570
mov eax, dword [rsp + 0x60]
jmp 0x14002c77a
cmp dword [rbx + 0x10], 0x41
jne 0x14002c6d0
mov dword [rbx + 0x10], ecx
mov qword [rbx], rdi
mov rax, qword [rsp + 0x68]
mov rcx, rsi
mov qword [rcx + 0x140], rax
mov qword [rsi + 0x138], rbx
xor eax, eax
jmp 0x14002c77a
mov rax, qword [0x1400ef488]
cmp word [rax], 0
jne 0x14002c720
cmp dword [0x1400f2424], 0
jne 0x14002c720
cmp qword [0x1400f1560], 0
jne 0x14002c720
cmp qword [0x1400f1558], 0
jne 0x14002c720
cmp byte [0x1400f154c], 0
je case.0x1400280c2.109
mov eax, 8
jmp 0x14002c77a
xor edx, edx
mov rcx, rdi
call fcn.140022370
mov r9, rax
xor r8d, r8d
lea edx, [r8 + 9]
lea rcx, [0x1400f59d0]
call fcn.1400178b0
jmp 0x14002c77a
cmp dword [rbp + 0xb28], 2
je 0x14002c778
lea r9, [0x1400bdf7c]
xor r8d, r8d
lea rdx, [0x1400d5e20]
mov rcx, rdi
call fcn.1400310e0
jmp 0x14002c77a
xor eax, eax
mov edi, eax
mov eax, edi
jmp 0x14002c77a
mov qword [r8], rax
mov eax, esi
lea r11, [rsp + 0xbf8]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
mov rsp, r11
pop rdi
pop rsi
pop rbx
pop rbp
ret