Function at 0x140086990
Capabilities:
Check http status code
Encode data using base64
Parse credit card information
Query environment variable

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
mov eax, 0x1bb8
call fcn.1400d23b0
sub rsp, rax
lea rbp, [rsp + 0x40]
mov qword [rbp + 0x98], 0xfffffffffffffffe
movaps xmmword [rbp + 0x1b60], xmm6
movaps xmmword [rbp + 0x1b50], xmm7
movaps xmmword [rbp + 0x1b40], xmm8
movaps xmmword [rbp + 0x1b30], xmm9
movaps xmmword [rbp + 0x1b20], xmm10
movaps xmmword [rbp + 0x1b10], xmm11
movaps xmmword [rbp + 0x1b00], xmm12
movaps xmmword [rbp + 0x1af0], xmm13
movaps xmmword [rbp + 0x1ae0], xmm14
movsxd rdi, edx
mov rdx, rcx
mov r13, qword [rbp + 0x1be0]
mov r13, qword [r13]
mov qword [rbp + 0x48], r13
xor r14d, r14d
mov dword [rbp], r14d
lea rbx, [0x1400e346c]
mov qword [rbp + 0x18], rbx
mov eax, r14d
cmp byte [rcx], 2
cmove rax, qword [0x140119630]
mov qword [rbp + 0x60], rax
mov r8d, r14d
mov dword [rbp + 4], r14d
mov r12d, r14d
mov dword [rbp + 0x14], r14d
mov rcx, rdi
shl rcx, 5
mov rax, qword [rdx + 8]
mov qword [rbp + 0x50], r14
mov rsi, qword [rcx + rax + 0x18]
movabs r9, 0xffffffffffffff0
lea r11, [0x14006a9b0]
lea r10, [0x140000000]
movsd xmm11, qword [0x140101e88]
movsd xmm10, qword [0x140102170]
movsd xmm14, qword [0x140102160]
movsd xmm12, qword [0x140101ec0]
movsd xmm9, qword [0x140101eb8]
xorpd xmm8, xmm8
movsd xmm13, qword [0x140101e80]
mov qword [rbp + 8], rsi
cmp dword [rsi + 0x10], 0x44
je 0x140088d46
mov eax, dword [rsp]
sub rsp, 0x20
lea r15, [rsp + 0x40]
mov qword [rbp + 0x20], r15
mov eax, dword [r15]
mov rax, qword [rsi]
mov qword [r15], rax
mov rax, qword [rsi + 8]
mov qword [r15 + 8], rax
mov rax, qword [rsi + 0x10]
mov qword [r15 + 0x10], rax
mov rax, qword [rsi + 0x18]
mov qword [r15 + 0x18], rax
mov ecx, dword [r15 + 0x10]
cmp ecx, 8
jge 0x1400870c8
cmp ecx, 7
jne 0x140088912
mov rbx, qword [r15 + 8]
test rbx, rbx
je 0x140086e3a
mov r12, qword [r15]
mov rdi, r14
lea rcx, [0x1400e346c]
mov qword [r15], rcx
mov dword [r15 + 0x10], r14d
mov rcx, qword [r12]
cmp rcx, rbx
jne 0x140086b98
movzx eax, word [r12 + 0x12]
cmp word [rbx + rax*2], 0
jne 0x140086b98
cmp byte [r12 + 0x28], 0
je 0x140086b98
mov rax, qword [r12 + 8]
cmp byte [rax + 0x23], 0
jne 0x140086b63
mov rax, qword [rax + 0x10]
test byte [rax + 0x21], 2
je 0x140086b98
mov dword [r15 + 0x10], 6
mov rcx, qword [r12 + 8]
cmp byte [rcx + 0x23], 0
jne 0x140086b80
mov rcx, qword [rcx + 0x10]
mov rcx, qword [rcx]
mov qword [r15], rcx
mov rax, qword [rcx]
call qword [rax + VariantCopy]
lea rbx, [0x1400e346c]
jmp 0x140088912
test rcx, rcx
je 0x140086ce1
cmp rbx, rcx
jae 0x140086bc7
cmp rdi, 0xfd
jae 0x140086bd0
movzx eax, word [rbx]
mov word [rbp + rdi*2 + 0xa0], ax
inc rdi
add rbx, 2
cmp rbx, qword [r12]
jb 0x140086ba6
cmp rdi, 0xfd
jb 0x140086bda
cmp rbx, qword [r12]
jb 0x140086cdb
mov rsi, qword [r12 + 8]
movzx ecx, byte [rsi + 0x23]
test ecx, ecx
je 0x140086c80
dec ecx
je 0x140086c24
dec ecx
je 0x140086c05
dec ecx
je 0x140086c68
mov rdx, qword [rsi + 0x28]
xor ecx, ecx
call qword [rsi + reloc.OLEAUT32.dll_SafeArrayGetElement]
jmp 0x140086c8b
xor edx, edx
lea rcx, [0x14011be28]
call fcn.140005ea0
mov r11, rax
mov eax, 0xffffffff
cmp r11, rax
cmove r11, r14
jmp 0x140086c8e
mov rcx, rsi
call fcn.140001130
cmp dword [0x14011992c], 0
jne 0x140086c6d
cmp qword [rsi + 0x10], 0
jne 0x140086c6d
xor r8d, r8d
lea rdx, [rbp + 0x80]
mov rcx, qword [rsi + 0x28]
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
test eax, eax
je 0x140086c61
mov qword [0x14011cd68], r14
lea r11d, [rax - 1]
jmp 0x140086c8e
mov qword [0x14011cd68], rsi
mov r11, r14
jmp 0x140086c8e
mov r11, qword [rsi + 0x10]
shr r11, 1
jmp 0x140086c8e
xor edx, edx
mov rcx, qword [rsi + 0x10]
call fcn.1400b1930
mov r11, rax
mov eax, 0xfd
sub rax, rdi
cmp r11, rax
ja 0x140086cdb
lea rdx, [rbp + rdi*2 + 0xa0]
mov rcx, qword [r12 + 8]
call fcn.1400b1930
add rdi, rax
movzx eax, word [r12 + 0x12]
lea rbx, [rbx + rax*2]
add r12, 0x18
mov rcx, qword [r12]
test rcx, rcx
jne 0x140086ba1
mov rsi, qword [rbp + 8]
movabs r9, 0xffffffffffffff0
jmp 0x140086ce1
mov rsi, qword [rbp + 8]
jmp 0x140086d2b
movzx eax, word [rbx]
test ax, ax
je 0x140086d10
nop dword [rax]
cmp rdi, 0xfd
jae 0x140086d19
mov word [rbp + rdi*2 + 0xa0], ax
inc rdi
add rbx, 2
movzx eax, word [rbx]
test ax, ax
jne 0x140086cf0
cmp rdi, 0xfd
jb 0x140086d1f
cmp word [rbx], 0
jne 0x140086d2b
test rdi, rdi
jne 0x140086d4e
cmp byte [r12 + 0x10], dil
jne 0x140086d4e
cmp qword [r12], 0
je 0x140086d3d
add r12, 0x18
cmp qword [r12], 0
jne 0x140086d32
cmp byte [r12 + 0x10], 0
jne 0x1400890e5
jmp 0x140086ec1
mov word [rbp + rdi*2 + 0xa0], r14w
cmp byte [r12 + 0x10], 0
je 0x140086dbf
mov dword [r15 + 0x10], r14d
lea rcx, [rbp + 0xa0]
lea rax, [rdi + rdi + 2]
lea rdx, [rax + 0xf]
cmp rdx, rax
ja 0x140086d7b
mov rdx, r9
and rdx, 0xfffffffffffffff0
mov rax, rdx
call fcn.1400d23b0
sub rsp, rdx
lea rdi, [rsp + 0x40]
lea rax, [rbp + 0xa0]
mov rdx, rdi
sub rdx, rax
nop dword [rax]
movzx eax, word [rcx]
mov word [rdx + rcx], ax
add rcx, 2
test ax, ax
jne 0x140086da0
mov qword [r15], rdi
lea rbx, [0x1400e346c]
jmp 0x140088912
cmp word [rbp + 0xa0], 0
je 0x140088f4b
lea rax, [rbp + 0x10]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 3
lea r9, [rbp + 0x7c]
mov r8, rdi
lea rdx, [rbp + 0xa0]
lea rcx, [0x14011b1d0]
call fcn.14002e290
test rax, rax
jne 0x140086e30
mov eax, r14d
cmp byte [rbp + 0x10], 0
setne al
inc eax
mov dword [rsp + 0x20], eax
mov r9d, dword [rbp + 0x7c]
mov r8, rdi
lea rdx, [rbp + 0xa0]
lea rcx, [0x14011b1d0]
call fcn.14002e590
test rax, rax
je 0x140088f4b
mov qword [r15], rax
lea r11, [0x14006a9b0]
mov rdi, qword [r15]
movzx eax, byte [rdi + 0x23]
test al, al
jne 0x140086e4d
mov rax, qword [rdi + 0x10]
movzx eax, byte [rax + 0x23]
movzx ecx, al
dec ecx
je 0x140086ee6
cmp ecx, 3
jne 0x140086f1f
cmp dword [rsi + 0x30], 0x41
jne 0x140086ea2
lea rdx, [rsi + 0x20]
mov rax, qword [rdx]
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x140086ea2
lea rax, [0x140071f40]
cmp qword [rcx + 0x10], rax
jne 0x140086ea2
mov rsi, rdx
mov qword [r15], 1
mov dword [r15 + 0x10], 1
lea rbx, [0x1400e346c]
jmp 0x140088912
mov rax, qword [rdi + 0x18]
cmp rax, r11
jne 0x140086ecd
mov rax, qword [0x1401144a8]
mov rcx, qword [rax + 8]
mov qword [r15], rcx
mov dword [r15 + 0x10], 1
lea rbx, [0x1400e346c]
jmp 0x140088912
lea rcx, [0x14006b370]
cmp rax, rcx
jne 0x140086f1f
mov rax, qword [0x1401144a8]
mov rcx, qword [rax + 0x48]
jmp 0x140086eb6
cmp dword [0x14011992c], 0
jne 0x140087b30
cmp byte [rdi + 0x23], 0
jne 0x140086eff
mov rcx, qword [rdi + 0x10]
jmp 0x140086f02
mov rcx, rdi
test byte [rcx + 0x21], 0xa
jne 0x140087b30
mov eax, r14d
cmp qword [rcx + 0x10], 0
setne al
test eax, eax
jne 0x140087b30
movzx ecx, byte [rdi + 0x23]
test ecx, ecx
je 0x140086fb0
dec ecx
je 0x140086f5e
dec ecx
je 0x140086f42
dec ecx
je 0x140086f9d
mov rdx, qword [rdi + 0x28]
xor ecx, ecx
call qword [rdi + reloc.OLEAUT32.dll_SafeArrayGetElement]
jmp 0x140086fbb
xor edx, edx
lea rcx, [0x14011be28]
call fcn.140005ea0
mov ecx, 0xffffffff
cmp rax, rcx
cmove rax, r14
jmp 0x140086fbb
mov rcx, rdi
call fcn.140001130
cmp dword [0x14011992c], 0
jne 0x140086fa2
cmp qword [rdi + 0x10], 0
jne 0x140086fa2
xor r8d, r8d
lea rdx, [rbp + 0x78]
mov rcx, qword [rdi + 0x28]
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
test eax, eax
je 0x140086f96
mov qword [0x14011cd68], r14
dec eax
jmp 0x140086fbb
mov qword [0x14011cd68], rdi
mov rax, r14
jmp 0x140086fbb
mov rax, qword [rdi + 0x10]
shr rax, 1
jmp 0x140086fbb
xor edx, edx
mov rcx, qword [rdi + 0x10]
call fcn.1400b1930
lea rdx, [rax + 1]
cmp rdx, 1
jne 0x140086ff4
mov rcx, qword [r15]
movzx eax, byte [rcx + 0x23]
test al, al
jne 0x140086fd8
mov rax, qword [rcx + 0x10]
movzx eax, byte [rax + 0x23]
lea rbx, [0x1400e346c]
cmp al, 1
jne 0x140087bc5
mov dword [r15 + 0x10], 4
jmp 0x140088912
mov rcx, r13
mov rax, qword [rbp + 0x1be8]
sub rcx, qword [rax]
sar rcx, 1
mov rax, qword [rbp + 0x1bf0]
mov eax, dword [rax]
sub eax, ecx
cdqe
cmp rdx, rax
ja 0x140087027
mov rdi, r13
lea r13, [r13 + rdx*2]
mov qword [rbp + 0x48], r13
jmp 0x1400870a9
cmp rdx, 0x1001
jae 0x140087071
mov r8, qword [rbp + 0x50]
cmp r8, 0x9c40
jae 0x140087071
lea rax, [rdx + rdx]
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x140087054
movabs rcx, 0xffffffffffffff0
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.1400d23b0
sub rsp, rcx
lea rdi, [rsp + 0x40]
add r8, rdx
mov qword [rbp + 0x50], r8
jmp 0x1400870a9
movsxd r12, dword [rbp]
cmp r12d, 0xc8
je 0x140088c46
lea rcx, [rdx + rdx]
call fcn.1400ca9a4
mov rdi, rax
mov rax, r12
mov qword [rbp + r12*8 + 0x2a0], rdi
test rdi, rdi
je 0x140088c46
inc r12d
mov dword [rbp], r12d
mov rdx, rdi
mov rcx, qword [r15]
call fcn.1400b1930
mov qword [r15], rdi
mov qword [r15 + 8], r14
mov dword [r15 + 0x10], 5
jmp 0x140086ec1
cmp ecx, 0x41
jne 0x140087881
mov rax, qword [r15]
mov r13, qword [rax + 8]
movzx edi, byte [rax + 0x11]
cmp edi, r8d
jg 0x1400890e5
sub r8d, edi
mov dword [rbp + 4], r8d
movsxd rax, r8d
lea rsi, [rbp + rax*8 + 0x8e0]
mov rbx, rsi
test r13, r13
jne 0x14008718f
test r8d, r8d
je 0x1400890e5
dec r8d
mov dword [rbp + 4], r8d
movsxd rax, r8d
lea rsi, [rbp + rax*8 + 0x8e0]
mov rcx, qword [rsi]
call fcn.1400788e0
mov r13, rax
test rax, rax
jne 0x14008717c
test edi, edi
je 0x14008714c
mov r8d, edi
shl r8, 3
lea rcx, [rbx + 8]
mov rdx, rbx
call fcn.1400cb2e0
inc r12d
mov dword [rbp + 0x14], r12d
mov eax, dword [rsp]
sub rsp, 0x20
lea rcx, [rsp + 0x40]
mov eax, dword [rcx]
mov qword [rbx], rcx
mov dword [rcx + 0x10], r14d
mov rax, qword [rbx]
lea rcx, [0x1400e346c]
mov qword [rax], rcx
sub rbx, 8
add edi, 2
lea r13, [0x140116170]
cmp edi, dword [r13 + 0x24]
jge 0x14008718f
mov rax, qword [r15]
cmp byte [rax + 0x10], 2
jne 0x1400890e5
lea rax, [rbp + 0xa0]
mov qword [r15 + 8], rax
mov r12, qword [r15 + 0x18]
mov qword [r15 + 0x18], r14
mov qword [rbp + 0x30], r14
mov qword [rbp + 0x38], r14
mov dword [rbp + 0x40], r14d
mov rax, qword [r15]
cmp byte [rax + 0x10], 2
sete al
mov byte [rsp + 0x30], al
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rbx
mov r9, r15
mov rdi, qword [rbp + 0x1bd0]
mov r8, rdi
lea rdx, [rbp + 0x30]
mov rcx, r13
call fcn.140089870
test al, al
je 0x140088cf4
mov r10, qword [rbp + 0x1bc0]
mov qword [0x14011b870], r10
mov eax, dword [r15 + 0x10]
cmp eax, 1
je 0x14008785e
cmp eax, 2
je 0x14008785e
cmp eax, 6
je 0x14008785e
mov ecx, dword [rbp + 4]
mov rax, qword [rbp + 8]
test ecx, ecx
jne 0x140087238
cmp dword [rax + 0x30], 0x44
jne 0x140087238
lea r15d, [rcx + 1]
cmp byte [r10], 3
je 0x140088c68
mov rbx, qword [rbp + 0x60]
jmp 0x140087269
mov r15d, r14d
cmp dword [rax + 0x30], 0x13
jne 0x140087266
test ecx, ecx
je 0x140087266
mov rax, qword [rsi - 8]
cmp dword [rax + 0x10], 4
jne 0x140087266
mov rbx, qword [rax]
movzx eax, byte [rbx + 0x23]
test al, al
jne 0x140087262
mov rax, qword [rbx + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
je 0x140087269
mov rbx, r14
mov rdi, qword [rbp + 0x20]
mov r14, qword [rdi]
test rbx, rbx
je 0x14008762a
mov rax, qword [0x1401144a8]
cmp qword [rax + 0xd8], r13
jne 0x140087297
movzx eax, byte [rbx + 0x22]
and al, 0x22
cmp al, 2
je 0x14008762a
mov rdx, qword [rdi + 0x18]
cmp rdx, r14
jne 0x1400872b4
mov r8, qword [rdi + 8]
mov rcx, rbx
call fcn.1400b1d40
xor r14d, r14d
jmp 0x1400875e0
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, r14
repne scasw ax, word [rdi]
not rcx
dec rcx
cmp r14, qword [0x14011b0f0]
jne 0x1400872f9
cmp rcx, 0x40
jb 0x1400872f9
mov r8, rcx
mov rdx, r14
mov rcx, rbx
call fcn.1400b1d40
xor r14d, r14d
mov qword [0x14011b0f0], r14
mov qword [0x14011b0f8], r14
jmp 0x1400875e0
movzx edx, byte [rbx + 0x23]
test dl, dl
jne 0x140087321
mov byte [rsp + 0x20], 1
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rdx, r14
mov rcx, qword [rbx + 0x10]
call fcn.1400b14e0
xor r14d, r14d
jmp 0x1400875ad
mov r8b, 1
lea r13, [0x1400e346c]
test r14, r14
jne 0x14008733a
xor r8b, r8b
xor ecx, ecx
mov r14, r13
jmp 0x140087359
cmp qword [rbx + 8], r14
jne 0x140087349
mov rsi, qword [rbx + 0x10]
shr rsi, 1
jmp 0x14008735c
or rcx, 0xffffffffffffffff
mov rdi, r14
repne scasw ax, word [rdi]
not rcx
dec rcx
mov rsi, rcx
lea rax, [rsi + 1]
lea rdi, [rax + rax]
cmp dl, 2
jne 0x14008737c
mov rdx, rsi
mov rcx, r14
call fcn.1400060c0
xor r14d, r14d
jmp 0x1400875ad
cmp rdi, qword [0x140114480]
jbe 0x1400873a9
cmp rdi, qword [rbx + 0x18]
jbe 0x1400873a9
mov r8, r13
lea rdx, [0x1400ffee0]
lea rcx, [0x14011b1d0]
call fcn.140040740
xor r14d, r14d
jmp 0x1400875ad
cmp rax, 2
jae 0x1400873ce
xor r14d, r14d
mov edx, r14d
test r8b, r8b
setne dl
add edx, 3
xor r8d, r8d
mov rcx, rbx
call fcn.1400b1b90
jmp 0x1400875e0
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x1400873e4
and al, 0x3d
mov byte [rbx + 0x21], al
mov rcx, qword [rbx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
and byte [rbx + 0x21], 0x82
mov r8, qword [rbx + 0x18]
cmp rdi, r8
jbe 0x1400875b7
movzx ecx, byte [rbx + 0x20]
movzx eax, cl
cmp cl, 1
jbe 0x140087415
cmp al, 2
je 0x140087464
mov r12, qword [rbp + 0x68]
mov rax, qword [rbp + 0x88]
jmp 0x140087564
cmp rdi, 0x80
ja 0x140087464
cmp rdi, 8
ja 0x14008742c
mov r12d, 8
jmp 0x14008743f
mov r12d, 0x80
cmp rdi, 0x10
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
cmovbe r12d, eax
mov qword [rbp + 0x68], r12
mov rcx, r12
call fcn.1400aa400
mov qword [rbp + 0x88], rax
test rax, rax
je 0x140088c9a
mov byte [rbx + 0x20], 1
jmp 0x140087564
cmp rdi, 0x20
jae 0x140087475
mov r12d, SafeArrayAllocDescriptor
jmp 0x14008751a
cmp rdi, 0x208
jae 0x140087489
mov r12d, 0x208
jmp 0x14008751a
cmp rdi, 0x50000
jae 0x1400874d6
pxor xmm0, xmm0
cvtsi2sd xmm0, rdi
test rdi, rdi
jns 0x1400874a5
addsd xmm0, xmm11
mulsd xmm0, xmm12
xor eax, eax
comisd xmm0, xmm9
jbe 0x1400874cc
subsd xmm0, xmm9
comisd xmm0, xmm9
jae 0x1400874cc
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si r12, xmm0
add r12, rax
jmp 0x14008751a
cmp rdi, 0x320000
jae 0x1400874e8
lea r12, [rdi + 0x8000]
jmp 0x14008751a
cmp rdi, 0xc80000
jae 0x140087513
mov r12, rdi
movabs rax, 0x47ae147ae147ae15
mul rdi
sub r12, rdx
shr r12, 1
add r12, rdx
shr r12, 6
add r12, rdi
jmp 0x14008751a
lea r12, [rdi + 0x20000]
mov rax, qword [0x140114480]
cmp r12, rax
cmova r12, rax
mov qword [rbp + 0x68], r12
cmp cl, 2
jne 0x140087544
test r8, r8
je 0x140087544
mov dil, 1
mov rcx, qword [rbx + 8]
call fcn.1400cb11c
jmp 0x140087547
xor dil, dil
test r12, r12
js 0x140087572
mov rcx, r12
call fcn.1400ca9a4
mov qword [rbp + 0x88], rax
test rax, rax
je 0x140087572
mov byte [rbx + 0x20], 2
mov qword [rbx + 8], rax
mov qword [rbx + 0x18], r12
and byte [rbx + 0x21], 0x7f
jmp 0x1400875b7
xor r14d, r14d
test dil, dil
je 0x14008758b
mov qword [rbx + 0x18], r14
lea rax, [0x14011b184]
mov qword [rbx + 8], rax
jmp 0x140087593
mov rax, qword [rbx + 8]
mov word [rax], r14w
mov qword [rbx + 0x10], r14
mov r8, r13
lea rdx, [0x1400e6570]
lea rcx, [0x14011b1d0]
call fcn.140040740
test eax, eax
je 0x140088c9a
jmp 0x1400875e0
mov rcx, qword [rbx + 8]
cmp rcx, r14
je 0x1400875cc
lea r8, [rsi + rsi]
mov rdx, r14
call fcn.1400cb2e0
lea rcx, [rsi + rsi]
mov rax, qword [rbx + 8]
xor r14d, r14d
mov word [rcx + rax], r14w
mov qword [rbx + 0x10], rcx
test r15d, r15d
jne 0x140088cb9
dec dword [rbp + 4]
mov rsi, qword [rbp + 8]
add rsi, 0x20
mov rax, qword [rsi + 0x18]
mov r15, qword [rbp + 0x20]
mov qword [r15 + 0x18], rax
mov qword [r15], rbx
mov dword [r15 + 0x10], 4
mov rcx, qword [rbp + 0x30]
test rcx, rcx
je 0x140086b8c
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x38]
call fcn.1400b2020
jmp 0x140086ec1
mov edx, 1
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x140087664
movsxd rbx, dword [rbp]
cmp ebx, 0xc8
je 0x140088cbb
cmp rcx, r14
mov r8d, 0
cmove edx, r8d
mov qword [rbp + rbx*8 + 0x2a0], rcx
inc ebx
mov dword [rbp], ebx
jmp 0x140087667
xor r8d, r8d
mov qword [rdi + 0x18], r12
mov rax, r14
cmp word [r14], 0
jne 0x1400876b3
mov r15, rdi
lea rbx, [0x1400e346c]
mov qword [rdi], rbx
mov dword [rdi + 0x10], 5
xor r14d, r14d
mov qword [rdi + 8], r14
mov rcx, qword [rbp + 0x30]
test rcx, rcx
je 0x140087855
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x38]
call fcn.1400b2020
mov rsi, qword [rbp + 8]
jmp 0x140088912
cmp byte [r13 + 0x5d], 0
je 0x1400876cd
mov rsi, qword [rbp + 8]
test edx, edx
je 0x140087711
mov edx, r8d
test r15d, r15d
sete dl
jmp 0x140087711
cmp r14, qword [0x14011b0f0]
je 0x1400876dd
mov edx, 1
jmp 0x14008770d
mov edx, r8d
test r15d, r15d
jne 0x14008770d
mov rsi, qword [rbp + 8]
lea rcx, [rsi + 0x30]
mov eax, dword [rcx]
cmp eax, 0x44
je 0x140087711
cmp eax, 0x41
je 0x140087706
add rcx, 0x20
mov eax, dword [rcx]
cmp eax, 0x44
jne 0x1400876f4
jmp 0x140087711
mov edx, 1
jmp 0x140087711
mov rsi, qword [rbp + 8]
mov r15, rdi
mov qword [rdi + 8], r8
mov dword [rdi + 0x10], 5
test edx, edx
je 0x14008782d
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, r14
repne scasw ax, word [rdi]
not rcx
mov rbx, rcx
mov r12, qword [rbp + 0x48]
mov rdx, r12
mov rax, qword [rbp + 0x1be8]
sub rdx, qword [rax]
sar rdx, 1
mov rax, qword [rbp + 0x1bf0]
mov rax, qword [rax]
sub rax, rdx
cmp rcx, rax
ja 0x140087783
lea rdi, [rcx + rcx]
mov r8, rdi
mov rdx, r14
mov rcx, r12
call fcn.1400cb2e0
mov rax, r12
mov qword [r15], rax
add r12, rdi
mov qword [rbp + 0x48], r12
jmp 0x140087830
cmp rcx, 0x1001
jae 0x1400877e2
mov r12, qword [rbp + 0x50]
cmp r12, 0x9c40
jae 0x1400877e2
lea rax, [rcx + rcx]
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x1400877b0
movabs rcx, 0xffffffffffffff0
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.1400d23b0
sub rsp, rcx
lea rdi, [rsp + 0x40]
lea r8, [rbx + rbx]
mov rdx, r14
mov rcx, rdi
call fcn.1400cb2e0
mov rax, rdi
mov qword [r15], rax
add r12, rbx
mov qword [rbp + 0x50], r12
jmp 0x140087830
movsxd r12, dword [rbp]
cmp r12d, 0xc8
je 0x140088cdb
add rcx, rcx
call fcn.1400ca9a4
mov rdi, rax
mov qword [rbp + r12*8 + 0x2a0], rax
test rax, rax
je 0x140088cd4
lea r8, [rbx + rbx]
mov rdx, r14
mov rcx, rax
call fcn.1400cb2e0
mov rax, rdi
mov qword [r15], rax
inc r12d
mov dword [rbp], r12d
jmp 0x140087830
mov qword [r15], r14
mov rcx, qword [rbp + 0x30]
test rcx, rcx
je 0x14008784b
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x38]
call fcn.1400b2020
jmp 0x140088908
xor r14d, r14d
lea rbx, [0x1400e346c]
mov rsi, qword [rbp + 8]
jmp 0x140088912
mov qword [r15 + 0x18], r12
mov rcx, qword [rbp + 0x30]
test rcx, rcx
je 0x140087878
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x38]
call fcn.1400b2020
mov rsi, qword [rbp + 8]
jmp 0x140086ec1
cmp ecx, 0x20
jne 0x1400878d6
cmp rax, 0
je 0x140088c3d
test r8d, r8d
je 0x140088c3d
dec r8d
mov dword [rbp + 4], r8d
movsxd rax, r8d
mov rcx, qword [rbp + rax*8 + 0x8e0]
mov rax, qword [rcx]
mov qword [r15], rax
mov rax, qword [rcx + 8]
mov qword [r15 + 8], rax
mov rax, qword [rcx + 0x10]
mov qword [r15 + 0x10], rax
mov rax, qword [rcx + 0x18]
mov qword [r15 + 0x18], rax
mov rax, qword [rsi + 0x18]
mov qword [r15 + 0x18], rax
jmp 0x14008891d
test r8d, r8d
je 0x1400890e5
dec r8d
mov dword [rbp + 4], r8d
movsxd rax, r8d
mov r12, qword [rbp + rax*8 + 0x8e0]
mov qword [rbp + 0x90], r12
cmp dword [r12 + 0x10], 8
jge 0x1400890e5
cmp ecx, 0x21
jne 0x14008794f
mov rsi, qword [r15 + 0x18]
test rsi, rsi
je 0x1400890e5
mov rax, qword [rsi + 0x18]
mov qword [r12 + 0x18], rax
mov rax, qword [r12]
mov qword [r15], rax
mov rax, qword [r12 + 8]
mov qword [r15 + 8], rax
mov rax, qword [r12 + 0x10]
mov qword [r15 + 0x10], rax
mov rax, qword [r12 + 0x18]
mov qword [r15 + 0x18], rax
mov dword [r12 + 0x10], 1
jmp 0x140088912
cmp ecx, 0x12
jl 0x140087968
cmp ecx, 0x13
jle 0x140087982
cmp ecx, 0x1f
je 0x140087982
cmp ecx, 0x2d
je 0x140087982
cmp ecx, 0x3c
je 0x140087982
mov rcx, r12
call fcn.1400780c0
mov edi, eax
mov dword [rbp + 0x28], eax
mov r8d, dword [rbp + 4]
lea r10, [0x140000000]
jmp 0x140087985
mov edi, dword [rbp + 0x28]
mov qword [rbp + 0x58], r14
mov ecx, dword [r15 + 0x10]
lea eax, [rcx - 9]
cmp eax, 0x37
ja case.0x1400879af.15
cdqe
movzx eax, byte [r10 + rax + 0x894e8]
mov edx, dword [r10 + rax*4 + 0x894cc]
add rdx, r10
jmp rdx
mov edx, edi
mov rcx, r12
call fcn.140077f60
movsxd rcx, eax
mov qword [r15], rcx
mov dword [r15 + 0x10], 1
jmp 0x14008890f
mov edx, edi
mov rcx, r12
call fcn.140077f60
xor r14d, r14d
mov ecx, r14d
test eax, eax
sete cl
mov qword [r15], rcx
mov dword [r15 + 0x10], 1
jmp 0x140088912
cmp edi, 1
jne 0x140087a0a
mov edx, edi
mov rcx, r12
call fcn.1400783b0
neg rax
mov qword [r15], rax
jmp 0x140087a7f
cmp edi, 2
jne 0x140087d3e
mov ecx, dword [r12 + 0x10]
dec ecx
je 0x140087a6b
dec ecx
je 0x140087a63
sub ecx, edi
je 0x140087a53
dec ecx
je 0x140087a33
dec ecx
jne 0x140087a48
movapd xmm0, xmm8
jmp 0x140087a75
mov rax, qword [r12 + 8]
test rax, rax
je 0x140087a48
pxor xmm0, xmm0
cvtsi2sd xmm0, qword [rax]
jmp 0x140087a75
mov rcx, qword [r12]
call fcn.1400cc778
jmp 0x140087a75
mov edx, 1
mov rcx, qword [r12]
call fcn.14001c2d0
jmp 0x140087a75
movsd xmm0, qword [r12]
jmp 0x140087a75
pxor xmm0, xmm0
cvtsi2sd xmm0, qword [r12]
xorpd xmm0, xmm10
movsd qword [r15], xmm0
mov dword [r15 + 0x10], edi
jmp 0x14008890f
xor r14d, r14d
mov ebx, r14d
cmp ecx, 0x3f
setge bl
mov eax, dword [r12 + 0x10]
cmp eax, 4
jne 0x140087bbe
test edi, edi
je 0x140087b66
cmp ecx, 9
je 0x140087ab9
cmp ecx, 0x3f
je 0x140087ab9
or edi, 0xffffffff
jmp 0x140087abe
mov edi, 1
mov r13d, dword [rbp + 0x28]
mov edx, 1
cmp r13d, edx
jne 0x140087ae2
mov rcx, r12
call fcn.1400783b0
mov qword [r15], rax
movsxd rdx, edi
add rdx, rax
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
jmp 0x140087b08
mov rcx, qword [r12]
call fcn.14001c2d0
movsd qword [r15], xmm0
movd xmm1, edi
cvtdq2pd xmm1, xmm1
addsd xmm1, xmm0
movsd qword [rbp + 0x58], xmm1
mov r8b, 0x28
mov rdx, qword [rbp + 0x58]
mov rcx, qword [r12]
call fcn.140001090
test ebx, ebx
je 0x140087b5d
mov rcx, qword [r12]
movzx eax, byte [rcx + 0x23]
test al, al
jne 0x140087b29
mov rax, qword [rcx + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
jne 0x140087b3d
mov qword [r15], rcx
mov dword [r15 + 0x10], 4
jmp 0x140086ec1
cmp r13d, 1
jne 0x140087b4b
movsxd rax, edi
add qword [r15], rax
jmp 0x140087b5d
movd xmm0, edi
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [r15]
movsd qword [r15], xmm0
mov dword [r15 + 0x10], r13d
jmp 0x140086ec1
cmp eax, 4
jne 0x140087bbe
mov rcx, qword [r12]
cmp byte [rcx + 0x23], r14b
jne 0x140087b7b
mov rax, qword [rcx + 0x10]
jmp 0x140087b7e
mov rax, rcx
test byte [rax + 0x21], 4
je 0x140087b89
call fcn.1400412d0
mov rcx, qword [r12]
call fcn.14001c090
test ebx, ebx
je 0x140087bbe
mov rcx, qword [r12]
movzx eax, byte [rcx + 0x23]
test al, al
jne 0x140087baa
mov rax, qword [rcx + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
jne 0x140087bbe
mov qword [r15], rcx
mov dword [r15 + 0x10], 4
jmp 0x140086ec1
lea rbx, [0x1400e346c]
mov qword [r15], rbx
mov dword [r15 + 0x10], r14d
jmp 0x140088912
mov eax, dword [r12 + 0x10]
cmp eax, 4
jne 0x140087c3a
mov rcx, qword [r12]
cmp byte [rcx + 0x23], 0
jne 0x140087beb
mov rax, qword [rcx + 0x10]
jmp 0x140087bee
mov rax, rcx
test byte [rax + 0x21], 2
je 0x140087c15
mov dword [r15 + 0x10], 1
mov rax, qword [r12]
cmp byte [rax + 0x23], 0
jne 0x140087c0a
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
mov qword [r15], rax
jmp 0x14008890f
call fcn.14001c150
mov dword [r15 + 0x10], 1
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, qword [r12]
call fcn.140001820
mov qword [r15], rax
jmp 0x14008890f
xor r14d, r14d
cmp eax, 6
jne 0x140087bc5
mov dword [r15 + 0x10], 1
mov rax, qword [r12]
mov qword [r15], rax
jmp 0x140088912
xor r14d, r14d
test edi, edi
jne 0x140087c69
mov qword [r15], rbx
mov dword [r15 + 0x10], r14d
jmp 0x140088912
mov edx, r14d
cmp edi, 1
sete dl
mov rcx, r12
call fcn.1400783b0
cmp dword [r15 + 0x10], 0x3b
jne 0x140087c94
mov ecx, 0xffffffff
cmp rax, rcx
ja 0x140087c8f
not eax
jmp 0x140087ca6
not rax
jmp 0x140087ca6
cmp rax, 0x1000
jae 0x140087ca1
mov eax, r14d
jmp 0x140087ca4
movzx eax, byte [rax]
cdqe
mov qword [r15], rax
mov dword [r15 + 0x10], 1
jmp 0x140088912
test r8d, r8d
je 0x1400890e2
dec r8d
mov dword [rbp + 4], r8d
movsxd rax, r8d
mov r13, qword [rbp + rax*8 + 0x8e0]
mov qword [rbp + 0x70], r13
mov eax, dword [r13 + 0x10]
cmp eax, 8
jge 0x1400890e2
cmp ecx, 0x12
jne 0x140087d27
mov rax, qword [r13]
mov qword [r15], rax
mov rax, qword [r13 + 8]
mov qword [r15 + 8], rax
mov rax, qword [r13 + 0x10]
mov qword [r15 + 0x10], rax
mov rax, qword [r13 + 0x18]
mov qword [r15 + 0x18], rax
mov rax, qword [rsi + 0x18]
mov qword [r15 + 0x18], rax
cmp dword [r15 + 0x10], 6
jne 0x14008890f
mov rcx, qword [r15]
mov rax, qword [rcx]
call qword [rax + VariantCopy]
jmp 0x14008890f
cmp ecx, 0x1f
jg 0x140087e55
cmp ecx, 0x13
jl 0x140087e55
cmp eax, 4
je 0x140087d4d
mov qword [r15], rbx
xor r14d, r14d
mov dword [r15 + 0x10], r14d
jmp 0x140088912
add ecx, 0xffffffed
cmp ecx, 0xc
ja case.default.0x140087d67
movsxd rax, ecx
mov ecx, dword [r10 + rax*4 + 0x89520]
add rcx, r10
jmp rcx
mov rdx, r12
mov rcx, qword [r13]
call fcn.1400b07c0
test eax, eax
je 0x140088f48
mov rcx, qword [r13]
movzx eax, byte [rcx + 0x23]
test al, al
jne 0x140087d91
mov rax, qword [rcx + 0x10]
movzx eax, byte [rax + 0x23]
xor r14d, r14d
cmp al, 2
jne 0x140087dc7
mov rax, qword [r12]
mov qword [r15], rax
mov rax, qword [r12 + 8]
mov qword [r15 + 8], rax
mov rax, qword [r12 + 0x10]
mov qword [r15 + 0x10], rax
mov rax, qword [r12 + 0x18]
mov qword [r15 + 0x18], rax
mov rax, qword [rsi + 0x18]
mov qword [r15 + 0x18], rax
jmp 0x140088912
mov qword [r15], rcx
mov dword [r15 + 0x10], 4
jmp 0x140088912
mov dword [r15 + 0x10], reloc.WSOCK32.dll_gethostbyname
jmp case.default.0x140087d67
mov dword [r15 + 0x10], gethostname
jmp case.default.0x140087d67
mov dword [r15 + 0x10], gethostname
jmp case.default.0x140087d67
mov dword [r15 + 0x10], gethostname
jmp case.default.0x140087d67
mov dword [r15 + 0x10], gethostname
jmp case.default.0x140087d67
mov dword [r15 + 0x10], gethostbyname
jmp case.default.0x140087d67
mov dword [r15 + 0x10], gethostbyname
jmp case.default.0x140087d67
mov dword [r15 + 0x10], gethostbyname
jmp case.default.0x140087d67
mov dword [r15 + 0x10], gethostbyname
jmp case.default.0x140087d67
mov dword [r15 + 0x10], gethostbyname
jmp case.default.0x140087d67
mov dword [r15 + 0x10], gethostbyname
jmp case.default.0x140087d67
mov dword [r15 + 0x10], gethostbyname
mov r14, qword [r13]
mov qword [rbp + 0x58], r14
cmp dword [r15 + 0x10], 0x2d
je 0x140088215
test edi, edi
je 0x140088215
mov rcx, r13
call fcn.1400780c0
mov ebx, eax
test eax, eax
je 0x140088215
cmp edi, 1
jne 0x140087e8a
cmp eax, edi
jne 0x140087e8a
cmp dword [r15 + 0x10], 0x37
jne 0x140087ea0
mov eax, dword [r15 + 0x10]
cmp eax, 0x33
jg 0x140088054
cmp eax, 0x2e
jl 0x140088054
xor r14d, r14d
mov edx, r14d
cmp edi, 1
sete dl
mov rcx, r12
call fcn.1400783b0
mov rdi, rax
mov edx, r14d
cmp ebx, 1
sete dl
mov rcx, r13
call fcn.1400783b0
mov rdx, rax
lea esi, [r14 + 1]
mov eax, dword [r15 + 0x10]
add eax, 0xffffffdb
cmp eax, 0x19
ja case.0x140087ef3.45
cdqe
lea r8, [0x140000000]
mov ecx, dword [r8 + rax*4 + 0x89554]
add rcx, r8
jmp rcx
lea rax, [rdx + rdi]
jmp 0x140088048
sub rdx, rdi
mov qword [r15], rdx
jmp case.0x140087ef3.45
imul rdx, rdi
mov qword [r15], rdx
jmp case.0x140087ef3.45
mov rax, r14
cmp rdx, rdi
sete al
jmp 0x140088048
mov rax, r14
cmp rdx, rdi
setne al
jmp 0x140088048
mov rax, r14
cmp rdx, rdi
setg al
jmp 0x140088048
mov rax, r14
cmp rdx, rdi
setl al
jmp 0x140088048
mov rax, r14
cmp rdx, rdi
setge al
jmp 0x140088048
mov rax, r14
cmp rdx, rdi
setle al
jmp 0x140088048
and rdx, rdi
mov qword [r15], rdx
jmp case.0x140087ef3.45
or rdx, rdi
mov qword [r15], rdx
jmp case.0x140087ef3.45
xor rdx, rdi
mov qword [r15], rdx
jmp case.0x140087ef3.45
mov rcx, rdi
shl rdx, cl
mov qword [r15], rdx
jmp case.0x140087ef3.45
mov rcx, rdi
sar rdx, cl
mov qword [r15], rdx
jmp case.0x140087ef3.45
mov rcx, rdi
shr rdx, cl
mov qword [r15], rdx
jmp case.0x140087ef3.45
test rdi, rdi
jne 0x140087fcb
lea rcx, [0x1400e346c]
mov qword [r15], rcx
mov esi, r14d
jmp case.0x140087ef3.45
mov rax, rdx
cqo
idiv rdi
jmp 0x140088048
test rdx, rdx
jne 0x140087fee
test rdi, rdi
jns 0x140087fee
lea rcx, [0x1400e346c]
mov qword [r15], rcx
mov esi, r14d
jmp case.0x140087ef3.45
mov ebx, r14d
test rdx, rdx
sets bl
test ebx, ebx
je 0x140087ffe
neg rdx
pxor xmm0, xmm0
cvtsi2sd xmm0, rdx
pxor xmm1, xmm1
cvtsi2sd xmm1, rdi
call section.text
movsd qword [r15], xmm0
test ebx, ebx
je 0x140088037
mov rax, rdi
cqo
and eax, esi
xor rax, rdx
sub rax, rdx
je 0x140088037
xorpd xmm0, xmm10
movsd qword [r15], xmm0
test rdi, rdi
jns 0x140088043
mov esi, 2
jmp case.0x140087ef3.45
cvttsd2si rax, qword [r15]
mov qword [r15], rax
mov dword [r15 + 0x10], esi
jmp 0x1400888bc
xor r14d, r14d
mov r8d, r14d
cmp edi, 2
sete r8b
lea edx, [r14 + 1]
mov rcx, r12
call fcn.140078450
movapd xmm7, xmm0
mov r8d, r14d
cmp ebx, 2
sete r8b
lea edx, [r14 + 1]
mov rcx, r13
call fcn.140078450
movapd xmm6, xmm0
mov edx, dword [r15 + 0x10]
cmp edx, 0x25
jl 0x14008809d
cmp edx, 0x2c
lea ebx, [r14 + 1]
jle 0x1400880a2
mov ebx, 2
lea eax, [rdx - 0x25]
cmp eax, 0x19
ja case.0x1400880c2.45
cdqe
lea r8, [0x140000000]
mov ecx, dword [r8 + rax*4 + 0x895bc]
add rcx, r8
jmp rcx
addsd xmm6, xmm7
jmp 0x140088207
subsd xmm6, xmm7
jmp 0x140088207
mulsd xmm6, xmm7
jmp 0x140088207
ucomisd xmm7, xmm8
jp 0x1400880fa
jne 0x1400880fa
lea rcx, [0x1400e346c]
mov qword [r15], rcx
mov ebx, r14d
jmp case.0x1400880c2.45
divsd xmm6, xmm7
movsd qword [r15], xmm6
cmp edx, 0x38
jne case.0x1400880c2.45
movapd xmm0, xmm6
call fcn.1400dbf50
movsd qword [r15], xmm0
jmp case.0x1400880c2.45
ucomisd xmm0, xmm7
jp 0x14008812c
mov eax, 1
je 0x14008812f
mov rax, r14
mov qword [r15], rax
jmp case.0x1400880c2.45
ucomisd xmm0, xmm7
jp 0x140088142
mov rax, r14
je 0x140088147
mov eax, 1
mov qword [r15], rax
jmp case.0x1400880c2.45
comisd xmm0, xmm7
mov eax, 1
ja 0x14008812f
mov rax, r14
mov qword [r15], rax
jmp case.0x1400880c2.45
comisd xmm7, xmm0
jmp 0x140088153
comisd xmm0, xmm7
mov eax, 1
jae 0x14008812f
jmp 0x14008815a
comisd xmm7, xmm0
jmp 0x14008816f
comisd xmm8, xmm0
mov edi, 1
ja 0x14008818d
mov edi, r14d
ucomisd xmm0, xmm8
jp 0x1400881a1
jne 0x1400881a1
comisd xmm8, xmm7
ja 0x1400880e8
test edi, edi
je 0x1400881c9
movapd xmm1, xmm13
movapd xmm0, xmm7
call fcn.1400dc170
ucomisd xmm0, xmm8
jp 0x1400880e8
jne 0x1400880e8
xorpd xmm6, xmm10
movapd xmm1, xmm7
movapd xmm0, xmm6
call section.text
movapd xmm6, xmm0
movsd qword [r15], xmm0
test edi, edi
je case.0x1400880c2.45
movsd xmm1, qword [0x140101e70]
movapd xmm0, xmm7
call fcn.1400dc170
andpd xmm0, xmm14
ucomisd xmm0, xmm13
jp case.0x1400880c2.45
jne case.0x1400880c2.45
xorpd xmm6, xmm10
movsd qword [r15], xmm6
mov dword [r15 + 0x10], ebx
jmp 0x1400888c0
mov eax, dword [r15 + 0x10]
add eax, 0xffffffdb
cmp eax, 3
ja 0x140088278
mov rcx, r12
call fcn.140078880
mov rbx, rax
mov rcx, r13
call fcn.140078880
mov rdi, rax
test rbx, rbx
jne 0x140088241
test rax, rax
je 0x140088278
mov eax, dword [r15 + 0x10]
cmp eax, 0x27
je 0x140088259
cmp eax, 0x28
je 0x140088259
mov edx, 1
xor r14d, r14d
jmp 0x14008825f
xor r14d, r14d
mov edx, r14d
mov ecx, r14d
cmp rbx, rdi
sete cl
mov rax, r14
cmp edx, ecx
sete al
mov qword [r15], rax
jmp 0x140086eb9
lea rdx, [rbp + 0x18e0]
mov rcx, r12
call fcn.140078510
mov rsi, rax
lea rdx, [rbp + 0xa0]
mov rcx, r13
call fcn.140078510
mov rbx, rax
mov edi, 1
mov eax, dword [r15 + 0x10]
add eax, 0xffffffdb
cmp eax, 8
ja case.default.0x1400882c5
cdqe
lea r8, [0x140000000]
mov ecx, dword [r8 + rax*4 + 0x89624]
add rcx, r8
jmp rcx
mov rax, qword [0x1401144a8]
mov rdx, rsi
mov rcx, rbx
cmp byte [rax + 0x132], 0
jne 0x1400882e4
call fcn.1400ca91c
jmp 0x1400882ea
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
mov edx, eax
xor r14d, r14d
mov eax, r14d
test edx, edx
sete al
mov qword [r15], rax
jmp 0x1400888b8
sub rsi, rbx
movzx ecx, word [rbx]
movzx eax, word [rbx + rsi]
sub ecx, eax
jne 0x140088315
add rbx, 2
test eax, eax
jne 0x140088302
xor r14d, r14d
mov eax, r14d
test ecx, ecx
sete al
mov qword [r15], rax
jmp 0x1400888b8
sub rsi, rbx
nop dword [rax + rax]
movzx ecx, word [rbx]
movzx eax, word [rbx + rsi]
sub ecx, eax
jne 0x140088343
add rbx, 2
test eax, eax
jne 0x140088330
xor r14d, r14d
mov eax, r14d
test ecx, ecx
setne al
mov qword [r15], rax
jmp 0x1400888b8
mov rax, qword [0x1401144a8]
movzx ecx, byte [rax + 0x132]
test cl, cl
jne 0x140088377
mov rdx, rsi
mov rcx, rbx
call fcn.1400ca91c
mov edx, eax
jmp 0x1400883ad
cmp cl, 2
jne 0x14008838c
mov rdx, rsi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
mov edx, eax
jmp 0x1400883ad
sub rsi, rbx
nop
movzx eax, word [rbx]
cmp ax, word [rbx + rsi]
jne 0x1400883a8
add rbx, 2
test ax, ax
jne 0x140088390
xor ecx, ecx
mov edx, ecx
jmp 0x1400883ad
sbb edx, edx
sbb edx, 0xffffffff
xor r14d, r14d
mov eax, r14d
test edx, edx
setne al
mov qword [r15], rax
jmp 0x1400888b8
mov rax, qword [0x1401144a8]
movzx ecx, byte [rax + 0x132]
test cl, cl
jne 0x1400883e1
mov rdx, rsi
mov rcx, rbx
call fcn.1400ca91c
mov edx, eax
jmp 0x14008841d
cmp cl, 2
jne 0x1400883f6
mov rdx, rsi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
mov edx, eax
jmp 0x14008841d
sub rsi, rbx
nop dword [rax]
movzx eax, word [rbx]
cmp ax, word [rbx + rsi]
jne 0x140088418
add rbx, 2
test ax, ax
jne 0x140088400
xor ecx, ecx
mov edx, ecx
jmp 0x14008841d
sbb edx, edx
sbb edx, 0xffffffff
xor r14d, r14d
mov eax, r14d
test edx, edx
setg al
mov qword [r15], rax
jmp 0x1400888b8
mov rax, qword [0x1401144a8]
movzx ecx, byte [rax + 0x132]
test cl, cl
jne 0x140088451
mov rdx, rsi
mov rcx, rbx
call fcn.1400ca91c
mov edx, eax
jmp 0x14008848d
cmp cl, 2
jne 0x140088466
mov rdx, rsi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
mov edx, eax
jmp 0x14008848d
sub rsi, rbx
nop dword [rax]
movzx eax, word [rbx]
cmp ax, word [rbx + rsi]
jne 0x140088488
add rbx, 2
test ax, ax
jne 0x140088470
xor ecx, ecx
mov edx, ecx
jmp 0x14008848d
sbb edx, edx
sbb edx, 0xffffffff
xor r14d, r14d
mov eax, r14d
test edx, edx
sets al
mov qword [r15], rax
jmp 0x1400888b8
mov rax, qword [0x1401144a8]
movzx ecx, byte [rax + 0x132]
test cl, cl
jne 0x1400884c1
mov rdx, rsi
mov rcx, rbx
call fcn.1400ca91c
mov edx, eax
jmp 0x1400884fd
cmp cl, 2
jne 0x1400884d6
mov rdx, rsi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
mov edx, eax
jmp 0x1400884fd
sub rsi, rbx
nop dword [rax]
movzx eax, word [rbx]
cmp ax, word [rbx + rsi]
jne 0x1400884f8
add rbx, 2
test ax, ax
jne 0x1400884e0
xor ecx, ecx
mov edx, ecx
jmp 0x1400884fd
sbb edx, edx
sbb edx, 0xffffffff
xor r14d, r14d
mov eax, r14d
cmp edx, 0xffffffff
setg al
mov qword [r15], rax
jmp 0x1400888b8
mov rax, qword [0x1401144a8]
movzx ecx, byte [rax + 0x132]
test cl, cl
jne 0x140088532
mov rdx, rsi
mov rcx, rbx
call fcn.1400ca91c
mov edx, eax
jmp 0x14008856d
cmp cl, 2
jne 0x140088547
mov rdx, rsi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
mov edx, eax
jmp 0x14008856d
sub rsi, rbx
nop word [rax + rax]
movzx eax, word [rbx]
cmp ax, word [rbx + rsi]
jne 0x140088568
add rbx, 2
test ax, ax
jne 0x140088550
xor ecx, ecx
mov edx, ecx
jmp 0x14008856d
sbb edx, edx
sbb edx, 0xffffffff
xor r14d, r14d
mov eax, r14d
cmp edx, edi
setl al
mov qword [r15], rax
jmp 0x1400888b8
cmp dword [r12 + 0x10], 4
jne 0x140088596
mov rcx, qword [r12]
call fcn.14001c610
mov r15, rax
jmp 0x1400885a9
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rsi
repne scasw ax, word [rdi]
not rcx
lea r15, [rcx - 1]
test r14, r14
je 0x1400885d8
mov r8, r15
mov rdx, rsi
mov rcx, r14
call fcn.1400b1c70
test eax, eax
je 0x1400885d8
mov r15, qword [rbp + 0x20]
mov qword [r15], r14
mov dword [r15 + 0x10], 4
mov rsi, qword [rbp + 8]
jmp 0x140088908
cmp dword [r13 + 0x10], 4
jne 0x1400885ed
mov rcx, qword [r13]
call fcn.14001c610
mov r14, rax
jmp 0x140088600
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea r14, [rcx - 1]
lea r12, [r14 + r15 + 1]
cmp qword [rbp + 0x58], 0
jne 0x140088795
mov rcx, qword [rbp + 0x60]
mov edx, dword [rbp + 4]
mov rax, qword [rbp + 8]
test rcx, rcx
je 0x140088633
test edx, edx
jne 0x140088633
cmp dword [rax + 0x30], 0x44
jne 0x140088633
mov rdi, rcx
lea r13d, [rdx + 1]
jmp 0x140088678
cmp dword [rax + 0x30], 0x13
jne 0x140088795
test edx, edx
je 0x140088795
movsxd rdi, edx
mov rdi, qword [rbp + rdi*8 + 0x8d8]
cmp dword [rdi + 0x10], 4
jne 0x140088795
mov rdi, qword [rdi]
movzx eax, byte [rdi + 0x23]
test al, al
jne 0x14008866d
mov rax, qword [rdi + 0x10]
movzx eax, byte [rax + 0x23]
cmp al, 1
jne 0x140088795
xor r13d, r13d
test rdi, rdi
je 0x140088791
xor r8d, r8d
xor edx, edx
mov rcx, rdi
call fcn.140001820
lea rcx, [0x14011b184]
cmp rax, rcx
mov ecx, 0
cmove rax, rcx
cmp rax, rbx
jne 0x1400886fe
mov r8, r15
mov rdx, rsi
mov rcx, rdi
call fcn.1400b1c70
test eax, eax
je 0x140088791
test r13d, r13d
jne 0x140089407
mov rsi, qword [rbp + 8]
add rsi, 0x20
mov rax, qword [rsi + 0x18]
mov r15, qword [rbp + 0x20]
mov qword [r15 + 0x18], rax
mov eax, dword [rbp + 4]
dec eax
mov dword [rbp + 4], eax
cdqe
mov rcx, qword [rbp + rax*8 + 0x8e0]
mov rax, qword [rcx]
mov qword [r15], rax
mov dword [r15 + 0x10], 4
jmp 0x140088908
cmp rax, rsi
je 0x140088791
lea r8, [r12 - 1]
mov byte [rsp + 0x20], 1
xor r9d, r9d
xor edx, edx
mov rcx, rdi
call fcn.1400b14e0
test eax, eax
je 0x140088f48
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rdi
call fcn.140001820
mov r12, rax
test r14, r14
je 0x14008874c
lea r8, [r14 + r14]
mov rdx, rbx
mov rcx, rax
call fcn.1400cb2e0
lea r8, [r15 + r15 + 2]
lea rcx, [r12 + r14*2]
mov rdx, rsi
call fcn.1400cb2e0
cmp byte [rdi + 0x23], 0
jne 0x140088767
mov rdi, qword [rdi + 0x10]
cmp byte [rdi + 0x23], 2
jne 0x140088788
cmp qword [0x14011be40], 0
je 0x140088788
lea rcx, [0x14011be28]
call fcn.140006240
jmp 0x1400886bc
and byte [rdi + 0x21], 0x86
jmp 0x1400886bc
mov r13, qword [rbp + 0x70]
mov rdx, qword [rbp + 0x48]
mov rcx, rdx
mov rax, qword [rbp + 0x1be8]
sub rcx, qword [rax]
sar rcx, 1
mov rax, qword [rbp + 0x1bf0]
mov eax, dword [rax]
sub eax, ecx
cdqe
cmp r12, rax
ja 0x1400887cf
mov rdi, qword [rbp + 0x20]
mov qword [rdi], rdx
lea rdx, [rdx + r12*2]
mov qword [rbp + 0x48], rdx
jmp 0x14008885a
cmp r12, 0x1001
jae 0x140088820
mov rdx, qword [rbp + 0x50]
cmp rdx, 0x9c40
jae 0x140088820
lea rax, [r12 + r12]
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x1400887fc
movabs rcx, 0xffffffffffffff0
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.1400d23b0
sub rsp, rcx
lea rax, [rsp + 0x40]
mov rdi, qword [rbp + 0x20]
mov qword [rdi], rax
add rdx, r12
mov qword [rbp + 0x50], rdx
jmp 0x14008885a
mov edi, dword [rbp]
cmp edi, 0xc8
je 0x140088d21
lea rcx, [r12 + r12]
call fcn.1400ca9a4
movsxd r12, edi
mov qword [rbp + r12*8 + 0x2a0], rax
mov rdi, qword [rbp + 0x20]
mov qword [rdi], rax
test rax, rax
je 0x140088d1e
inc r12d
mov dword [rbp], r12d
test r14, r14
je 0x14008886e
lea r8, [r14 + r14]
mov rdx, rbx
mov rcx, qword [rdi]
call fcn.1400cb2e0
lea r8, [r15 + r15 + 2]
mov r15, qword [rbp + 0x20]
mov rax, qword [r15]
lea rcx, [rax + r14*2]
mov rdx, rsi
call fcn.1400cb2e0
cmp dword [r13 + 0x10], 0
je 0x1400888b2
mov rax, qword [rbp + 0x90]
cmp dword [rax + 0x10], 0
je 0x1400888b2
mov edi, 5
xor r14d, r14d
mov qword [r15 + 8], r14
jmp 0x1400888b8
lea rcx, [0x1400e346c]
mov qword [r15], rcx
xor r14d, r14d
mov edi, r14d
mov dword [r15 + 0x10], edi
mov rsi, qword [rbp + 8]
mov rdi, qword [rbp + 0x58]
test rdi, rdi
je 0x140086b8c
mov rdx, r15
mov rcx, rdi
call fcn.1400b07c0
test eax, eax
je 0x140088f4b
movzx eax, byte [rdi + 0x23]
test al, al
jne 0x1400888f0
mov rax, qword [rdi + 0x10]
movzx eax, byte [rax + 0x23]
lea rbx, [0x1400e346c]
cmp al, 2
je 0x140088912
mov qword [r15], rdi
mov dword [r15 + 0x10], 4
jmp 0x140088912
lea rbx, [0x1400e346c]
xor r14d, r14d
cmp qword [r15 + 0x18], 0
je 0x140088bd1
mov rcx, r15
call fcn.1400780c0
mov edx, eax
mov ecx, dword [r15 + 0x10]
dec edx
je 0x1400889fc
dec edx
je 0x140088997
cmp ecx, 6
je 0x14008898d
cmp ecx, 4
jne 0x140088954
mov rax, qword [r15]
cmp byte [rax + 0x23], 0
jne 0x14008894e
mov rax, qword [rax + 0x10]
test byte [rax + 0x21], 2
jne 0x14008898d
test ecx, ecx
je 0x140088981
dec ecx
je 0x14008897c
dec ecx
je 0x14008897c
sub ecx, 2
je 0x14008896b
dec ecx
je 0x140088981
jmp 0x14008897c
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, qword [r15]
call fcn.140001820
jmp 0x140088984
mov rax, rbx
jmp 0x140088984
mov rax, qword [r15]
cmp word [rax], 0
jmp 0x140088b71
mov ebx, 1
jmp 0x140088b77
dec ecx
je 0x1400889e2
dec ecx
je 0x1400889db
sub ecx, 2
je 0x1400889cc
dec ecx
je 0x1400889ae
dec ecx
je 0x1400889f4
jmp 0x1400889c2
mov rax, qword [r15 + 8]
test rax, rax
je 0x1400889c2
pxor xmm0, xmm0
cvtsi2sd xmm0, qword [rax]
jmp 0x1400889eb
mov rcx, qword [r15]
call fcn.1400cc778
jmp 0x1400889eb
mov edx, 1
mov rcx, qword [r15]
call fcn.14001c2d0
jmp 0x1400889eb
movsd xmm0, qword [r15]
jmp 0x1400889eb
pxor xmm0, xmm0
cvtsi2sd xmm0, qword [r15]
ucomisd xmm0, xmm8
jp 0x14008898d
jne 0x14008898d
mov ebx, r14d
jmp 0x140088b77
dec ecx
je 0x140088b6b
dec ecx
je 0x140088b64
sub ecx, 2
je 0x140088ab6
dec ecx
je 0x140088a25
dec ecx
jne 0x140088a36
mov rdi, r14
jmp 0x140088b6e
mov rdi, qword [r15 + 8]
test rdi, rdi
je 0x140088a36
mov rdi, qword [rdi]
jmp 0x140088b6e
mov rdi, qword [r15]
mov rax, rdi
nop dword [rax]
movzx ecx, word [rax]
cmp cx, 0x20
je 0x140088a4f
cmp cx, 9
jne 0x140088a55
add rax, 2
jmp 0x140088a40
movzx ecx, word [rax]
test cx, cx
je 0x140088aa6
cmp cx, 0x2d
je 0x140088a69
cmp cx, 0x2b
jne 0x140088a6d
add rax, 2
cmp word [rax], 0x30
jne 0x140088aa6
movzx edx, word [rax + 2]
cmp dx, 0x78
je 0x140088a83
cmp dx, 0x58
jne 0x140088aa6
movzx ecx, word [rax + 4]
call fcn.1400cbe64
test eax, eax
je 0x140088aa6
xor edx, edx
lea r8d, [rdx + 0x10]
mov rcx, rdi
call fcn.1400cc670
mov rdi, rax
jmp 0x140088b6e
mov rcx, rdi
call fcn.1400cbb78
mov rdi, rax
jmp 0x140088b6e
mov rbx, qword [r15]
cmp byte [rbx + 0x23], 0
jne 0x140088ac3
mov rbx, qword [rbx + 0x10]
test byte [rbx + 0x21], 0x10
je 0x140088ad1
mov rdi, qword [rbx]
jmp 0x140088b6e
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rbx
call fcn.140001820
mov rdi, rax
movzx ecx, word [rax]
cmp cx, 0x20
je 0x140088af2
cmp cx, 9
jne 0x140088af8
add rax, 2
jmp 0x140088ae3
movzx ecx, word [rax]
test cx, cx
je 0x140088b43
cmp cx, 0x2d
je 0x140088b0c
cmp cx, 0x2b
jne 0x140088b10
add rax, 2
cmp word [rax], 0x30
jne 0x140088b43
movzx ecx, word [rax + 2]
cmp cx, 0x78
je 0x140088b26
cmp cx, 0x58
jne 0x140088b43
movzx ecx, word [rax + 4]
call fcn.1400cbe64
test eax, eax
je 0x140088b43
xor edx, edx
lea r8d, [rdx + 0x10]
mov rcx, rdi
call fcn.1400cc670
jmp 0x140088b4b
mov rcx, rdi
call fcn.1400cbb78
mov rdi, rax
test byte [rbx + 0x21], 0x80
jne 0x140088b6e
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetDim
mov rdx, rax
mov rcx, rbx
call fcn.140001090
jmp 0x140088b6e
cvttsd2si rdi, qword [r15]
jmp 0x140088b6e
mov rdi, qword [r15]
test rdi, rdi
mov ebx, r14d
setne bl
cmp dword [r15 + 0x10], 6
jne 0x140088b87
mov rcx, qword [r15]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov rcx, qword [r15 + 0x18]
cmp dword [rcx + 0x10], 0x21
je 0x140088bc0
mov eax, r14d
cmp dword [rcx + 0x10], 0x22
sete al
cmp ebx, eax
jne 0x140088bc7
mov rsi, rcx
mov rcx, qword [rcx + 0x18]
test rcx, rcx
je 0x140088bb1
cmp dword [rcx + 0x10], 0x21
jne 0x140088b91
movsxd rax, ebx
mov qword [r15], rax
mov qword [r15 + 0x18], rcx
jmp 0x140086eb9
test ebx, ebx
jne 0x140088bc7
mov rsi, rcx
mov r8d, dword [rbp + 4]
mov r12d, dword [rbp + 0x14]
jmp 0x140088c1a
movsxd rdi, dword [rbp + 0x14]
movsxd r8, dword [rbp + 4]
mov rbx, r8
cmp rdi, r8
jle 0x140088c04
dec rdi
mov rcx, qword [rbp + rdi*8 + 0x8e0]
cmp dword [rcx + 0x10], 6
jne 0x140088bfb
mov rcx, qword [rcx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
cmp rdi, rbx
jg 0x140088be1
mov r8d, dword [rbp + 4]
mov qword [rbp + rbx*8 + 0x8e0], r15
inc r8d
mov dword [rbp + 4], r8d
mov r12d, r8d
mov dword [rbp + 0x14], r8d
mov r13, qword [rbp + 0x48]
lea rbx, [0x1400e346c]
lea r10, [0x140000000]
movabs r9, 0xffffffffffffff0
lea r11, [0x14006a9b0]
add rsi, 0x20
jmp 0x140086ac0
mov r9, qword [r15]
mov r9, qword [r9 + 0x28]
xor r8d, r8d
lea rdx, [0x1400e6570]
mov rcx, qword [rbp + 0x1bc0]
call fcn.1400403f0
jmp 0x140088f4b
mov rdi, qword [rbp + 0x20]
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x140088c7b
call fcn.1400cb11c
nop
mov rcx, qword [rbp + 0x30]
test rcx, rcx
je 0x140089407
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x38]
call fcn.1400b2020
jmp 0x140089407
mov rcx, qword [rbp + 0x30]
test rcx, rcx
je 0x140088f48
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x38]
call fcn.1400b2020
jmp 0x140088f48
jmp 0x140088c7b
mov r9, qword [r13 + 8]
xor r8d, r8d
lea rdx, [0x1400e6570]
mov rcx, r10
call fcn.1400403f0
nop
jmp 0x140088c9a
mov r10, qword [rbp + 0x1bc0]
mov r9, qword [r13 + 8]
xor r8d, r8d
lea rdx, [0x1400e6570]
mov rcx, r10
call fcn.1400403f0
nop
jmp 0x140088c9a
mov rsi, qword [rbp + 0x18]
cmp dword [rdi], 1
cmovne rsi, r14
mov rcx, qword [rbp + 0x30]
test rcx, rcx
je case.0x140088e3e.3
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x38]
call fcn.1400b2020
jmp case.0x140088e3e.3
mov edi, dword [rbp]
lea r9, [0x1400e346c]
xor r8d, r8d
lea rdx, [0x1400e6570]
mov rcx, qword [rbp + 0x1bc0]
call fcn.1400403f0
xor r14d, r14d
jmp 0x140088f4e
mov rbx, qword [rbp + 0x1bc0]
movzx eax, byte [rbx]
cmp al, 3
je 0x140089407
cmp r8d, 1
jne 0x1400890e5
mov rdi, qword [rbp + 0x8e0]
mov r13, qword [rbp + 0x60]
test r13, r13
je 0x140088d8a
mov rdx, rdi
mov rcx, r13
call fcn.1400b07c0
test eax, eax
je 0x140088f4b
jmp 0x140089407
cmp al, 0x11
je 0x140089053
cmp al, 0x6b
je 0x140089053
cmp al, 0x6c
je 0x140089053
mov r9, qword [rbp + 0x1bd8]
test r9, r9
je 0x140088e1b
mov eax, dword [rdi + 0x10]
cmp eax, 1
je 0x140088e05
cmp eax, 2
je 0x140088e05
cmp eax, 6
je 0x140088e05
cmp eax, 4
jne 0x140088e1b
mov rax, qword [rdi]
cmp byte [rax + 0x23], 0
jne 0x140088dd2
mov rax, qword [rax + 0x10]
test byte [rax + 0x21], 2
je 0x140088e1b
mov dword [r9 + 0x10], 6
mov rcx, qword [rdi]
cmp byte [rcx + 0x23], 0
jne 0x140088ded
mov rcx, qword [rcx + 0x10]
mov rcx, qword [rcx]
mov qword [r9], rcx
mov rax, qword [rcx]
call qword [rax + VariantCopy]
lea rax, [0x1400e346c]
jmp 0x14008946f
mov dword [r9 + 0x10], eax
mov rax, qword [rdi]
mov qword [r9], rax
lea rax, [0x1400e346c]
jmp 0x14008946f
mov r15, qword [rbp + 0x1be0]
mov rsi, qword [r15]
movsxd r8, dword [rdi + 0x10]
cmp r8d, 6
ja case.0x140088e3e.3
mov edx, dword [r10 + r8*4 + 0x89648]
add rdx, r10
jmp rdx
mov rdx, rsi
mov rcx, qword [rdi]
call fcn.140001000
mov rdi, rax
xor eax, eax
or rcx, 0xffffffffffffffff
repne scasw ax, word [rdi]
not rcx
add rcx, rcx
add qword [r15], rcx
jmp case.0x140088e3e.3
mov r8, qword [0x1401144a8]
add r8, 0x94
movsd xmm3, qword [rdi]
movq r9, xmm3
mov edx, 0x100
mov rcx, rsi
call fcn.1400ad210
inc eax
movsxd rcx, eax
add rcx, rcx
add qword [r15], rcx
jmp case.0x140088e3e.3
cmp r8d, 4
jne 0x140088ebf
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, qword [rdi]
call fcn.140001820
mov r14, rax
mov rcx, qword [rdi]
call fcn.14001c610
lea rdi, [rax + 1]
jmp 0x140088ed4
mov r14, qword [rdi]
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, r14
repne scasw ax, word [rdi]
not rcx
mov rdi, rcx
movsxd rcx, dword [rbp + 0x1bc8]
shl rcx, 5
mov rax, qword [rbx + 8]
movzx edx, word [rcx + rax + 2]
mov eax, 0xff
cmp dx, ax
jb 0x140088ef5
movzx eax, dx
inc eax
movsxd rcx, eax
add rcx, qword [rbp + 0x1c00]
cmp rdi, rcx
jbe 0x140089027
mov rax, qword [rbp + 0x1bf0]
mov r12, qword [rax]
sub r12, rcx
add r12, rdi
lea rcx, [r12 + r12]
call fcn.1400ca9a4
mov rbx, rax
test rax, rax
jne 0x140088f60
lea r9, [0x1400e346c]
xor r8d, r8d
lea rdx, [0x1400e6570]
mov rcx, qword [rbp + 0x1bc0]
call fcn.1400403f0
xor r14d, r14d
mov edi, dword [rbp]
mov rsi, r14
mov rax, qword [rbp + 0x1bd0]
mov dword [rax], r14d
jmp 0x14008940e
mov esi, dword [0x14011a46c]
cmp r12, 0x400000
jbe 0x140088f77
inc esi
mov dword [0x14011a46c], esi
mov rax, qword [rbp + 0x1be8]
mov rdx, qword [rax]
mov r13, qword [r15]
sub r13, rdx
sar r13, 1
je 0x140088f99
lea r8, [r13 + r13]
mov rcx, rbx
call fcn.1400cb2e0
lea rcx, [rbx + r13*2]
mov qword [rbp + 0x18], rcx
mov qword [r15], rcx
lea r8, [rdi + rdi]
mov rdx, r14
call fcn.1400cb2e0
mov r13, qword [rbp + 0x1be8]
mov rcx, qword [r13]
call fcn.1400cb11c
mov r10, qword [rbp + 0x1bf0]
mov r11, qword [r10]
cmp r11, 0x400000
jbe 0x140088fdb
dec esi
mov dword [0x14011a46c], esi
mov rdx, qword [r13]
lea r9, [rdx + r11*2]
mov eax, dword [rbp + 0x1bc8]
test eax, eax
jle 0x14008901a
mov rcx, qword [rbp + 0x1bf8]
mov r8d, eax
mov rax, qword [rcx]
cmp rax, rdx
jb 0x140089011
cmp rax, r9
jae 0x140089011
sub rax, rdx
sar rax, 1
lea rax, [rbx + rax*2]
mov qword [rcx], rax
add rcx, 8
dec r8
jne 0x140088ff7
mov qword [r13], rbx
mov qword [r10], r12
mov rsi, qword [rbp + 0x18]
jmp 0x14008903b
mov rcx, qword [r15]
cmp rcx, r14
je 0x14008903b
lea r8, [rdi + rdi]
mov rdx, r14
call fcn.1400cb2e0
lea rax, [rdi + rdi]
add qword [r15], rax
jmp case.0x140088e3e.3
lea rsi, [0x1400e346c]
jmp case.0x140088e3e.3
movsxd rax, dword [rdi + 0x10]
cmp eax, 6
ja case.0x140089067.3
mov ecx, dword [r10 + rax*4 + 0x89664]
add rcx, r10
jmp rcx
cmp qword [rdi], 0
mov r14d, 0
setne r14b
jmp 0x1400890c8
movsd xmm0, qword [rdi]
ucomisd xmm0, xmm8
jp case.0x140089067.6
je 0x1400890c8
mov r14d, 1
jmp 0x1400890c8
mov rax, qword [rdi + 8]
test rax, rax
je case.0x140089067.0
cmp qword [rax], 0
mov r14d, 0
setne r14b
jmp 0x1400890c8
mov rcx, qword [rdi]
call fcn.140077c70
mov r14d, eax
jmp 0x1400890c8
mov rcx, qword [rdi]
call fcn.140077e90
mov r14d, eax
jmp 0x1400890c8
mov r14d, dword [rbp + 0x1bc8]
lea rax, [0x1400e619c]
lea rsi, [0x1400e346c]
test r14d, r14d
cmovne rsi, rax
jmp case.0x140088e3e.3
xor r14d, r14d
mov r13, qword [rbp + 0x60]
mov rsi, qword [rbp + 0x18]
test r13, r13
je case.0x140088e3e.3
test rsi, rsi
je case.0x140088e3e.3
movzx edx, byte [r13 + 0x23]
test dl, dl
jne 0x140089125
mov byte [rsp + 0x20], 1
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rdx, rsi
mov rcx, qword [r13 + 0x10]
call fcn.1400b14e0
jmp 0x1400893cf
cmp qword [r13 + 8], rsi
jne 0x140089134
mov rbx, qword [r13 + 0x10]
shr rbx, 1
jmp 0x140089147
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rsi
repne scasw ax, word [rdi]
not rcx
lea rbx, [rcx - 1]
lea rax, [rbx + 1]
lea rdi, [rax + rax]
cmp dl, 2
jne 0x140089164
mov rdx, rbx
mov rcx, rsi
call fcn.1400060c0
jmp 0x1400893cf
cmp rdi, qword [0x140114480]
jbe 0x14008917f
cmp rdi, qword [r13 + 0x18]
jbe 0x14008917f
lea rdx, [0x1400ffee0]
jmp 0x1400893bc
cmp rax, 2
movzx eax, byte [r13 + 0x21]
jae 0x1400891fc
test al, 2
je 0x14008919e
and al, 0x3d
mov byte [r13 + 0x21], al
mov rcx, qword [r13]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov qword [r13 + 0x10], r14
and byte [r13 + 0x21], 0x82
movzx ecx, byte [r13 + 0x20]
dec ecx
je 0x1400891cd
dec ecx
jne case.0x140088e3e.3
mov rax, qword [r13 + 0x18]
test rax, rax
je case.0x140088e3e.3
cmp rax, 0x1000
ja 0x1400891da
mov rax, qword [r13 + 8]
mov word [rax], r14w
jmp case.0x140088e3e.3
mov rcx, qword [r13 + 8]
call fcn.1400cb11c
mov qword [r13 + 0x18], r14
lea rax, [0x14011b184]
mov qword [r13 + 8], rax
and byte [r13 + 0x21], 0x7f
jmp case.0x140088e3e.3
test al, 2
je 0x140089210
and al, 0x3d
mov byte [r13 + 0x21], al
mov rcx, qword [r13]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
and byte [r13 + 0x21], 0x82
mov rcx, qword [r13 + 0x18]
cmp rdi, rcx
jbe 0x1400893df
movzx r8d, byte [r13 + 0x20]
movzx eax, r8b
cmp r8b, 1
jbe 0x140089248
cmp al, 2
je 0x14008928d
mov r12, qword [rbp + 0x1bc0]
mov rax, qword [rbp + 0x1bc0]
jmp 0x140089384
cmp rdi, 0x80
ja 0x14008928d
cmp rdi, 8
ja 0x14008925f
mov r12d, 8
jmp 0x140089272
mov r12d, 0x80
cmp rdi, 0x10
mov eax, reloc.OLEAUT32.dll_SafeArrayGetDim
cmovbe r12d, eax
mov rcx, r12
call fcn.1400aa400
test rax, rax
je 0x1400893d3
mov byte [r13 + 0x20], 1
jmp 0x140089384
cmp rdi, 0x20
jae 0x14008929e
mov r12d, SafeArrayAllocDescriptor
jmp 0x140089343
cmp rdi, 0x208
jae 0x1400892b2
mov r12d, 0x208
jmp 0x140089343
cmp rdi, 0x50000
jae 0x1400892ff
pxor xmm0, xmm0
cvtsi2sd xmm0, rdi
test rdi, rdi
jns 0x1400892ce
addsd xmm0, xmm11
mulsd xmm0, xmm12
xor eax, eax
comisd xmm0, xmm9
jbe 0x1400892f5
subsd xmm0, xmm9
comisd xmm0, xmm9
jae 0x1400892f5
movabs rdx, 0x8000000000000000
mov rax, rdx
cvttsd2si r12, xmm0
add r12, rax
jmp 0x140089343
cmp rdi, 0x320000
jae 0x140089311
lea r12, [rdi + 0x8000]
jmp 0x140089343
cmp rdi, 0xc80000
jae 0x14008933c
mov r12, rdi
movabs rax, 0x47ae147ae147ae15
mul rdi
sub r12, rdx
shr r12, 1
add r12, rdx
shr r12, 6
add r12, rdi
jmp 0x140089343
lea r12, [rdi + 0x20000]
mov rax, qword [0x140114480]
cmp r12, rax
cmova r12, rax
cmp r8b, 2
jne 0x14008936a
test rcx, rcx
je 0x14008936a
mov dil, 1
mov rcx, qword [r13 + 8]
call fcn.1400cb11c
jmp 0x14008936d
xor dil, dil
test r12, r12
js 0x140089393
mov rcx, r12
call fcn.1400ca9a4
test rax, rax
je 0x140089393
mov byte [r13 + 0x20], 2
mov qword [r13 + 8], rax
mov qword [r13 + 0x18], r12
and byte [r13 + 0x21], 0x7f
jmp 0x1400893df
test dil, dil
je 0x1400893a9
mov qword [r13 + 0x18], r14
lea rax, [0x14011b184]
mov qword [r13 + 8], rax
jmp 0x1400893b1
mov rax, qword [r13 + 8]
mov word [rax], r14w
mov qword [r13 + 0x10], r14
lea rdx, [0x1400e6570]
lea r8, [0x1400e346c]
lea rcx, [0x14011b1d0]
call fcn.140040740
test eax, eax
jne case.0x140088e3e.3
mov rax, qword [rbp + 0x1bd0]
mov dword [rax], r14d
jmp case.0x140088e3e.3
mov rcx, qword [r13 + 8]
cmp rcx, rsi
je 0x1400893f4
lea r8, [rbx + rbx]
mov rdx, rsi
call fcn.1400cb2e0
lea rcx, [rbx + rbx]
mov rax, qword [r13 + 8]
mov word [rcx + rax], r14w
mov qword [r13 + 0x10], rcx
jmp case.0x140088e3e.3
mov rsi, qword [rbp + 0x18]
mov edi, dword [rbp]
movsxd rdi, edi
test rdi, rdi
je 0x140089435
nop word [rax + rax]
dec rdi
mov rcx, qword [rbp + rdi*8 + 0x2a0]
call fcn.1400cb11c
test rdi, rdi
jne 0x140089420
movsxd rbx, dword [rbp + 0x14]
test ebx, ebx
je 0x14008946c
lea rdi, [rbp + rbx*8 + 0x8e0]
nop word [rax + rax]
dec ebx
sub rdi, 8
mov rcx, qword [rdi]
cmp dword [rcx + 0x10], 6
jne 0x140089468
mov rcx, qword [rcx]
mov rdx, qword [rcx]
call qword [rdx + reloc.OLEAUT32.dll_SafeArrayGetDim]
test ebx, ebx
jne 0x140089450
mov rax, rsi
movaps xmm6, xmmword [rbp + 0x1b60]
movaps xmm7, xmmword [rbp + 0x1b50]
movaps xmm8, xmmword [rbp + 0x1b40]
movaps xmm9, xmmword [rbp + 0x1b30]
movaps xmm10, xmmword [rbp + 0x1b20]
movaps xmm11, xmmword [rbp + 0x1b10]
movaps xmm12, xmmword [rbp + 0x1b00]
movaps xmm13, xmmword [rbp + 0x1af0]
movaps xmm14, xmmword [rbp + 0x1ae0]
lea rsp, [rbp + 0x1b78]
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret