Function at 0x1401391f0
Capabilities:
Check os version

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x130]
sub rsp, 0x230
mov rax, qword [0x1401c1050]
xor rax, rsp
mov qword [rbp + 0x120], rax
mov qword [rsp + 0x48], rcx
xor r14d, r14d
mov dword [rsp + 0x44], r14d
mov r12d, r14d
call qword [sym.imp.KERNEL32.dll_GetVersion]
movzx ecx, al
mov dword [rsp + 0x44], ecx
movzx r13d, ax
shr r13d, 8
cmp eax, 0x80000000
jae 0x14013925b
mov r12d, eax
shr r12d, 0x10
lea rdi, [rbp + 0xd5]
mov r8d, r12d
nop word [rax + rax]
dec rdi
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [rdi], r8b
mov r8d, edx
test edx, edx
jne 0x140139270
mov qword [rbp + 0x80], r14
mov qword [rbp + 0x90], r14
mov qword [rbp + 0x98], r14
lea rax, [rbp + 0xd5]
movabs rsi, 0x7fffffffffffffff
lea r9d, [rdx + 0x16]
cmp rdi, rax
jne 0x1401392e7
mov qword [rbp + 0x90], r14
mov qword [rbp + 0x98], 0xf
mov byte [rbp + 0x80], r14b
jmp 0x14013938b
lea r14, [rbp + 0xd5]
sub r14, rdi
cmp r14, rsi
ja 0x140139ab0
cmp r14, 0x10
jae 0x14013932f
mov qword [rbp + 0x90], r14
mov qword [rbp + 0x98], 0xf
mov r8, r14
mov rdx, rdi
lea rcx, [rbp + 0x80]
call fcn.14007e1c0
mov byte [rbp + r14 + 0x80], 0
jmp 0x140139382
mov r15, r14
or r15, 0xf
cmp r15, rsi
jbe 0x140139340
mov r15, rsi
jmp 0x140139347
cmp r15, r9
cmovb r15, r9
lea rdx, [r15 + 1]
lea rcx, [rbp + 0x80]
call fcn.140007480
mov rbx, rax
mov qword [rbp + 0x80], rax
mov qword [rbp + 0x90], r14
mov qword [rbp + 0x98], r15
mov r8, r14
mov rdx, rdi
mov rcx, rax
call fcn.14007e1c0
mov byte [rbx + r14], 0
mov r9d, 0x16
xor r14d, r14d
lea rdi, [rbp + 0xf5]
mov r8d, r13d
nop word [rax + rax]
dec rdi
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [rdi], r8b
mov r8d, edx
test edx, edx
jne 0x1401393a0
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x70], r14
mov qword [rbp + 0x78], r14
lea rax, [rbp + 0xf5]
cmp rdi, rax
jne 0x1401393f6
mov qword [rbp + 0x70], r14
mov qword [rbp + 0x78], 0xf
mov byte [rbp + 0x60], dl
jmp 0x14013947d
lea r14, [rbp + 0xf5]
sub r14, rdi
cmp r14, rsi
ja 0x140139ab6
cmp r14, 0x10
jae 0x140139432
mov qword [rbp + 0x70], r14
mov qword [rbp + 0x78], 0xf
mov r8, r14
mov rdx, rdi
lea rcx, [rbp + 0x60]
call fcn.14007e1c0
mov byte [rbp + r14 + 0x60], 0
jmp 0x14013947a
mov r15, r14
or r15, 0xf
cmp r15, rsi
jbe 0x140139443
mov r15, rsi
jmp 0x14013944b
cmp r15, 0x16
cmovb r15, r9
lea rdx, [r15 + 1]
lea rcx, [rbp + 0x60]
call fcn.140007480
mov rbx, rax
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x70], r14
mov qword [rbp + 0x78], r15
mov r8, r14
mov rdx, rdi
mov rcx, rax
call fcn.14007e1c0
mov byte [rbx + r14], 0
xor r14d, r14d
lea rdi, [rbp + 0xd5]
mov r15d, dword [rsp + 0x44]
mov r8d, r15d
nop dword [rax]
dec rdi
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [rdi], r8b
mov r8d, edx
test edx, edx
jne 0x140139490
mov qword [rbp + 0x40], r14
mov qword [rbp + 0x50], r14
mov qword [rbp + 0x58], r14
lea rax, [rbp + 0xd5]
cmp rdi, rax
jne 0x1401394e7
mov qword [rbp + 0x50], r14
mov ecx, 0xf
mov qword [rbp + 0x58], rcx
mov byte [rbp + 0x40], dl
jmp 0x140139575
lea r14, [rbp + 0xd5]
sub r14, rdi
cmp r14, rsi
ja 0x140139abc
mov qword [rbp + 0x58], 0xf
cmp r14, 0x10
jae 0x140139523
mov qword [rbp + 0x50], r14
mov r8, r14
mov rdx, rdi
lea rcx, [rbp + 0x40]
call fcn.14007e1c0
mov byte [rbp + r14 + 0x40], 0
jmp 0x14013956e
mov rax, r14
or rax, 0xf
cmp rax, rsi
ja 0x14013953f
mov rsi, rax
cmp rax, 0x16
mov eax, 0x16
cmovb rsi, rax
lea rdx, [rsi + 1]
lea rcx, [rbp + 0x40]
call fcn.140007480
mov rbx, rax
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x50], r14
mov qword [rbp + 0x58], rsi
mov r8, r14
mov rdx, rdi
mov rcx, rax
call fcn.14007e1c0
mov byte [rbx + r14], 0
xor r14d, r14d
mov rcx, qword [rbp + 0x58]
mov rdx, qword [rbp + 0x50]
mov rax, rcx
sub rax, rdx
cmp rax, 1
jb 0x1401395a6
lea rax, [rdx + 1]
mov qword [rbp + 0x50], rax
lea rax, [rbp + 0x40]
cmp rcx, 0x10
cmovae rax, qword [rbp + 0x40]
mov word [rax + rdx], 0x2e
lea rax, [rbp + 0x40]
jmp 0x1401395c6
mov qword [rsp + 0x20], 1
lea r9, [0x1401918a4]
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0x40]
call fcn.140017930
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xc0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xd0], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r9, [rbp + 0x60]
lea r8, [rbp + 0xc0]
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp + 0xa0]
call fcn.1400d72d0
nop
mov rcx, qword [rbp + 0xb0]
mov rdx, qword [rbp + 0xb8]
mov rax, rdx
sub rax, rcx
cmp rax, 1
jb 0x14013964e
lea rax, [rcx + 1]
mov qword [rbp + 0xb0], rax
lea rax, [rbp + 0xa0]
cmp rdx, 0x10
cmovae rax, qword [rbp + 0xa0]
mov word [rax + rcx], 0x2e
lea rax, [rbp + 0xa0]
jmp 0x140139671
mov qword [rsp + 0x20], 1
lea r9, [0x1401918a4]
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0xa0]
call fcn.140017930
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xe0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xf0], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r9, [rbp + 0x80]
lea r8, [rbp + 0xe0]
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp + 0x100]
call fcn.1400d72d0
lea rdx, [rbp + 0x100]
mov rcx, qword [rsp + 0x48]
call fcn.1400162a0
mov rdx, qword [rbp + 0x118]
cmp rdx, 0x10
jb 0x140139707
inc rdx
mov rcx, qword [rbp + 0x100]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140139701
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140139ac2
call fcn.14007c190
nop
mov rdx, qword [rbp + 0xf8]
cmp rdx, 0x10
jb 0x140139749
inc rdx
mov rcx, qword [rbp + 0xe0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140139743
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140139ac8
call fcn.14007c190
nop
mov rdx, qword [rbp + 0xb8]
cmp rdx, 0x10
jb 0x14013978a
inc rdx
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140139785
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140139ace
call fcn.14007c190
movdqa xmm0, xmmword [0x1401968e0]
movdqu xmmword [rbp + 0xb0], xmm0
mov byte [rbp + 0xa0], 0
mov rdx, qword [rbp + 0xd8]
cmp rdx, 0x10
jb 0x1401397e3
inc rdx
mov rcx, qword [rbp + 0xc0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401397dd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140139ad4
call fcn.14007c190
nop
mov rdx, qword [rbp + 0x58]
cmp rdx, 0x10
jb 0x14013981e
inc rdx
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140139819
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140139ada
call fcn.14007c190
mov qword [rbp + 0x50], r14
mov qword [rbp + 0x58], 0xf
mov byte [rbp + 0x40], 0
mov rdx, qword [rbp + 0x78]
cmp rdx, 0x10
jb 0x14013986a
inc rdx
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140139864
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140139ae0
call fcn.14007c190
nop
mov rdx, qword [rbp + 0x98]
cmp rdx, 0x10
jb 0x1401398ab
inc rdx
mov rcx, qword [rbp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401398a6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140139aaa
call fcn.14007c190
call fcn.140118690
mov rbx, rax
mov rcx, qword [rax]
test rcx, rcx
je 0x140139a78
mov rdx, qword [rcx]
call qword [rdx + VariantCopy]
cmp eax, 6
jl 0x140139a78
lea rax, [0x1401913a0]
mov qword [rsp + 0x50], rax
mov qword [rbp - 0x20], r14
mov qword [rbp + 8], r14
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x10], xmm0
mov dword [rsp + 0x44], 0xffd
lea rax, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x2c], 0x78
xor r8d, r8d
lea rdx, [rsp + 0x58]
lea rcx, [rbp - 0x28]
call fcn.140016f30
nop
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
lea rsi, vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rsp + rcx + 0x50], rsi
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x88]
mov dword [rsp + rcx + 0x4c], edx
lea rcx, [rsp + 0x58]
call fcn.140016ea0
lea rax, vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rsp + 0x58], rax
mov qword [rbp - 0x40], r14
mov dword [rbp - 0x38], 4
lea rdx, str.os_version
lea rcx, [rsp + 0x50]
call fcn.14001e8f0
mov rcx, rax
mov edx, r15d
call fcn.140138260
mov rcx, rax
lea rdx, [0x1401918a4]
call fcn.14001e8f0
mov rcx, rax
mov edx, r13d
call fcn.140138260
mov rcx, rax
lea rdx, [0x1401918a4]
call fcn.14001e8f0
mov rcx, rax
mov edx, r12d
call fcn.140138260
mov rdi, qword [rbx]
mov edx, 0x2f
lea rbx, str.D:Jenkinsworkspaceccd_appmain_nativewin64_buildgit_adobeccddunamis_sdkdunamis_internaldunamis_core_sourcedunamiscore_sysinfowin_sysinfo_os_win.cpp
mov rcx, rbx
call fcn.140154680
test rax, rax
jne 0x1401399db
lea edx, [rax + 0x5c]
mov rcx, rbx
call fcn.140154680
test rax, rax
je 0x1401399df
lea rbx, [rax + 1]
mov rax, qword [rdi]
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x28], 0x34
mov qword [rsp + 0x20], rbx
lea r9, str.dunamis::sysinfo::getOSVersion
lea r8, str.sysinfo
mov edx, 6
mov rcx, rdi
call qword [rax + 0x20]
nop
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x50], rsi
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x88]
mov dword [rsp + rcx + 0x4c], edx
lea rcx, [rsp + 0x58]
call fcn.140015d60
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x50], rax
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rsp + rcx + 0x4c], edx
lea rax, vtable.std::ios_base.0
mov qword [rbp - 0x28], rax
lea rcx, [rbp - 0x28]
call fcn.140060930
nop
mov al, 1
mov rcx, qword [rbp + 0x120]
xor rcx, rsp
call fcn.14007bb60
lea r11, [rsp + 0x230]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140082b90
int3
call fcn.140002490
nop
call fcn.140002490
nop
call fcn.140002490
nop
call fcn.140082b90
nop
call fcn.140082b90
nop
call fcn.140082b90
nop
call fcn.140082b90
nop
call fcn.140082b90
nop
call fcn.140082b90
int3