Function at 0x140081d40
Capabilities:
Get common file path
Get file version info

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r15
lea rbp, [rsp - 0x760]
sub rsp, 0x860
mov rax, qword [0x14035b8c0]
xor rax, rsp
mov qword [rbp + 0x750], rax
mov r13, rdx
mov qword [rsp + 0x30], rcx
mov rbx, rcx
mov qword [rsp + 0x40], r8
xor esi, esi
lea rcx, [rbp + 0x350]
mov edx, 0x104
mov dword [rsp + 0x24], esi
mov r12, r8
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea ecx, [rsi + 0x20]
test eax, eax
je 0x14008317b
mov qword [rsp + 0x8b8], r14
lea r15, [rbp + 0x350]
mov r14d, 0x200
mov word [rbp + 0x556], si
lea rax, [rsp + 0x50]
mov edx, r14d
lea rcx, [rsp + 0x50]
sub r15, rax
nop dword [rax]
lea rax, [rdx + 0x7ffffdfe]
test rax, rax
je 0x140081df3
movzx eax, word [r15 + rcx]
test ax, ax
je 0x140081df3
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x140081dd0
lea rax, [rcx - 2]
test rdx, rdx
cmovne rax, rcx
mov rcx, r14
mov word [rax], si
lea rax, [rsp + 0x50]
nop dword [rax]
cmp word [rax], si
je 0x140081e1f
add rax, 2
sub rcx, 1
jne 0x140081e10
mov rax, r14
lea r12, str.ddraw.dll
sub rax, rcx
mov r8, rsi
test rcx, rcx
cmovne r8, rax
je 0x140081e8f
mov rdx, r14
lea rcx, [rsp + 0x50]
lea rcx, [rcx + r8*2]
sub rdx, r8
je 0x140081e81
lea rax, [r8 + 0x7ffffdff]
mov r9, r12
add rax, rdx
sub r9, rcx
nop dword [rax]
test rax, rax
je 0x140081e81
movzx r8d, word [rcx + r9]
test r8w, r8w
je 0x140081e81
mov word [rcx], r8w
dec rax
add rcx, 2
sub rdx, 1
jne 0x140081e60
test rdx, rdx
lea rax, [rcx - 2]
cmovne rax, rcx
mov word [rax], si
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x50]
call qword [sym.imp.VERSION.dll_GetFileVersionInfoSizeW]
mov dword [rsp + 0x20], eax
test eax, eax
je 0x140081ff3
mov ecx, eax
call fcn.14008a740
mov rbx, rax
test rax, rax
je 0x140081ff3
mov r8d, dword [rsp + 0x20]
lea rcx, [rsp + 0x50]
mov r9, rax
xor edx, edx
call qword [sym.imp.VERSION.dll_GetFileVersionInfoW]
test eax, eax
je 0x140081fe7
lea r9, [rsp + 0x20]
mov qword [rsp + 0x28], rsi
lea r8, [rsp + 0x28]
mov rcx, rbx
lea rdx, [0x1402f1f04]
call qword [sym.imp.VERSION.dll_VerQueryValueW]
test eax, eax
je 0x140081fe7
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x140081fe7
mov edi, dword [rax + 8]
mov rcx, rbx
mov esi, dword [rax + 0xc]
call fcn.14008a738
cmp edi, 0x40002
ja 0x140081f2d
jb 0x140081f64
cmp esi, 0x5f
jb 0x140081f64
mov rbx, qword [rsp + 0x30]
test rbx, rbx
je 0x140081f3d
mov dword [rbx], 1
xor edx, edx
test r13, r13
je 0x140081f48
mov dword [r13], edx
mov rax, qword [rsp + 0x40]
test rax, rax
je 0x140081f5a
mov ecx, 0x20
mov word [rax], cx
mov dword [rsp + 0x24], 1
jmp 0x140081f70
mov rbx, qword [rsp + 0x30]
xor edx, edx
mov rax, qword [rsp + 0x40]
cmp edi, 0x40003
ja 0x140081f82
jb 0x140081fab
cmp esi, 0x448
jb 0x140081fab
test rbx, rbx
je 0x140081f8d
mov dword [rbx], 2
test r13, r13
je 0x140081f96
mov dword [r13], edx
test rax, rax
je 0x140081fa3
mov ecx, 0x20
mov word [rax], cx
mov dword [rsp + 0x24], 1
cmp edi, 0x40004
ja 0x140081fba
jb 0x140081ff1
cmp esi, 0x44
jb 0x140081ff1
test rbx, rbx
je 0x140081fc5
mov dword [rbx], 3
xor esi, esi
test r13, r13
je 0x140081fd0
mov dword [r13], esi
test rax, rax
je 0x140081fdd
mov ecx, 0x20
mov word [rax], cx
mov dword [rsp + 0x24], 1
jmp 0x140081ff3
mov rcx, rbx
call fcn.14008a738
jmp 0x140081ff3
xor esi, esi
mov rdx, r14
lea rcx, [rsp + 0x50]
nop dword [rax + rax]
lea rax, [rdx + 0x7ffffdfe]
test rax, rax
je 0x140082023
movzx eax, word [r15 + rcx]
test ax, ax
je 0x140082023
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x140082000
lea rax, [rcx - 2]
test rdx, rdx
cmovne rax, rcx
mov rcx, r14
mov word [rax], si
lea rax, [rsp + 0x50]
nop dword [rax]
cmp word [rax], 0
je 0x140082050
add rax, 2
sub rcx, 1
jne 0x140082040
mov rax, r14
mov r8, rsi
sub rax, rcx
test rcx, rcx
cmovne r8, rax
je 0x1400820b4
mov rdx, r14
lea rcx, [rsp + 0x50]
lea rcx, [rcx + r8*2]
sub rdx, r8
je 0x1400820a6
add r8, 0x7ffffdff
lea r9, str.d3drg8x.dll
add r8, rdx
sub r9, rcx
test r8, r8
je 0x1400820a6
movzx eax, word [rcx + r9]
test ax, ax
je 0x1400820a6
mov word [rcx], ax
dec r8
add rcx, 2
sub rdx, 1
jne 0x140082087
test rdx, rdx
lea rax, [rcx - 2]
cmovne rax, rcx
mov word [rax], si
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x50]
call qword [sym.imp.VERSION.dll_GetFileVersionInfoSizeW]
mov dword [rsp + 0x20], eax
test eax, eax
je 0x14008218d
mov ecx, eax
call fcn.14008a740
mov rbx, rax
test rax, rax
je 0x14008218d
mov r8d, dword [rsp + 0x20]
lea rcx, [rsp + 0x50]
mov r9, rax
xor edx, edx
call qword [sym.imp.VERSION.dll_GetFileVersionInfoW]
test eax, eax
je 0x140082181
lea r9, [rsp + 0x20]
mov qword [rsp + 0x28], rsi
lea r8, [rsp + 0x28]
mov rcx, rbx
lea rdx, [0x1402f1f04]
call qword [sym.imp.VERSION.dll_VerQueryValueW]
test eax, eax
je 0x140082181
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x140082181
mov edi, dword [rax + 8]
mov rcx, rbx
mov esi, dword [rax + 0xc]
call fcn.14008a738
cmp edi, 0x40004
ja 0x14008214a
jb 0x14008218b
cmp esi, 0x46
jb 0x14008218b
mov rax, qword [rsp + 0x30]
test rax, rax
je 0x14008215a
mov dword [rax], 3
xor esi, esi
test r13, r13
je 0x140082165
mov dword [r13], esi
mov rax, qword [rsp + 0x40]
test rax, rax
je 0x140082177
mov ecx, 0x61
mov word [rax], cx
mov dword [rsp + 0x24], 1
jmp 0x14008218d
mov rcx, rbx
call fcn.14008a738
jmp 0x14008218d
xor esi, esi
mov rdx, r14
lea rcx, [rsp + 0x50]
nop word [rax + rax]
lea rax, [rdx + 0x7ffffdfe]
test rax, rax
je 0x1400821c3
movzx eax, word [r15 + rcx]
test ax, ax
je 0x1400821c3
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x1400821a0
lea rax, [rcx - 2]
test rdx, rdx
cmovne rax, rcx
mov rcx, r14
mov word [rax], si
lea rax, [rsp + 0x50]
nop dword [rax]
cmp word [rax], 0
je 0x1400821f0
add rax, 2
sub rcx, 1
jne 0x1400821e0
mov rax, r14
mov r8, rsi
sub rax, rcx
test rcx, rcx
cmovne r8, rax
je 0x140082252
mov rdx, r14
lea rcx, [rsp + 0x50]
lea rcx, [rcx + r8*2]
sub rdx, r8
je 0x140082244
lea rax, [r8 + 0x7ffffdff]
mov r9, r12
add rax, rdx
sub r9, rcx
test rax, rax
je 0x140082244
movzx r8d, word [rcx + r9]
test r8w, r8w
je 0x140082244
mov word [rcx], r8w
dec rax
add rcx, 2
sub rdx, 1
jne 0x140082223
test rdx, rdx
lea rax, [rcx - 2]
cmovne rax, rcx
mov word [rax], si
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x50]
call qword [sym.imp.VERSION.dll_GetFileVersionInfoSizeW]
mov dword [rsp + 0x20], eax
test eax, eax
je 0x1400823b6
mov ecx, eax
call fcn.14008a740
mov rbx, rax
test rax, rax
je 0x1400823b6
mov r8d, dword [rsp + 0x20]
lea rcx, [rsp + 0x50]
mov r9, rax
xor edx, edx
call qword [sym.imp.VERSION.dll_GetFileVersionInfoW]
test eax, eax
je 0x1400826e2
lea r9, [rsp + 0x20]
mov qword [rsp + 0x28], rsi
lea r8, [rsp + 0x28]
mov rcx, rbx
lea rdx, [0x1402f1f04]
call qword [sym.imp.VERSION.dll_VerQueryValueW]
test eax, eax
je 0x1400826e2
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x1400826e2
mov edi, dword [rax + 8]
mov rcx, rbx
mov esi, dword [rax + 0xc]
call fcn.14008a738
cmp edi, 0x40005
ja 0x1400822f3
jb 0x14008232c
cmp esi, 0x9b
jb 0x14008232c
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140082303
mov dword [rcx], 5
xor edx, edx
test r13, r13
je 0x14008230e
mov dword [r13], edx
mov rax, qword [rsp + 0x40]
mov r8d, 0x20
test rax, rax
je 0x140082322
mov word [rax], r8w
mov dword [rsp + 0x24], 1
jmp 0x14008233e
mov rcx, qword [rsp + 0x30]
mov r8d, 0x20
mov rax, qword [rsp + 0x40]
xor edx, edx
cmp edi, 0x40006
ja 0x140082350
jb 0x1400823b4
cmp esi, 0x13e
jb 0x140082375
test rcx, rcx
je 0x14008235b
mov dword [rcx], 6
test r13, r13
je 0x140082364
mov dword [r13], edx
test rax, rax
je 0x14008236d
mov word [rax], r8w
mov dword [rsp + 0x24], 1
cmp edi, 0x40006
ja 0x140082387
jb 0x1400823b4
cmp esi, 0x1b4
jb 0x1400823b4
test rcx, rcx
je 0x140082392
mov dword [rcx], 6
test r13, r13
je 0x14008239f
mov dword [r13], 1
test rax, rax
je 0x1400823ac
mov ecx, 0x20
mov word [rax], cx
mov dword [rsp + 0x24], 1
xor esi, esi
mov rdx, r14
lea rcx, [rsp + 0x50]
nop
lea rax, [rdx + 0x7ffffdfe]
test rax, rax
je 0x1400823e3
movzx eax, word [r15 + rcx]
test ax, ax
je 0x1400823e3
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x1400823c0
lea rax, [rcx - 2]
test rdx, rdx
cmovne rax, rcx
mov rcx, r14
mov word [rax], si
lea rax, [rsp + 0x50]
nop dword [rax]
cmp word [rax], 0
je 0x140082410
add rax, 2
sub rcx, 1
jne 0x140082400
mov rax, r14
mov r8, rsi
sub rax, rcx
test rcx, rcx
cmovne r8, rax
je 0x140082474
mov rdx, r14
lea rcx, [rsp + 0x50]
lea rcx, [rcx + r8*2]
sub rdx, r8
je 0x140082466
add r8, 0x7ffffdff
lea r9, str.dplayx.dll
add r8, rdx
sub r9, rcx
test r8, r8
je 0x140082466
movzx eax, word [rcx + r9]
test ax, ax
je 0x140082466
mov word [rcx], ax
dec r8
add rcx, 2
sub rdx, 1
jne 0x140082447
test rdx, rdx
lea rax, [rcx - 2]
cmovne rax, rcx
mov word [rax], si
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x50]
call qword [sym.imp.VERSION.dll_GetFileVersionInfoSizeW]
mov dword [rsp + 0x20], eax
test eax, eax
je 0x14008254e
mov ecx, eax
call fcn.14008a740
mov rbx, rax
test rax, rax
je 0x14008254e
mov r8d, dword [rsp + 0x20]
lea rcx, [rsp + 0x50]
mov r9, rax
xor edx, edx
call qword [sym.imp.VERSION.dll_GetFileVersionInfoW]
test eax, eax
je 0x1400826ef
lea r9, [rsp + 0x20]
mov qword [rsp + 0x28], rsi
lea r8, [rsp + 0x28]
mov rcx, rbx
lea rdx, [0x1402f1f04]
call qword [sym.imp.VERSION.dll_VerQueryValueW]
test eax, eax
je 0x1400826ef
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x1400826ef
mov edi, dword [rax + 8]
mov rcx, rbx
mov esi, dword [rax + 0xc]
call fcn.14008a738
cmp edi, 0x40006
ja 0x140082515
jb 0x14008254c
cmp esi, 0x30206
jb 0x14008254c
mov rax, qword [rsp + 0x30]
test rax, rax
je 0x140082525
mov dword [rax], 6
test r13, r13
je 0x140082532
mov dword [r13], 1
mov rax, qword [rsp + 0x40]
test rax, rax
je 0x140082544
mov ecx, 0x61
mov word [rax], cx
mov dword [rsp + 0x24], 1
xor esi, esi
mov rdx, r14
lea rcx, [rsp + 0x50]
nop word [rax + rax]
lea rax, [rdx + 0x7ffffdfe]
test rax, rax
je 0x140082583
movzx eax, word [r15 + rcx]
test ax, ax
je 0x140082583
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x140082560
lea rax, [rcx - 2]
test rdx, rdx
cmovne rax, rcx
mov rcx, r14
mov word [rax], si
lea rax, [rsp + 0x50]
nop dword [rax]
cmp word [rax], 0
je 0x1400825b0
add rax, 2
sub rcx, 1
jne 0x1400825a0
mov rax, r14
mov r8, rsi
sub rax, rcx
test rcx, rcx
cmovne r8, rax
je 0x140082612
mov rdx, r14
lea rcx, [rsp + 0x50]
lea rcx, [rcx + r8*2]
sub rdx, r8
je 0x140082604
lea rax, [r8 + 0x7ffffdff]
mov r9, r12
add rax, rdx
sub r9, rcx
test rax, rax
je 0x140082604
movzx r8d, word [rcx + r9]
test r8w, r8w
je 0x140082604
mov word [rcx], r8w
dec rax
add rcx, 2
sub rdx, 1
jne 0x1400825e3
test rdx, rdx
lea rax, [rcx - 2]
cmovne rax, rcx
mov word [rax], si
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x50]
call qword [sym.imp.VERSION.dll_GetFileVersionInfoSizeW]
mov dword [rsp + 0x20], eax
test eax, eax
je 0x140082708
mov ecx, eax
call fcn.14008a740
mov rbx, rax
test rax, rax
je 0x140082708
mov r8d, dword [rsp + 0x20]
lea rcx, [rsp + 0x50]
mov r9, rax
xor edx, edx
call qword [sym.imp.VERSION.dll_GetFileVersionInfoW]
test eax, eax
je 0x1400826fc
lea r9, [rsp + 0x20]
mov qword [rsp + 0x28], rsi
lea r8, [rsp + 0x28]
mov rcx, rbx
lea rdx, [0x1402f1f04]
call qword [sym.imp.VERSION.dll_VerQueryValueW]
test eax, eax
je 0x1400826fc
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x1400826fc
mov edi, dword [rax + 8]
mov rcx, rbx
mov esi, dword [rax + 0xc]
call fcn.14008a738
cmp edi, 0x40007
ja 0x1400826ab
jb 0x140082706
cmp esi, 0x2bc
jb 0x140082706
mov rax, qword [rsp + 0x30]
test rax, rax
je 0x1400826bb
mov dword [rax], 7
xor esi, esi
test r13, r13
je 0x1400826c6
mov dword [r13], esi
mov rax, qword [rsp + 0x40]
test rax, rax
je 0x1400826d8
mov ecx, 0x20
mov word [rax], cx
mov dword [rsp + 0x24], 1
jmp 0x140082708
mov rcx, rbx
call fcn.14008a738
jmp 0x1400823b6
mov rcx, rbx
call fcn.14008a738
jmp 0x14008254e
mov rcx, rbx
call fcn.14008a738
jmp 0x140082708
xor esi, esi
mov rdx, r14
lea rcx, [rsp + 0x50]
lea rax, [rdx + 0x7ffffdfe]
test rax, rax
je 0x140082733
movzx eax, word [r15 + rcx]
test ax, ax
je 0x140082733
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x140082710
lea rax, [rcx - 2]
test rdx, rdx
cmovne rax, rcx
mov rcx, r14
mov word [rax], si
lea rax, [rsp + 0x50]
nop dword [rax]
cmp word [rax], 0
je 0x140082760
add rax, 2
sub rcx, 1
jne 0x140082750
mov rax, r14
mov r8, rsi
sub rax, rcx
test rcx, rcx
cmovne r8, rax
je 0x1400827c4
mov rdx, r14
lea rcx, [rsp + 0x50]
lea rcx, [rcx + r8*2]
sub rdx, r8
je 0x1400827b6
add r8, 0x7ffffdff
lea r9, str.dinput.dll
add r8, rdx
sub r9, rcx
test r8, r8
je 0x1400827b6
movzx eax, word [rcx + r9]
test ax, ax
je 0x1400827b6
mov word [rcx], ax
dec r8
add rcx, 2
sub rdx, 1
jne 0x140082797
test rdx, rdx
lea rax, [rcx - 2]
cmovne rax, rcx
mov word [rax], si
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x50]
call qword [sym.imp.VERSION.dll_GetFileVersionInfoSizeW]
mov dword [rsp + 0x20], eax
test eax, eax
je 0x1400828a0
mov ecx, eax
call fcn.14008a740
mov rbx, rax
test rax, rax
je 0x1400828a0
mov r8d, dword [rsp + 0x20]
lea rcx, [rsp + 0x50]
mov r9, rax
xor edx, edx
call qword [sym.imp.VERSION.dll_GetFileVersionInfoW]
test eax, eax
je 0x140082894
lea r9, [rsp + 0x20]
mov qword [rsp + 0x28], rsi
lea r8, [rsp + 0x28]
mov rcx, rbx
lea rdx, [0x1402f1f04]
call qword [sym.imp.VERSION.dll_VerQueryValueW]
test eax, eax
je 0x140082894
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x140082894
mov edi, dword [rax + 8]
mov rcx, rbx
mov esi, dword [rax + 0xc]
call fcn.14008a738
cmp edi, 0x40007
ja 0x14008285d
jb 0x14008289e
cmp esi, 0x2cc
jb 0x14008289e
mov rax, qword [rsp + 0x30]
test rax, rax
je 0x14008286d
mov dword [rax], 7
xor esi, esi
test r13, r13
je 0x140082878
mov dword [r13], esi
mov rax, qword [rsp + 0x40]
test rax, rax
je 0x14008288a
mov ecx, 0x61
mov word [rax], cx
mov dword [rsp + 0x24], 1
jmp 0x1400828a0
mov rcx, rbx
call fcn.14008a738
jmp 0x1400828a0
xor esi, esi
mov rdx, r14
lea rcx, [rsp + 0x50]
nop dword [rax + rax]
lea rax, [rdx + 0x7ffffdfe]
test rax, rax
je 0x1400828d3
movzx eax, word [r15 + rcx]
test ax, ax
je 0x1400828d3
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x1400828b0
lea rax, [rcx - 2]
test rdx, rdx
cmovne rax, rcx
mov rcx, r14
mov word [rax], si
lea rax, [rsp + 0x50]
nop dword [rax]
cmp word [rax], 0
je 0x140082900
add rax, 2
sub rcx, 1
jne 0x1400828f0
mov rax, r14
mov r8, rsi
sub rax, rcx
test rcx, rcx
cmovne r8, rax
je 0x14008295f
mov rdx, r14
lea rcx, [rsp + 0x50]
lea rcx, [rcx + r8*2]
sub rdx, r8
je 0x140082951
lea rax, [r8 + 0x7ffffdff]
add rax, rdx
sub r12, rcx
test rax, rax
je 0x140082951
movzx r8d, word [rcx + r12]
test r8w, r8w
je 0x140082951
mov word [rcx], r8w
dec rax
add rcx, 2
sub rdx, 1
jne 0x140082930
test rdx, rdx
lea rax, [rcx - 2]
cmovne rax, rcx
mov word [rax], si
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x50]
call qword [sym.imp.VERSION.dll_GetFileVersionInfoSizeW]
mov dword [rsp + 0x20], eax
test eax, eax
je 0x140082a64
mov ecx, eax
call fcn.14008a740
mov rdi, rax
test rax, rax
je 0x140082a64
mov r8d, dword [rsp + 0x20]
lea rcx, [rsp + 0x50]
mov r9, rax
xor edx, edx
call qword [sym.imp.VERSION.dll_GetFileVersionInfoW]
test eax, eax
je 0x140082a58
lea r9, [rsp + 0x20]
mov qword [rsp + 0x28], rsi
lea r8, [rsp + 0x28]
mov rcx, rdi
lea rdx, [0x1402f1f04]
call qword [sym.imp.VERSION.dll_VerQueryValueW]
test eax, eax
je 0x140082a58
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x140082a58
mov ebx, dword [rax + 8]
mov rcx, rdi
mov esi, dword [rax + 0xc]
call fcn.14008a738
mov eax, ebx
shr eax, 0x10
cmp ax, 4
jne 0x140082a07
cmp ebx, 0x40008
ja 0x140082a1f
jb 0x140082a07
cmp esi, 0x18f
ja 0x140082a1f
cmp ax, 5
jne 0x140082a62
cmp ebx, 0x50001
ja 0x140082a1f
jb 0x140082a62
cmp esi, 0x8d20190
jb 0x140082a62
mov rax, qword [rsp + 0x30]
test rax, rax
je 0x140082a2f
mov dword [rax], 8
xor esi, esi
test r13, r13
je 0x140082a3a
mov dword [r13], esi
mov r12, qword [rsp + 0x40]
test r12, r12
je 0x140082a4e
mov eax, 0x20
mov word [r12], ax
mov dword [rsp + 0x24], 1
jmp 0x140082a69
mov rcx, rdi
call fcn.14008a738
jmp 0x140082a64
xor esi, esi
mov r12, qword [rsp + 0x40]
mov rdx, r14
lea rcx, [rsp + 0x50]
lea rax, [rdx + 0x7ffffdfe]
test rax, rax
je 0x140082a94
movzx eax, word [rcx + r15]
test ax, ax
je 0x140082a94
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x140082a71
lea rax, [rcx - 2]
test rdx, rdx
cmovne rax, rcx
mov rcx, r14
mov word [rax], si
lea rax, [rsp + 0x50]
nop word [rax + rax]
cmp word [rax], 0
je 0x140082ac0
add rax, 2
sub rcx, 1
jne 0x140082ab0
mov rax, r14
mov r8, rsi
sub rax, rcx
test rcx, rcx
cmovne r8, rax
je 0x140082b24
mov rdx, r14
lea rcx, [rsp + 0x50]
lea rcx, [rcx + r8*2]
sub rdx, r8
je 0x140082b16
add r8, 0x7ffffdff
lea r9, str.d3d8.dll
add r8, rdx
sub r9, rcx
test r8, r8
je 0x140082b16
movzx eax, word [r9 + rcx]
test ax, ax
je 0x140082b16
mov word [rcx], ax
dec r8
add rcx, 2
sub rdx, 1
jne 0x140082af7
test rdx, rdx
lea rax, [rcx - 2]
cmovne rax, rcx
mov word [rax], si
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x50]
call qword [sym.imp.VERSION.dll_GetFileVersionInfoSizeW]
mov dword [rsp + 0x20], eax
test eax, eax
je 0x140082c84
mov ecx, eax
call fcn.14008a740
mov rdi, rax
test rax, rax
je 0x140082c84
mov r8d, dword [rsp + 0x20]
lea rcx, [rsp + 0x50]
mov r9, rax
xor edx, edx
call qword [sym.imp.VERSION.dll_GetFileVersionInfoW]
test eax, eax
je 0x140082fdd
lea r9, [rsp + 0x20]
mov qword [rsp + 0x28], rsi
lea r8, [rsp + 0x28]
mov rcx, rdi
lea rdx, [0x1402f1f04]
call qword [sym.imp.VERSION.dll_VerQueryValueW]
test eax, eax
je 0x140082fdd
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x140082fdd
mov ebx, dword [rax + 8]
mov rcx, rdi
mov esi, dword [rax + 0xc]
call fcn.14008a738
mov eax, ebx
shr eax, 0x10
cmp ax, 4
jne 0x140082bd0
cmp ebx, 0x40008
ja 0x140082be8
jb 0x140082bd0
cmp esi, 0x10370
ja 0x140082be8
cmp ax, 5
jne 0x140082c1e
cmp ebx, 0x50001
ja 0x140082be8
jb 0x140082c1e
cmp esi, 0xa280371
jb 0x140082c1e
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140082bf8
mov dword [rcx], 8
test r13, r13
je 0x140082c05
mov dword [r13], 1
test r12, r12
je 0x140082c14
mov edx, 0x20
mov word [r12], dx
mov dword [rsp + 0x24], 1
jmp 0x140082c23
mov rcx, qword [rsp + 0x30]
cmp ax, 4
jne 0x140082c3b
cmp ebx, 0x40008
ja 0x140082c53
jb 0x140082c3b
cmp esi, 0x10384
ja 0x140082c53
cmp ax, 5
jne 0x140082c82
cmp ebx, 0x50001
ja 0x140082c53
jb 0x140082c82
cmp esi, 0xa280385
jb 0x140082c82
test rcx, rcx
je 0x140082c5e
mov dword [rcx], 8
test r13, r13
je 0x140082c6b
mov dword [r13], 1
test r12, r12
je 0x140082c7a
mov eax, 0x61
mov word [r12], ax
mov dword [rsp + 0x24], 1
xor esi, esi
mov rdx, r14
lea rcx, [rsp + 0x50]
nop dword [rax]
lea rax, [rdx + 0x7ffffdfe]
test rax, rax
je 0x140082cb3
movzx eax, word [rcx + r15]
test ax, ax
je 0x140082cb3
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x140082c90
lea rax, [rcx - 2]
test rdx, rdx
cmovne rax, rcx
mov rcx, r14
mov word [rax], si
lea rax, [rsp + 0x50]
nop dword [rax]
cmp word [rax], 0
je 0x140082ce0
add rax, 2
sub rcx, 1
jne 0x140082cd0
mov rax, r14
mov r8, rsi
sub rax, rcx
test rcx, rcx
cmovne r8, rax
je 0x140082d46
mov rdx, r14
lea rcx, [rsp + 0x50]
lea rcx, [rcx + r8*2]
sub rdx, r8
je 0x140082d38
lea rax, [r8 + 0x7ffffdff]
add rax, rdx
lea r9, str.mpg2splt.ax
sub r9, rcx
test rax, rax
je 0x140082d38
movzx r8d, word [r9 + rcx]
test r8w, r8w
je 0x140082d38
mov word [rcx], r8w
dec rax
add rcx, 2
sub rdx, 1
jne 0x140082d17
test rdx, rdx
lea rax, [rcx - 2]
cmovne rax, rcx
mov word [rax], si
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x50]
call qword [sym.imp.VERSION.dll_GetFileVersionInfoSizeW]
mov dword [rsp + 0x20], eax
test eax, eax
je 0x140082e1d
mov ecx, eax
call fcn.14008a740
mov rbx, rax
test rax, rax
je 0x140082e1d
mov r8d, dword [rsp + 0x20]
lea rcx, [rsp + 0x50]
mov r9, rax
xor edx, edx
call qword [sym.imp.VERSION.dll_GetFileVersionInfoW]
test eax, eax
je 0x140082fea
lea r9, [rsp + 0x20]
mov qword [rsp + 0x28], rsi
lea r8, [rsp + 0x28]
mov rcx, rbx
lea rdx, [0x1402f1f04]
call qword [sym.imp.VERSION.dll_VerQueryValueW]
test eax, eax
je 0x140082fea
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x140082fea
mov edi, dword [rax + 8]
mov rcx, rbx
mov esi, dword [rax + 0xc]
call fcn.14008a738
cmp edi, 0x60003
ja 0x140082de7
jb 0x140082e1b
cmp esi, 0x10375
jb 0x140082e1b
mov rax, qword [rsp + 0x30]
test rax, rax
je 0x140082df7
mov dword [rax], 8
test r13, r13
je 0x140082e04
mov dword [r13], 1
test r12, r12
je 0x140082e13
mov eax, 0x62
mov word [r12], ax
mov dword [rsp + 0x24], 1
xor esi, esi
mov rdx, r14
lea rcx, [rsp + 0x50]
nop word [rax + rax]
lea rax, [rdx + 0x7ffffdfe]
test rax, rax
je 0x140082e53
movzx eax, word [rcx + r15]
test ax, ax
je 0x140082e53
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x140082e30
lea rax, [rcx - 2]
test rdx, rdx
cmovne rax, rcx
mov rcx, r14
mov word [rax], si
lea rax, [rsp + 0x50]
nop dword [rax]
cmp word [rax], 0
je 0x140082e80
add rax, 2
sub rcx, 1
jne 0x140082e70
mov rax, r14
mov r8, rsi
sub rax, rcx
test rcx, rcx
cmovne r8, rax
je 0x140082ee6
mov rdx, r14
lea rcx, [rsp + 0x50]
lea rcx, [rcx + r8*2]
sub rdx, r8
je 0x140082ed8
lea rax, [r8 + 0x7ffffdff]
add rax, rdx
lea r9, str.dpnet.dll
sub r9, rcx
test rax, rax
je 0x140082ed8
movzx r8d, word [rcx + r9]
test r8w, r8w
je 0x140082ed8
mov word [rcx], r8w
dec rax
add rcx, 2
sub rdx, 1
jne 0x140082eb7
test rdx, rdx
lea rax, [rcx - 2]
cmovne rax, rcx
mov word [rax], si
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x50]
call qword [sym.imp.VERSION.dll_GetFileVersionInfoSizeW]
mov dword [rsp + 0x20], eax
test eax, eax
je 0x140082fff
mov ecx, eax
call fcn.14008a740
mov rbx, rax
test rax, rax
je 0x140082fff
mov r8d, dword [rsp + 0x20]
lea rcx, [rsp + 0x50]
mov r9, rax
xor edx, edx
call qword [sym.imp.VERSION.dll_GetFileVersionInfoW]
test eax, eax
je 0x140082ff7
lea r9, [rsp + 0x20]
mov qword [rsp + 0x28], rsi
lea r8, [rsp + 0x28]
mov rcx, rbx
lea rdx, [0x1402f1f04]
call qword [sym.imp.VERSION.dll_VerQueryValueW]
test eax, eax
je 0x140082ff7
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x140082ff7
mov edi, dword [rax + 8]
mov rcx, rbx
mov esi, dword [rax + 0xc]
call fcn.14008a738
mov eax, edi
shr eax, 0x10
cmp ax, 4
jne 0x140082f92
cmp edi, 0x40009
ja 0x140082faa
jb 0x140082f92
cmp esi, 0x85
ja 0x140082faa
cmp ax, 5
jne 0x140082fff
cmp edi, 0x50002
ja 0x140082faa
jb 0x140082fff
cmp esi, 0xe5d0086
jb 0x140082fff
mov rdi, qword [rsp + 0x30]
test rdi, rdi
je 0x140082fba
mov dword [rdi], 8
test r13, r13
je 0x140082fc7
mov dword [r13], 2
test r12, r12
je 0x140082fd6
mov eax, 0x20
mov word [r12], ax
mov esi, 1
jmp 0x140083008
mov rcx, rdi
call fcn.14008a738
jmp 0x140082c84
mov rcx, rbx
call fcn.14008a738
jmp 0x140082e1d
mov rcx, rbx
call fcn.14008a738
mov esi, dword [rsp + 0x24]
mov rdi, qword [rsp + 0x30]
mov rdx, r14
lea rcx, [rsp + 0x50]
lea rax, [rdx + 0x7ffffdfe]
test rax, rax
je 0x140083033
movzx eax, word [rcx + r15]
test ax, ax
je 0x140083033
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x140083010
test rdx, rdx
lea rax, [rcx - 2]
cmovne rax, rcx
xor r15d, r15d
mov rcx, r14
mov word [rax], r15w
lea rax, [rsp + 0x50]
nop dword [rax]
cmp word [rax], r15w
je 0x140083060
add rax, 2
sub rcx, 1
jne 0x140083050
mov rax, r14
mov rdx, r15
sub rax, rcx
test rcx, rcx
cmovne rdx, rax
je 0x1400830c2
lea rcx, [rsp + 0x50]
lea rcx, [rcx + rdx*2]
sub r14, rdx
je 0x1400830b3
lea rax, [rdx + 0x7ffffdff]
add rax, r14
lea r8, str.d3d9.dll
sub r8, rcx
test rax, rax
je 0x1400830b3
movzx edx, word [r8 + rcx]
test dx, dx
je 0x1400830b3
mov word [rcx], dx
dec rax
add rcx, 2
sub r14, 1
jne 0x140083094
test r14, r14
lea rax, [rcx - 2]
cmovne rax, rcx
mov word [rax], r15w
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x50]
call qword [sym.imp.VERSION.dll_GetFileVersionInfoSizeW]
mov r14, qword [rsp + 0x8b8]
mov dword [rsp + 0x20], eax
test eax, eax
je 0x14008316d
mov ecx, eax
call fcn.14008a740
mov rbx, rax
test rax, rax
je 0x14008316d
mov r8d, dword [rsp + 0x20]
lea rcx, [rsp + 0x50]
mov r9, rax
xor edx, edx
call qword [sym.imp.VERSION.dll_GetFileVersionInfoW]
test eax, eax
je 0x140083165
lea r9, [rsp + 0x20]
mov qword [rsp + 0x28], r15
lea r8, [rsp + 0x28]
mov rcx, rbx
lea rdx, [0x1402f1f04]
call qword [sym.imp.VERSION.dll_VerQueryValueW]
test eax, eax
je 0x140083165
cmp qword [rsp + 0x28], r15
je 0x140083165
mov rcx, rbx
call fcn.14008a738
test rdi, rdi
je 0x14008314b
mov dword [rdi], 9
test r13, r13
je 0x140083154
mov dword [r13], r15d
test r12, r12
je 0x140083195
mov eax, 0x20
mov word [r12], ax
jmp 0x140083195
mov rcx, rbx
call fcn.14008a738
test esi, esi
jne 0x140083195
mov rbx, qword [rsp + 0x30]
xor esi, esi
lea ecx, [rsi + 0x20]
test rbx, rbx
je 0x140083182
mov dword [rbx], esi
test r13, r13
je 0x14008318b
mov dword [r13], esi
test r12, r12
je 0x140083195
mov word [r12], cx
xor eax, eax
mov rcx, qword [rbp + 0x750]
xor rcx, rsp
call fcn.140229750
add rsp, 0x860
pop r15
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret