Function at 0x140006450
Capabilities:
Get file version info

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x3c0
lea rbp, [rsp + 0x50]
and rbp, 0xffffffffffffffe0
mov rax, qword [0x14014b080]
xor rax, rsp
mov qword [rbp + 0x360], rax
mov r13, rdx
mov rdi, rcx
mov qword [rbp + 0x130], r8
test rdx, rdx
je 0x1400071ca
test r8, r8
je 0x1400071ca
xorps xmm0, xmm0
movups xmmword [rbp + 0x164], xmm0
movups xmmword [rbp + 0x174], xmm0
movups xmmword [rbp + 0x184], xmm0
movups xmmword [rbp + 0x194], xmm0
movups xmmword [rbp + 0x1a4], xmm0
movups xmmword [rbp + 0x1b4], xmm0
movups xmmword [rbp + 0x1c4], xmm0
movups xmmword [rbp + 0x1d4], xmm0
movups xmmword [rbp + 0x1e4], xmm0
mov dword [rbp + 0x160], __WSAFDIsSet
lea rcx, [rbp + 0x160]
call qword [sym.imp.KERNEL32.dll_GetVersionExA]
movabs rax, 0x5c04da5ebcba1d1c
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x60], rax
movabs rax, 0xe6d44fa242df67d5
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x68], rax
movabs rax, 0xd09f29a27e607b47
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x70], rax
movabs rcx, 0xffa7ab8b0c610d8a
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0x78], rax
movabs rax, 0x5c6ada2cbcdf1d77
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x2c0], rax
movabs rax, 0xe6e64f9142b367b0
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x2c8], rax
movabs rax, 0xd0f329ce7e047b69
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x2d0], rax
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0x2d8], rax
vmovdqu ymm0, ymmword [rbp + 0x60]
vpxor ymm1, ymm0, ymmword [rbp + 0x2c0]
vmovdqu ymmword [rbp + 0x60], ymm1
lea r8, [rbp + 0x138]
lea rdx, [rbp + 0x60]
mov ecx, 2
vzeroupper
call qword [sym.imp.VERSION.dll_GetFileVersionInfoSizeExW]
xorps xmm0, xmm0
mov r15d, eax
movdqu xmmword [rbp + 0x140], xmm0
xor r14d, r14d
mov qword [rbp + 0x150], r14
xor r12d, r12d
xor ebx, ebx
test eax, eax
je 0x140006662
cmp r15, 0x1000
jb 0x140006629
lea rcx, [r15 + 0x27]
cmp rcx, r15
jbe 0x1400071f6
call fcn.1400e7cd8
test rax, rax
je 0x1400071b3
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x140006634
mov rcx, r15
call fcn.1400e7cd8
mov rbx, rax
mov rsi, rbx
mov qword [rbp + 0x140], rbx
lea r14, [rbx + r15]
mov r12, r14
mov qword [rbp + 0x150], r14
mov r8, r15
xor edx, edx
mov rcx, rbx
call sub.VCRUNTIME140.dll_memset
mov qword [rbp + 0x148], r14
jmp 0x140006669
mov rsi, qword [rbp + 0x140]
sub r12, rbx
mov qword [rsp + 0x20], rsi
mov r9d, r12d
mov r8d, dword [rbp + 0x138]
lea rdx, [rbp + 0x60]
mov ecx, 2
call qword [sym.imp.VERSION.dll_GetFileVersionInfoExW]
xor r15d, r15d
mov qword [rbp + 0x120], r15
mov dword [rbp + 0x13c], r15d
lea r9, [rbp + 0x13c]
lea r8, [rbp + 0x120]
lea rdx, [0x1400fd8bc]
mov rcx, rsi
call qword [sym.imp.VERSION.dll_VerQueryValueW]
mov rax, qword [rbp + 0x120]
movzx ecx, word [rax + 0xe]
mov eax, 0x4a61
cmp cx, ax
jb 0x140006b0f
movabs rax, 0x1513a849c98e6939
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xa0], rax
movabs rax, 0x8f922efc30dc01de
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xa8], rax
movabs rax, 0xd0f344a10a451506
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xb0], rax
movabs r12, 0xffa7ab8b0c610d8a
mov qword [rbp], r12
mov rax, qword [rbp]
mov qword [rbp + 0xb8], rax
movabs r14, 0x5c6ada2cbcdf1d77
mov qword [rbp], r14
mov rax, qword [rbp]
mov qword [rbp + 0x2e0], rax
movabs r15, 0xe6e64f9142b367b0
mov qword [rbp], r15
mov rax, qword [rbp]
mov qword [rbp + 0x2e8], rax
movabs rbx, 0xd0f329ce7e047b69
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x2f0], rax
mov qword [rbp], r12
mov rax, qword [rbp]
mov qword [rbp + 0x2f8], rax
vmovdqu ymm0, ymmword [rbp + 0xa0]
vpxor ymm1, ymm0, ymmword [rbp + 0x2e0]
vmovdqa ymmword [rbp + 0xa0], ymm1
movabs rax, 0x300ef440d0bb6919
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x40], rax
movabs rax, 0xe6e64f9142b367dc
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x48], rax
mov qword [rbp], r14
mov rax, qword [rbp]
mov qword [rbp + 0x260], rax
mov qword [rbp], r15
mov rax, qword [rbp]
mov qword [rbp + 0x268], rax
vmovdqa xmm0, xmmword [rbp + 0x40]
vpxor xmm0, xmm0, xmmword [rbp + 0x260]
vmovdqa xmmword [rbp + 0x40], xmm0
lea rcx, [rbp + 0x40]
vzeroupper
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
lea rdx, [rbp + 0xa0]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rsi, rax
test rax, rax
je 0x140007146
mov word [rbp + 0x330], 0xb848
mov word [rbp + 0x33a], 0xe0ff
mov rcx, qword [rbp + 0x130]
mov qword [rbp + 0x332], rcx
movabs rax, 0x1513a849c98e6939
mov qword [rbp], rax
mov rcx, qword [rbp]
mov qword [rbp + 0x80], rcx
movabs rax, 0x8f922efc30dc01de
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x88], rax
movabs rax, 0xd0f344a10a451506
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x90], rax
mov qword [rbp], r12
mov rax, qword [rbp]
mov qword [rbp + 0x98], rax
mov qword [rbp], r14
mov rax, qword [rbp]
mov qword [rbp + 0x300], rax
mov qword [rbp], r15
mov rax, qword [rbp]
mov qword [rbp + 0x308], rax
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x310], rax
mov qword [rbp], r12
mov rax, qword [rbp]
mov qword [rbp + 0x318], rax
vmovdqu ymm0, ymmword [rbp + 0x80]
vpxor ymm1, ymm0, ymmword [rbp + 0x300]
vmovdqa ymmword [rbp + 0x80], ymm1
vxorps xmm0, xmm0, xmm0
vmovups xmmword [rbp + 0xc0], xmm0
vxorps xmm1, xmm1, xmm1
vmovdqu xmmword [rbp + 0xd0], xmm1
lea rax, [rbp + 0x80]
mov rbx, 0xffffffffffffffff
mov r8, rbx
vzeroupper
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140006930
lea rdx, [rbp + 0x80]
lea rcx, [rbp + 0xc0]
call fcn.140005ab0
nop
movabs rax, 0x3004a847cfb06919
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x340], rax
movabs rax, 0xe6e64f9127cb029e
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x348], rax
mov qword [rbp], r14
mov rax, qword [rbp]
mov qword [rbp + 0x200], rax
mov qword [rbp], r15
mov rax, qword [rbp]
mov qword [rbp + 0x208], rax
movdqa xmm0, xmmword [rbp + 0x340]
pxor xmm0, xmmword [rbp + 0x200]
movdqa xmmword [rbp + 0x340], xmm0
xorps xmm0, xmm0
movups xmmword [rbp + 0x220], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x230], xmm1
lea rax, [rbp + 0x340]
inc rbx
cmp byte [rax + rbx], 0
jne 0x1400069d2
mov r8, rbx
lea rdx, [rbp + 0x340]
lea rcx, [rbp + 0x220]
call fcn.140005ab0
nop
lea rcx, [rbp + 0x220]
call fcn.140009e30
mov rdx, rax
lea r8, [rbp + 0xc0]
mov rcx, rdi
call fcn.1400030f0
mov rbx, rax
mov rdx, qword [rbp + 0x238]
cmp rdx, 0x10
jb 0x140006a57
inc rdx
mov rcx, qword [rbp + 0x220]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006a52
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140006a52
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400e7f64
movdqa xmm0, xmmword [0x1401371a0]
movdqu xmmword [rbp + 0x230], xmm0
mov byte [rbp + 0x220], 0
mov rdx, qword [rbp + 0xd8]
cmp rdx, 0x10
jb 0x140006ab2
inc rdx
mov rcx, qword [rbp + 0xc0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006aad
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140006aad
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400e7f64
test rbx, rbx
je 0x140007146
mov r9d, ntohs
mov r8, rbx
lea rdx, [rbp + 0x350]
mov rcx, rdi
call fcn.140002920
test al, al
je 0x140007146
mov r9d, ntohs
lea r8, [rbp + 0x330]
mov rdx, rbx
mov rcx, rdi
call fcn.140002a60
test al, al
je 0x140007146
call rsi
mov r9d, ntohs
lea r8, [rbp + 0x350]
jmp 0x140007167
mov eax, 0x47ba
cmp cx, ax
jb 0x140006f6b
movabs rax, 0x180e9e45d8986939
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x20], rax
movabs rax, 0x8f8723f227e12ef4
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x28], rax
movabs rax, 0xa4924aa112683a04
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x30], rax
movabs rax, 0xffa7abb97f0f62e3
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x38], rax
movabs rbx, 0x5c6ada2cbcdf1d77
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x240], rax
movabs r14, 0xe6e64f9142b367b0
mov qword [rbp], r14
mov rax, qword [rbp]
mov qword [rbp + 0x248], rax
movabs rax, 0xd0f329ce7e047b69
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x250], rax
movabs r12, 0xffa7ab8b0c610d8a
mov qword [rbp], r12
mov rax, qword [rbp]
mov qword [rbp + 0x258], rax
vmovdqu ymm0, ymmword [rbp + 0x20]
vpxor ymm1, ymm0, ymmword [rbp + 0x240]
vmovdqa ymmword [rbp + 0x20], ymm1
movabs rax, 0x301fbc1e8fb67910
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x50], rax
movabs rax, 0xe6e64ffd2ed749dc
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x58], rax
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x210], rax
mov qword [rbp], r14
mov rax, qword [rbp]
mov qword [rbp + 0x218], rax
vmovdqa xmm0, xmmword [rbp + 0x50]
vpxor xmm0, xmm0, xmmword [rbp + 0x210]
vmovdqa xmmword [rbp + 0x50], xmm0
lea rcx, [rbp + 0x50]
vzeroupper
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
lea rdx, [rbp + 0x20]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rsi, rax
movabs rax, 0x280f9d45d8986939
mov qword [rbp], rax
mov rcx, qword [rbp]
mov qword [rbp + 0xe0], rcx
movabs rax, 0x968b20d212e328f3
mov qword [rbp], rax
mov rcx, qword [rbp]
mov qword [rbp + 0xe8], rcx
movabs rax, 0x80bc4ca21c6d0f08
mov qword [rbp], rax
mov rcx, qword [rbp]
mov qword [rbp + 0xf0], rcx
movabs rax, 0x9ecad9e46a0f44c7
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xf8], rax
movabs rax, 0xc115c0b80a63942f
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x100], rax
movabs rcx, 0xfaf69c6d26537484
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0x108], rax
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x280], rax
mov qword [rbp], r14
mov rax, qword [rbp]
mov qword [rbp + 0x288], rax
movabs rax, 0xd0f329ce7e047b69
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x290], rax
mov qword [rbp], r12
mov rax, qword [rbp]
mov qword [rbp + 0x298], rax
movabs rax, 0xc115c0b8640cfd5b
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x2a0], rax
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0x2a8], rax
vmovdqu ymm0, ymmword [rbp + 0xe0]
vpxor ymm1, ymm0, ymmword [rbp + 0x280]
vmovdqa ymmword [rbp + 0xe0], ymm1
vmovdqa xmm0, xmmword [rbp + 0x100]
vpxor xmm0, xmm0, xmmword [rbp + 0x2a0]
vmovdqa xmmword [rbp + 0x100], xmm0
movabs rax, 0x3844af1e8fb17400
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x200], rax
movabs rax, 0xe6e64f9142b30bdc
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x208], rax
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x220], rax
mov qword [rbp], r14
mov rax, qword [rbp]
mov qword [rbp + 0x228], rax
vmovdqa xmm0, xmmword [rbp + 0x200]
vpxor xmm0, xmm0, xmmword [rbp + 0x220]
vmovdqa xmmword [rbp + 0x200], xmm0
lea rcx, [rbp + 0x200]
vzeroupper
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
lea rdx, [rbp + 0xe0]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
test rsi, rsi
jne 0x140006e40
test rbx, rbx
jne 0x140006e40
mov r14, qword [rbp + 0x150]
mov rsi, qword [rbp + 0x140]
jmp 0x14000718a
mov qword [rbp + 0x210], r15
mov qword [rbp + 0x320], 0xb848
mov dword [rbp + 0x328], 0xe0ff0000
mov qword [rbp + 0x128], r15
lea rdx, [rbp + 0x210]
mov rcx, rdi
test rsi, rsi
je 0x140006ee9
lea r8, [rbp + 0x128]
call fcn.140003410
test al, al
jne 0x140006e97
xor bl, bl
mov r14, qword [rbp + 0x150]
mov rsi, qword [rbp + 0x140]
jmp 0x14000718a
mov r9d, 8
lea r8, [rbp + 0x130]
mov r14, qword [rbp + 0x210]
mov rdx, r14
mov rcx, rdi
call fcn.140002a60
test al, al
jne 0x140006ecf
xor bl, bl
mov r14, qword [rbp + 0x150]
mov rsi, qword [rbp + 0x140]
jmp 0x14000718a
mov rbx, rsi
call rbx
mov r9d, 8
lea r8, [rbp + 0x128]
mov rdx, r14
jmp 0x14000716a
lea r8, [rbp + 0x340]
call fcn.140003730
test al, al
jne 0x140006f0e
xor bl, bl
mov r14, qword [rbp + 0x150]
mov rsi, qword [rbp + 0x140]
jmp 0x14000718a
mov rax, qword [rbp + 0x130]
mov qword [rbp + 0x322], rax
mov r9d, ntohs
lea r8, [rbp + 0x320]
mov r14, qword [rbp + 0x210]
mov rdx, r14
mov rcx, rdi
call fcn.140002a60
test al, al
jne 0x140006f54
xor bl, bl
mov r14, qword [rbp + 0x150]
mov rsi, qword [rbp + 0x140]
jmp 0x14000718a
call rbx
mov r9d, ntohs
lea r8, [rbp + 0x340]
mov rdx, r14
jmp 0x14000716a
mov eax, 0x42ee
cmp cx, ax
jb 0x140007188
movabs rax, 0x180e9e45d8986939
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x20], rax
movabs rax, 0x8f8723f227e12ef4
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x28], rax
movabs rax, 0xa4924aa112683a04
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x30], rax
movabs rax, 0xffa7abb97f0f62e3
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x38], rax
movabs rcx, 0x5c6ada2cbcdf1d77
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0x240], rax
movabs rdx, 0xe6e64f9142b367b0
mov qword [rbp], rdx
mov rax, qword [rbp]
mov qword [rbp + 0x248], rax
movabs rax, 0xd0f329ce7e047b69
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x250], rax
movabs r12, 0xffa7ab8b0c610d8a
mov qword [rbp], r12
mov rax, qword [rbp]
mov qword [rbp + 0x258], rax
vmovdqu ymm0, ymmword [rbp + 0x20]
vpxor ymm1, ymm0, ymmword [rbp + 0x240]
vmovdqa ymmword [rbp + 0x20], ymm1
movabs rax, 0x301fbc1e8fb67910
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x200], rax
movabs rax, 0xe6e64ffd2ed749dc
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x208], rax
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0x220], rax
mov qword [rbp], rdx
mov rax, qword [rbp]
mov qword [rbp + 0x228], rax
vmovdqa xmm0, xmmword [rbp + 0x200]
vpxor xmm0, xmm0, xmmword [rbp + 0x220]
vmovdqa xmmword [rbp + 0x200], xmm0
lea rcx, [rbp + 0x200]
vzeroupper
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
lea rdx, [rbp + 0x20]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rsi, rax
test rax, rax
jne 0x1400070e9
xor bl, bl
mov r14, qword [rbp + 0x150]
mov rsi, qword [rbp + 0x140]
jmp 0x14000718a
mov qword [rbp + 0x128], r15
mov qword [rbp + 0x210], r15
lea r8, [rbp + 0x210]
lea rdx, [rbp + 0x128]
mov rcx, rdi
call fcn.140003410
test al, al
jne 0x140007123
xor bl, bl
mov r14, qword [rbp + 0x150]
mov rsi, qword [rbp + 0x140]
jmp 0x14000718a
mov r9d, 8
lea r8, [rbp + 0x130]
mov rbx, qword [rbp + 0x128]
mov rdx, rbx
mov rcx, rdi
call fcn.140002a60
test al, al
jne 0x140007158
xor bl, bl
mov r14, qword [rbp + 0x150]
mov rsi, qword [rbp + 0x140]
jmp 0x14000718a
call rsi
mov r9d, 8
lea r8, [rbp + 0x210]
mov rdx, rbx
mov dword [r13], eax
mov rcx, rdi
call fcn.140002a60
mov bl, 1
mov r14, qword [rbp + 0x150]
mov rsi, qword [rbp + 0x140]
jmp 0x14000718a
xor bl, bl
test rsi, rsi
je 0x1400071c5
sub r14, rsi
mov rax, rsi
cmp r14, 0x1000
jb 0x1400071ba
add r14, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400071ba
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rdx, r14
mov rcx, rsi
call fcn.1400e7f64
movzx eax, bl
jmp 0x1400071cc
xor al, al
mov rcx, qword [rbp + 0x360]
xor rcx, rsp
call fcn.1400e7a20
mov rbx, qword [rsp + 0x418]
add rsp, 0x3c0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140001db0
int3