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

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x950
mov qword [rsp + 0x120], 0xfffffffffffffffe
mov qword [rsp + 0x9a8], rbx
mov rax, qword [0x140210348]
xor rax, rsp
mov qword [rsp + 0x940], rax
mov r14, r8
mov r15, rdx
mov rbp, rcx
mov qword [rsp + 0x38], rcx
xor r13d, r13d
mov dword [rsp + 0x28], r13d
mov edx, 0x104
lea rcx, [rsp + 0x540]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
test eax, eax
je 0x1400b6ad7
mov word [rsp + 0x746], r13w
mov r13d, 0x200
mov rdx, r13
lea rcx, [rsp + 0x140]
lea r12, [rsp + 0x540]
lea rax, [rsp + 0x140]
sub r12, rax
nop
nop
nop
lea rax, [rdx + 0x7ffffdfe]
test rax, rax
je 0x1400b5415
movzx eax, word [r12 + rcx]
test ax, ax
je 0x1400b5415
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x1400b53f0
jmp 0x1400b541a
test rdx, rdx
jne 0x1400b541e
sub rcx, 2
mov word [rcx], 0
mov rcx, r13
lea rax, [rsp + 0x140]
nop
lea rbp, str.ddraw.dll
cmp word [rax], 0
je 0x1400b5449
add rax, 2
sub rcx, 1
jne 0x1400b5430
jmp 0x1400b54b0
test rcx, rcx
je 0x1400b54b0
mov rdx, r13
sub rdx, rcx
mov qword [rsp + 0xe8], rdx
mov rcx, r13
sub rcx, rdx
lea rax, [rsp + rdx*2 + 0x140]
je 0x1400b54a7
lea rdx, [rcx + rdx + 0x7ffffdff]
mov r8, rbp
sub r8, rax
nop
nop
test rdx, rdx
je 0x1400b54a2
movzx edi, word [r8 + rax]
test di, di
je 0x1400b54a2
mov word [rax], di
add rax, 2
sub rdx, 1
sub rcx, 1
jne 0x1400b5480
jmp 0x1400b54a7
test rcx, rcx
jne 0x1400b54ab
sub rax, 2
mov word [rax], 0
lea rdx, [rsp + 0xe0]
lea rcx, [rsp + 0x140]
call sub.VERSION.dll_GetFileVersionInfoSizeW
mov dword [rsp + 0x50], eax
test eax, eax
je 0x1400b5673
mov ecx, eax
call fcn.14013d074
mov rdi, rax
test rax, rax
je 0x1400b5673
mov r9, rax
mov r8d, dword [rsp + 0x50]
xor edx, edx
lea rcx, [rsp + 0x140]
call sub.VERSION.dll_GetFileVersionInfoW
test eax, eax
je 0x1400b566b
mov qword [rsp + 0x68], 0
lea r9, [rsp + 0x50]
lea r8, [rsp + 0x68]
lea rdx, [0x14019eaf8]
mov rcx, rdi
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x1400b566b
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x1400b566b
mov esi, dword [rax + 8]
mov dword [rsp + 0x34], esi
mov ebx, dword [rax + 0xc]
mov dword [rsp + 0x30], ebx
mov rcx, rdi
call fcn.14013d06c
mov dword [rsp + 0x24], 0x40002
mov dword [rsp + 0x20], 0x5f
mov rax, qword [rsp + 0x20]
shr rax, 0x20
cmp esi, eax
ja 0x1400b557c
cmp esi, eax
jb 0x1400b55b4
cmp ebx, 0x5f
ja 0x1400b557c
cmp ebx, 0x5f
jb 0x1400b55ad
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x1400b558c
mov dword [rcx], 1
test r15, r15
je 0x1400b5598
mov dword [r15], 0
test r14, r14
je 0x1400b55a3
mov word [r14], 0x20
mov dword [rsp + 0x28], 1
jmp 0x1400b55b9
mov rcx, qword [rsp + 0x38]
jmp 0x1400b55b9
mov rcx, qword [rsp + 0x38]
mov dword [rsp + 0x24], 0x40003
mov dword [rsp + 0x20], 0x448
mov rax, qword [rsp + 0x20]
shr rax, 0x20
cmp esi, eax
ja 0x1400b55ea
cmp esi, eax
jb 0x1400b5614
cmp ebx, 0x448
ja 0x1400b55ea
cmp ebx, 0x448
jb 0x1400b5614
test rcx, rcx
je 0x1400b55f5
mov dword [rcx], 2
test r15, r15
je 0x1400b5601
mov dword [r15], 0
test r14, r14
je 0x1400b560c
mov word [r14], 0x20
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x24], 0x40004
mov dword [rsp + 0x20], 0x44
mov rax, qword [rsp + 0x20]
shr rax, 0x20
cmp esi, eax
ja 0x1400b563f
cmp esi, eax
jb 0x1400b5673
cmp ebx, 0x44
ja 0x1400b563f
cmp ebx, 0x44
jb 0x1400b5673
test rcx, rcx
je 0x1400b564a
mov dword [rcx], 3
test r15, r15
je 0x1400b5656
mov dword [r15], 0
test r14, r14
je 0x1400b5661
mov word [r14], 0x20
mov dword [rsp + 0x28], 1
jmp 0x1400b5673
mov rcx, rdi
call fcn.14013d06c
mov rdx, r13
lea rcx, [rsp + 0x140]
nop
lea rax, [rdx + 0x7ffffdfe]
test rax, rax
je 0x1400b56a5
movzx eax, word [r12 + rcx]
test ax, ax
je 0x1400b56a5
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x1400b5680
jmp 0x1400b56aa
test rdx, rdx
jne 0x1400b56ae
sub rcx, 2
mov word [rcx], 0
mov rcx, r13
lea rax, [rsp + 0x140]
nop
cmp word [rax], 0
je 0x1400b56d2
add rax, 2
sub rcx, 1
jne 0x1400b56c0
jmp 0x1400b5737
test rcx, rcx
je 0x1400b5737
mov rdx, r13
sub rdx, rcx
mov qword [rsp + 0x100], rdx
mov rcx, r13
sub rcx, rdx
lea rax, [rsp + rdx*2 + 0x140]
je 0x1400b572e
lea rdi, [rcx + rdx + 0x7ffffdff]
lea r8, str.d3drg8x.dll
sub r8, rax
test rdi, rdi
je 0x1400b5729
movzx edx, word [r8 + rax]
test dx, dx
je 0x1400b5729
mov word [rax], dx
add rax, 2
sub rdi, 1
sub rcx, 1
jne 0x1400b5707
jmp 0x1400b572e
test rcx, rcx
jne 0x1400b5732
sub rax, 2
mov word [rax], 0
lea rdx, [rsp + 0xc4]
lea rcx, [rsp + 0x140]
call sub.VERSION.dll_GetFileVersionInfoSizeW
mov dword [rsp + 0x54], eax
test eax, eax
je 0x1400b583d
mov ecx, eax
call fcn.14013d074
mov rdi, rax
test rax, rax
je 0x1400b583d
mov r9, rax
mov r8d, dword [rsp + 0x54]
xor edx, edx
lea rcx, [rsp + 0x140]
call sub.VERSION.dll_GetFileVersionInfoW
test eax, eax
je 0x1400b5835
mov qword [rsp + 0xa0], 0
lea r9, [rsp + 0x54]
lea r8, [rsp + 0xa0]
lea rdx, [0x14019eaf8]
mov rcx, rdi
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x1400b5835
mov rax, qword [rsp + 0xa0]
test rax, rax
je 0x1400b5835
mov esi, dword [rax + 8]
mov dword [rsp + 0x34], esi
mov ebx, dword [rax + 0xc]
mov dword [rsp + 0x30], ebx
mov rcx, rdi
call fcn.14013d06c
mov dword [rsp + 0x24], 0x40004
mov dword [rsp + 0x20], 0x46
mov rax, qword [rsp + 0x20]
shr rax, 0x20
cmp esi, eax
ja 0x1400b5804
cmp esi, eax
jb 0x1400b583d
cmp ebx, 0x46
ja 0x1400b5804
cmp ebx, 0x46
jb 0x1400b583d
mov rax, qword [rsp + 0x38]
test rax, rax
je 0x1400b5814
mov dword [rax], 3
test r15, r15
je 0x1400b5820
mov dword [r15], 0
test r14, r14
je 0x1400b582b
mov word [r14], 0x61
mov dword [rsp + 0x28], 1
jmp 0x1400b583d
mov rcx, rdi
call fcn.14013d06c
mov rdx, r13
lea rcx, [rsp + 0x140]
nop
nop
lea rax, [rdx + 0x7ffffdfe]
test rax, rax
je 0x1400b5875
movzx eax, word [rcx + r12]
test ax, ax
je 0x1400b5875
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x1400b5850
jmp 0x1400b587a
test rdx, rdx
jne 0x1400b587e
sub rcx, 2
mov word [rcx], 0
mov rcx, r13
lea rax, [rsp + 0x140]
nop
cmp word [rax], 0
je 0x1400b58a2
add rax, 2
sub rcx, 1
jne 0x1400b5890
jmp 0x1400b5903
test rcx, rcx
je 0x1400b5903
mov rdx, r13
sub rdx, rcx
mov qword [rsp + 0x138], rdx
mov rcx, r13
sub rcx, rdx
lea rax, [rsp + rdx*2 + 0x140]
je 0x1400b58fa
lea rdi, [rcx + rdx + 0x7ffffdff]
mov r8, rbp
sub r8, rax
test rdi, rdi
je 0x1400b58f5
movzx edx, word [r8 + rax]
test dx, dx
je 0x1400b58f5
mov word [rax], dx
add rax, 2
sub rdi, 1
sub rcx, 1
jne 0x1400b58d3
jmp 0x1400b58fa
test rcx, rcx
jne 0x1400b58fe
sub rax, 2
mov word [rax], 0
lea rdx, [rsp + 0xd4]
lea rcx, [rsp + 0x140]
call sub.VERSION.dll_GetFileVersionInfoSizeW
mov dword [rsp + 0x5c], eax
test eax, eax
je 0x1400b5adb
mov ecx, eax
call fcn.14013d074
mov rdi, rax
test rax, rax
je 0x1400b5adb
mov r9, rax
mov r8d, dword [rsp + 0x5c]
xor edx, edx
lea rcx, [rsp + 0x140]
call sub.VERSION.dll_GetFileVersionInfoW
test eax, eax
je 0x1400b5ad3
mov qword [rsp + 0x90], 0
lea r9, [rsp + 0x5c]
lea r8, [rsp + 0x90]
lea rdx, [0x14019eaf8]
mov rcx, rdi
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x1400b5ad3
mov rax, qword [rsp + 0x90]
test rax, rax
je 0x1400b5ad3
mov esi, dword [rax + 8]
mov dword [rsp + 0x34], esi
mov ebx, dword [rax + 0xc]
mov dword [rsp + 0x30], ebx
mov rcx, rdi
call fcn.14013d06c
mov dword [rsp + 0x24], 0x40005
mov dword [rsp + 0x20], 0x9b
mov rax, qword [rsp + 0x20]
shr rax, 0x20
cmp esi, eax
ja 0x1400b59de
cmp esi, eax
jb 0x1400b5a16
cmp ebx, 0x9b
ja 0x1400b59de
cmp ebx, 0x9b
jb 0x1400b5a0f
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x1400b59ee
mov dword [rcx], 5
test r15, r15
je 0x1400b59fa
mov dword [r15], 0
test r14, r14
je 0x1400b5a05
mov word [r14], 0x20
mov dword [rsp + 0x28], 1
jmp 0x1400b5a1b
mov rcx, qword [rsp + 0x38]
jmp 0x1400b5a1b
mov rcx, qword [rsp + 0x38]
mov dword [rsp + 0x24], 0x40006
mov dword [rsp + 0x20], 0x13e
mov rax, qword [rsp + 0x20]
shr rax, 0x20
cmp esi, eax
ja 0x1400b5a4c
cmp esi, eax
jb 0x1400b5a76
cmp ebx, 0x13e
ja 0x1400b5a4c
cmp ebx, 0x13e
jb 0x1400b5a76
test rcx, rcx
je 0x1400b5a57
mov dword [rcx], 6
test r15, r15
je 0x1400b5a63
mov dword [r15], 0
test r14, r14
je 0x1400b5a6e
mov word [r14], 0x20
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x24], 0x40006
mov dword [rsp + 0x20], 0x1b4
mov rax, qword [rsp + 0x20]
shr rax, 0x20
cmp esi, eax
ja 0x1400b5aa7
cmp esi, eax
jb 0x1400b5adb
cmp ebx, 0x1b4
ja 0x1400b5aa7
cmp ebx, 0x1b4
jb 0x1400b5adb
test rcx, rcx
je 0x1400b5ab2
mov dword [rcx], 6
test r15, r15
je 0x1400b5abe
mov dword [r15], 1
test r14, r14
je 0x1400b5ac9
mov word [r14], 0x20
mov dword [rsp + 0x28], 1
jmp 0x1400b5adb
mov rcx, rdi
call fcn.14013d06c
mov rdx, r13
lea rcx, [rsp + 0x140]
nop
nop
nop
lea rax, [rdx + 0x7ffffdfe]
test rax, rax
je 0x1400b5b15
movzx eax, word [rcx + r12]
test ax, ax
je 0x1400b5b15
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x1400b5af0
jmp 0x1400b5b1a
test rdx, rdx
jne 0x1400b5b1e
sub rcx, 2
mov word [rcx], 0
mov rcx, r13
lea rax, [rsp + 0x140]
nop
cmp word [rax], 0
je 0x1400b5b42
add rax, 2
sub rcx, 1
jne 0x1400b5b30
jmp 0x1400b5ba7
test rcx, rcx
je 0x1400b5ba7
mov rdx, r13
sub rdx, rcx
mov qword [rsp + 0x110], rdx
mov rcx, r13
sub rcx, rdx
lea rax, [rsp + rdx*2 + 0x140]
je 0x1400b5b9e
lea rdi, [rcx + rdx + 0x7ffffdff]
lea r8, str.dplayx.dll
sub r8, rax
test rdi, rdi
je 0x1400b5b99
movzx edx, word [r8 + rax]
test dx, dx
je 0x1400b5b99
mov word [rax], dx
add rax, 2
sub rdi, 1
sub rcx, 1
jne 0x1400b5b77
jmp 0x1400b5b9e
test rcx, rcx
jne 0x1400b5ba2
sub rax, 2
mov word [rax], 0
lea rdx, [rsp + 0xdc]
lea rcx, [rsp + 0x140]
call sub.VERSION.dll_GetFileVersionInfoSizeW
mov dword [rsp + 0x64], eax
test eax, eax
je 0x1400b5cb7
mov ecx, eax
call fcn.14013d074
mov rdi, rax
test rax, rax
je 0x1400b5cb7
mov r9, rax
mov r8d, dword [rsp + 0x64]
xor edx, edx
lea rcx, [rsp + 0x140]
call sub.VERSION.dll_GetFileVersionInfoW
test eax, eax
je 0x1400b5caf
mov qword [rsp + 0xb0], 0
lea r9, [rsp + 0x64]
lea r8, [rsp + 0xb0]
lea rdx, [0x14019eaf8]
mov rcx, rdi
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x1400b5caf
mov rax, qword [rsp + 0xb0]
test rax, rax
je 0x1400b5caf
mov esi, dword [rax + 8]
mov dword [rsp + 0x34], esi
mov ebx, dword [rax + 0xc]
mov dword [rsp + 0x30], ebx
mov rcx, rdi
call fcn.14013d06c
mov dword [rsp + 0x24], 0x40006
mov dword [rsp + 0x20], 0x30206
mov rax, qword [rsp + 0x20]
shr rax, 0x20
cmp esi, eax
ja 0x1400b5c7e
cmp esi, eax
jb 0x1400b5cb7
cmp ebx, 0x30206
ja 0x1400b5c7e
cmp ebx, 0x30206
jb 0x1400b5cb7
mov rax, qword [rsp + 0x38]
test rax, rax
je 0x1400b5c8e
mov dword [rax], 6
test r15, r15
je 0x1400b5c9a
mov dword [r15], 1
test r14, r14
je 0x1400b5ca5
mov word [r14], 0x61
mov dword [rsp + 0x28], 1
jmp 0x1400b5cb7
mov rcx, rdi
call fcn.14013d06c
mov rdx, r13
lea rcx, [rsp + 0x140]
lea rax, [rdx + 0x7ffffdfe]
test rax, rax
je 0x1400b5ce7
movzx eax, word [rcx + r12]
test ax, ax
je 0x1400b5ce7
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x1400b5cc2
jmp 0x1400b5cec
test rdx, rdx
jne 0x1400b5cf0
sub rcx, 2
mov word [rcx], 0
mov rcx, r13
lea rax, [rsp + 0x140]
cmp word [rax], 0
je 0x1400b5d12
add rax, 2
sub rcx, 1
jne 0x1400b5d00
jmp 0x1400b5d73
test rcx, rcx
je 0x1400b5d73
mov rdx, r13
sub rdx, rcx
mov qword [rsp + 0x130], rdx
mov rcx, r13
sub rcx, rdx
lea rax, [rsp + rdx*2 + 0x140]
je 0x1400b5d6a
lea rdi, [rcx + rdx + 0x7ffffdff]
mov r8, rbp
sub r8, rax
test rdi, rdi
je 0x1400b5d65
movzx edx, word [r8 + rax]
test dx, dx
je 0x1400b5d65
mov word [rax], dx
add rax, 2
sub rdi, 1
sub rcx, 1
jne 0x1400b5d43
jmp 0x1400b5d6a
test rcx, rcx
jne 0x1400b5d6e
sub rax, 2
mov word [rax], 0
lea rdx, [rsp + 0xc0]
lea rcx, [rsp + 0x140]
call sub.VERSION.dll_GetFileVersionInfoSizeW
mov dword [rsp + 0x48], eax
test eax, eax
je 0x1400b5e7a
mov ecx, eax
call fcn.14013d074
mov rdi, rax
test rax, rax
je 0x1400b5e7a
mov r9, rax
mov r8d, dword [rsp + 0x48]
xor edx, edx
lea rcx, [rsp + 0x140]
call sub.VERSION.dll_GetFileVersionInfoW
test eax, eax
je 0x1400b5e72
mov qword [rsp + 0x78], 0
lea r9, [rsp + 0x48]
lea r8, [rsp + 0x78]
lea rdx, [0x14019eaf8]
mov rcx, rdi
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x1400b5e72
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x1400b5e72
mov esi, dword [rax + 8]
mov dword [rsp + 0x34], esi
mov ebx, dword [rax + 0xc]
mov dword [rsp + 0x30], ebx
mov rcx, rdi
call fcn.14013d06c
mov dword [rsp + 0x24], 0x40007
mov dword [rsp + 0x20], 0x2bc
mov rax, qword [rsp + 0x20]
shr rax, 0x20
cmp esi, eax
ja 0x1400b5e41
cmp esi, eax
jb 0x1400b5e7a
cmp ebx, 0x2bc
ja 0x1400b5e41
cmp ebx, 0x2bc
jb 0x1400b5e7a
mov rax, qword [rsp + 0x38]
test rax, rax
je 0x1400b5e51
mov dword [rax], 7
test r15, r15
je 0x1400b5e5d
mov dword [r15], 0
test r14, r14
je 0x1400b5e68
mov word [r14], 0x20
mov dword [rsp + 0x28], 1
jmp 0x1400b5e7a
mov rcx, rdi
call fcn.14013d06c
mov rdx, r13
lea rcx, [rsp + 0x140]
nop
nop
nop
lea rax, [rdx + 0x7ffffdfe]
test rax, rax
je 0x1400b5eb5
movzx eax, word [rcx + r12]
test ax, ax
je 0x1400b5eb5
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x1400b5e90
jmp 0x1400b5eba
test rdx, rdx
jne 0x1400b5ebe
sub rcx, 2
mov word [rcx], 0
mov rcx, r13
lea rax, [rsp + 0x140]
nop
cmp word [rax], 0
je 0x1400b5ee2
add rax, 2
sub rcx, 1
jne 0x1400b5ed0
jmp 0x1400b5f47
test rcx, rcx
je 0x1400b5f47
mov rdx, r13
sub rdx, rcx
mov qword [rsp + 0xf0], rdx
mov rcx, r13
sub rcx, rdx
lea rax, [rsp + rdx*2 + 0x140]
je 0x1400b5f3e
lea rdi, [rcx + rdx + 0x7ffffdff]
lea r8, str.dinput.dll
sub r8, rax
test rdi, rdi
je 0x1400b5f39
movzx edx, word [rax + r8]
test dx, dx
je 0x1400b5f39
mov word [rax], dx
add rax, 2
sub rdi, 1
sub rcx, 1
jne 0x1400b5f17
jmp 0x1400b5f3e
test rcx, rcx
jne 0x1400b5f42
sub rax, 2
mov word [rax], 0
lea rdx, [rsp + 0xcc]
lea rcx, [rsp + 0x140]
call sub.VERSION.dll_GetFileVersionInfoSizeW
mov dword [rsp + 0x58], eax
test eax, eax
je 0x1400b6057
mov ecx, eax
call fcn.14013d074
mov rdi, rax
test rax, rax
je 0x1400b6057
mov r9, rax
mov r8d, dword [rsp + 0x58]
xor edx, edx
lea rcx, [rsp + 0x140]
call sub.VERSION.dll_GetFileVersionInfoW
test eax, eax
je 0x1400b604f
mov qword [rsp + 0x88], 0
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x88]
lea rdx, [0x14019eaf8]
mov rcx, rdi
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x1400b604f
mov rax, qword [rsp + 0x88]
test rax, rax
je 0x1400b604f
mov esi, dword [rax + 8]
mov dword [rsp + 0x34], esi
mov ebx, dword [rax + 0xc]
mov dword [rsp + 0x30], ebx
mov rcx, rdi
call fcn.14013d06c
mov dword [rsp + 0x24], 0x40007
mov dword [rsp + 0x20], 0x2cc
mov rax, qword [rsp + 0x20]
shr rax, 0x20
cmp esi, eax
ja 0x1400b601e
cmp esi, eax
jb 0x1400b6057
cmp ebx, 0x2cc
ja 0x1400b601e
cmp ebx, 0x2cc
jb 0x1400b6057
mov rax, qword [rsp + 0x38]
test rax, rax
je 0x1400b602e
mov dword [rax], 7
test r15, r15
je 0x1400b603a
mov dword [r15], 0
test r14, r14
je 0x1400b6045
mov word [r14], 0x61
mov dword [rsp + 0x28], 1
jmp 0x1400b6057
mov rcx, rdi
call fcn.14013d06c
mov rdx, r13
lea rcx, [rsp + 0x140]
lea rax, [rdx + 0x7ffffdfe]
test rax, rax
je 0x1400b6087
movzx eax, word [rcx + r12]
test ax, ax
je 0x1400b6087
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x1400b6062
jmp 0x1400b608c
test rdx, rdx
jne 0x1400b6090
sub rcx, 2
mov word [rcx], 0
mov rcx, r13
lea rax, [rsp + 0x140]
cmp word [rax], 0
je 0x1400b60b2
add rax, 2
sub rcx, 1
jne 0x1400b60a0
jmp 0x1400b610f
test rcx, rcx
je 0x1400b610f
mov rdx, r13
sub rdx, rcx
mov qword [rsp + 0xf8], rdx
mov rcx, r13
sub rcx, rdx
lea rax, [rsp + rdx*2 + 0x140]
je 0x1400b6106
lea rdi, [rcx + rdx + 0x7ffffdff]
sub rbp, rax
test rdi, rdi
je 0x1400b6101
movzx edx, word [rax + rbp]
test dx, dx
je 0x1400b6101
mov word [rax], dx
add rax, 2
sub rdi, 1
sub rcx, 1
jne 0x1400b60e0
jmp 0x1400b6106
test rcx, rcx
jne 0x1400b610a
sub rax, 2
mov word [rax], 0
lea rdx, [rsp + 0xe4]
lea rcx, [rsp + 0x140]
call sub.VERSION.dll_GetFileVersionInfoSizeW
mov dword [rsp + 0x40], eax
test eax, eax
je 0x1400b627f
mov ecx, eax
call fcn.14013d074
mov rdi, rax
test rax, rax
je 0x1400b6286
mov r9, rax
mov r8d, dword [rsp + 0x40]
xor edx, edx
lea rcx, [rsp + 0x140]
call sub.VERSION.dll_GetFileVersionInfoW
test eax, eax
je 0x1400b6262
mov qword [rsp + 0x98], 0
lea r9, [rsp + 0x40]
lea r8, [rsp + 0x98]
lea rdx, [0x14019eaf8]
mov rcx, rdi
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x1400b6262
mov rax, qword [rsp + 0x98]
test rax, rax
je 0x1400b6262
mov esi, dword [rax + 8]
mov dword [rsp + 0x34], esi
mov ebx, dword [rax + 0xc]
mov dword [rsp + 0x30], ebx
mov rcx, rdi
call fcn.14013d06c
mov edx, esi
shr edx, 0x10
cmp dx, 4
jne 0x1400b61f5
mov dword [rsp + 0x24], 0x40008
mov dword [rsp + 0x20], 0x190
mov rax, qword [rsp + 0x20]
shr rax, 0x20
cmp esi, eax
ja 0x1400b6230
cmp esi, eax
jb 0x1400b61f5
cmp ebx, 0x190
ja 0x1400b6230
cmp ebx, 0x190
jae 0x1400b6230
cmp dx, 5
jne 0x1400b628d
mov dword [rsp + 0x24], 0x50001
mov dword [rsp + 0x20], 0x8d20190
mov rax, qword [rsp + 0x20]
shr rax, 0x20
cmp esi, eax
ja 0x1400b6230
cmp esi, eax
jb 0x1400b6278
cmp ebx, 0x8d20190
ja 0x1400b6230
cmp ebx, 0x8d20190
jb 0x1400b6271
mov rbp, qword [rsp + 0x38]
test rbp, rbp
je 0x1400b6241
mov dword [rbp], 8
test r15, r15
je 0x1400b624d
mov dword [r15], 0
test r14, r14
je 0x1400b6258
mov word [r14], 0x20
mov dword [rsp + 0x28], 1
jmp 0x1400b6292
mov rcx, rdi
call fcn.14013d06c
mov rbp, qword [rsp + 0x38]
jmp 0x1400b6292
mov rbp, qword [rsp + 0x38]
jmp 0x1400b6292
mov rbp, qword [rsp + 0x38]
jmp 0x1400b6292
mov rbp, qword [rsp + 0x38]
jmp 0x1400b6292
mov rbp, qword [rsp + 0x38]
jmp 0x1400b6292
mov rbp, qword [rsp + 0x38]
mov rdx, r13
lea rcx, [rsp + 0x140]
nop
lea rax, [rdx + 0x7ffffdfe]
test rax, rax
je 0x1400b62c5
movzx eax, word [rcx + r12]
test ax, ax
je 0x1400b62c5
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x1400b62a0
jmp 0x1400b62ca
test rdx, rdx
jne 0x1400b62ce
sub rcx, 2
mov word [rcx], 0
mov rcx, r13
lea rax, [rsp + 0x140]
nop
cmp word [rax], 0
je 0x1400b62f2
add rax, 2
sub rcx, 1
jne 0x1400b62e0
jmp 0x1400b6357
test rcx, rcx
je 0x1400b6357
mov rdx, r13
sub rdx, rcx
mov qword [rsp + 0x108], rdx
mov rcx, r13
sub rcx, rdx
lea rax, [rsp + rdx*2 + 0x140]
je 0x1400b634e
lea rdi, [rcx + rdx + 0x7ffffdff]
lea r8, str.d3d8.dll
sub r8, rax
test rdi, rdi
je 0x1400b6349
movzx edx, word [rax + r8]
test dx, dx
je 0x1400b6349
mov word [rax], dx
add rax, 2
sub rdi, 1
sub rcx, 1
jne 0x1400b6327
jmp 0x1400b634e
test rcx, rcx
jne 0x1400b6352
sub rax, 2
mov word [rax], 0
lea rdx, [rsp + 0xc8]
lea rcx, [rsp + 0x140]
call sub.VERSION.dll_GetFileVersionInfoSizeW
mov dword [rsp + 0x60], eax
test eax, eax
je 0x1400b6539
mov ecx, eax
call fcn.14013d074
mov rdi, rax
test rax, rax
je 0x1400b6539
mov r9, rax
mov r8d, dword [rsp + 0x60]
xor edx, edx
lea rcx, [rsp + 0x140]
call sub.VERSION.dll_GetFileVersionInfoW
test eax, eax
je 0x1400b6531
mov qword [rsp + 0x70], 0
lea r9, [rsp + 0x60]
lea r8, [rsp + 0x70]
lea rdx, [0x14019eaf8]
mov rcx, rdi
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x1400b6531
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x1400b6531
mov esi, dword [rax + 8]
mov dword [rsp + 0x34], esi
mov ebx, dword [rax + 0xc]
mov dword [rsp + 0x30], ebx
mov rcx, rdi
call fcn.14013d06c
mov edx, esi
shr edx, 0x10
cmp dx, 4
jne 0x1400b6434
mov dword [rsp + 0x24], 0x40008
mov dword [rsp + 0x20], 0x10371
mov rax, qword [rsp + 0x20]
shr rax, 0x20
cmp esi, eax
ja 0x1400b646b
cmp esi, eax
jb 0x1400b6434
cmp ebx, 0x10371
ja 0x1400b646b
cmp ebx, 0x10371
jae 0x1400b646b
cmp dx, 5
jne 0x1400b6496
mov dword [rsp + 0x24], 0x50001
mov dword [rsp + 0x20], 0xa280371
mov rax, qword [rsp + 0x20]
shr rax, 0x20
cmp esi, eax
ja 0x1400b646b
cmp esi, eax
jb 0x1400b6496
cmp ebx, 0xa280371
ja 0x1400b646b
cmp ebx, 0xa280371
jb 0x1400b6496
test rbp, rbp
je 0x1400b6477
mov dword [rbp], 8
test r15, r15
je 0x1400b6483
mov dword [r15], 1
test r14, r14
je 0x1400b648e
mov word [r14], 0x20
mov dword [rsp + 0x28], 1
cmp dx, 4
jne 0x1400b64cd
mov dword [rsp + 0x24], 0x40008
mov dword [rsp + 0x20], 0x10385
mov rax, qword [rsp + 0x20]
shr rax, 0x20
cmp esi, eax
ja 0x1400b6504
cmp esi, eax
jb 0x1400b64cd
cmp ebx, 0x10385
ja 0x1400b6504
cmp ebx, 0x10385
jae 0x1400b6504
cmp dx, 5
jne 0x1400b6539
mov dword [rsp + 0x24], 0x50001
mov dword [rsp + 0x20], 0xa280385
mov rax, qword [rsp + 0x20]
shr rax, 0x20
cmp esi, eax
ja 0x1400b6504
cmp esi, eax
jb 0x1400b6539
cmp ebx, 0xa280385
ja 0x1400b6504
cmp ebx, 0xa280385
jb 0x1400b6539
test rbp, rbp
je 0x1400b6510
mov dword [rbp], 8
test r15, r15
je 0x1400b651c
mov dword [r15], 1
test r14, r14
je 0x1400b6527
mov word [r14], 0x61
mov dword [rsp + 0x28], 1
jmp 0x1400b6539
mov rcx, rdi
call fcn.14013d06c
mov rdx, r13
lea rcx, [rsp + 0x140]
lea rax, [rdx + 0x7ffffdfe]
test rax, rax
je 0x1400b6569
movzx eax, word [rcx + r12]
test ax, ax
je 0x1400b6569
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x1400b6544
jmp 0x1400b656e
test rdx, rdx
jne 0x1400b6572
sub rcx, 2
mov word [rcx], 0
mov rcx, r13
lea rax, [rsp + 0x140]
cmp word [rax], 0
je 0x1400b6594
add rax, 2
sub rcx, 1
jne 0x1400b6582
jmp 0x1400b6600
test rcx, rcx
je 0x1400b6600
mov rdx, r13
sub rdx, rcx
mov qword [rsp + 0x118], rdx
mov rcx, r13
sub rcx, rdx
lea rax, [rsp + rdx*2 + 0x140]
je 0x1400b65f7
lea rdi, [rcx + rdx + 0x7ffffdff]
lea r8, str.mpg2splt.ax
sub r8, rax
nop
nop
test rdi, rdi
je 0x1400b65f2
movzx edx, word [rax + r8]
test dx, dx
je 0x1400b65f2
mov word [rax], dx
add rax, 2
sub rdi, 1
sub rcx, 1
jne 0x1400b65d0
jmp 0x1400b65f7
test rcx, rcx
jne 0x1400b65fb
sub rax, 2
mov word [rax], 0
lea rdx, [rsp + 0xd8]
lea rcx, [rsp + 0x140]
call sub.VERSION.dll_GetFileVersionInfoSizeW
mov dword [rsp + 0x44], eax
test eax, eax
je 0x1400b670c
mov ecx, eax
call fcn.14013d074
mov rdi, rax
test rax, rax
je 0x1400b670c
mov r9, rax
mov r8d, dword [rsp + 0x44]
xor edx, edx
lea rcx, [rsp + 0x140]
call sub.VERSION.dll_GetFileVersionInfoW
test eax, eax
je 0x1400b6704
mov qword [rsp + 0xa8], 0
lea r9, [rsp + 0x44]
lea r8, [rsp + 0xa8]
lea rdx, [0x14019eaf8]
mov rcx, rdi
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x1400b6704
mov rax, qword [rsp + 0xa8]
test rax, rax
je 0x1400b6704
mov esi, dword [rax + 8]
mov dword [rsp + 0x34], esi
mov ebx, dword [rax + 0xc]
mov dword [rsp + 0x30], ebx
mov rcx, rdi
call fcn.14013d06c
mov dword [rsp + 0x24], 0x60003
mov dword [rsp + 0x20], 0x10375
mov rax, qword [rsp + 0x20]
shr rax, 0x20
cmp esi, eax
ja 0x1400b66d7
cmp esi, eax
jb 0x1400b670c
cmp ebx, 0x10375
ja 0x1400b66d7
cmp ebx, 0x10375
jb 0x1400b670c
test rbp, rbp
je 0x1400b66e3
mov dword [rbp], 8
test r15, r15
je 0x1400b66ef
mov dword [r15], 1
test r14, r14
je 0x1400b66fa
mov word [r14], 0x62
mov dword [rsp + 0x28], 1
jmp 0x1400b670c
mov rcx, rdi
call fcn.14013d06c
mov rdx, r13
lea rcx, [rsp + 0x140]
nop
nop
nop
lea rax, [rdx + 0x7ffffdfe]
test rax, rax
je 0x1400b6745
movzx eax, word [rcx + r12]
test ax, ax
je 0x1400b6745
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x1400b6720
jmp 0x1400b674a
test rdx, rdx
jne 0x1400b674e
sub rcx, 2
mov word [rcx], 0
mov rcx, r13
lea rax, [rsp + 0x140]
nop
cmp word [rax], 0
je 0x1400b6772
add rax, 2
sub rcx, 1
jne 0x1400b6760
jmp 0x1400b67d3
test rcx, rcx
je 0x1400b67d3
mov rdx, r13
sub rdx, rcx
mov qword [rsp + 0x128], rdx
sub r13, rdx
lea rax, [rsp + rdx*2 + 0x140]
je 0x1400b67ca
lea rcx, [r13 + rdx + 0x7ffffdff]
lea rdi, str.dpnet.dll
sub rdi, rax
test rcx, rcx
je 0x1400b67c5
movzx edx, word [rax + rdi]
test dx, dx
je 0x1400b67c5
mov word [rax], dx
add rax, 2
sub rcx, 1
sub r13, 1
jne 0x1400b67a4
jmp 0x1400b67ca
test r13, r13
jne 0x1400b67ce
sub rax, 2
mov word [rax], 0
lea rdx, [rsp + 0xd0]
lea rcx, [rsp + 0x140]
call sub.VERSION.dll_GetFileVersionInfoSizeW
mov dword [rsp + 0x4c], eax
test eax, eax
je 0x1400b693c
mov ecx, eax
call fcn.14013d074
mov rdi, rax
test rax, rax
je 0x1400b6943
mov r9, rax
mov r8d, dword [rsp + 0x4c]
xor edx, edx
lea rcx, [rsp + 0x140]
call sub.VERSION.dll_GetFileVersionInfoW
test eax, eax
je 0x1400b691f
mov qword [rsp + 0xb8], 0
lea r9, [rsp + 0x4c]
lea r8, [rsp + 0xb8]
lea rdx, [0x14019eaf8]
mov rcx, rdi
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x1400b691f
mov rax, qword [rsp + 0xb8]
test rax, rax
je 0x1400b691f
mov ebx, dword [rax + 8]
mov dword [rsp + 0x34], ebx
mov esi, dword [rax + 0xc]
mov dword [rsp + 0x30], esi
mov rcx, rdi
call fcn.14013d06c
mov edx, ebx
shr edx, 0x10
cmp dx, 4
jne 0x1400b68b9
mov dword [rsp + 0x24], 0x40009
mov dword [rsp + 0x20], 0x86
mov rax, qword [rsp + 0x20]
shr rax, 0x20
cmp ebx, eax
ja 0x1400b68f4
cmp ebx, eax
jb 0x1400b68b9
cmp esi, 0x86
ja 0x1400b68f4
cmp esi, 0x86
jae 0x1400b68f4
cmp dx, 5
jne 0x1400b694a
mov dword [rsp + 0x24], 0x50002
mov dword [rsp + 0x20], 0xe5d0086
mov rax, qword [rsp + 0x20]
shr rax, 0x20
cmp ebx, eax
ja 0x1400b68f4
cmp ebx, eax
jb 0x1400b6935
cmp esi, 0xe5d0086
ja 0x1400b68f4
cmp esi, 0xe5d0086
jb 0x1400b692e
test rbp, rbp
je 0x1400b6900
mov dword [rbp], 8
test r15, r15
je 0x1400b690c
mov dword [r15], 2
test r14, r14
je 0x1400b6917
mov word [r14], 0x20
mov r12d, 1
jmp 0x1400b694f
mov rcx, rdi
call fcn.14013d06c
mov r12d, dword [rsp + 0x28]
jmp 0x1400b694f
mov r12d, dword [rsp + 0x28]
jmp 0x1400b694f
mov r12d, dword [rsp + 0x28]
jmp 0x1400b694f
mov r12d, dword [rsp + 0x28]
jmp 0x1400b694f
mov r12d, dword [rsp + 0x28]
jmp 0x1400b694f
mov r12d, dword [rsp + 0x28]
mov esi, 9
xor r13d, r13d
call fcn.14013d07c
mov ecx, r13d
test rax, rax
setne cl
test ecx, ecx
je 0x1400b6acc
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rsp + 0x20], rax
mov r9d, esi
lea r8, [rsp + 0x540]
lea rdx, str._sd3d_d.dll
lea rcx, [rsp + 0x20]
call fcn.140001f50
mov rbx, qword [rsp + 0x20]
cmp dword [rbx - 8], 1
jle 0x1400b69b8
mov edx, dword [rbx - 0x10]
lea rcx, [rsp + 0x20]
call fcn.140001e50
mov rbx, qword [rsp + 0x20]
test rbx, rbx
je 0x1400b6a7e
lea rdx, [rsp + 0x38]
mov rcx, rbx
call sub.VERSION.dll_GetFileVersionInfoSizeW
mov dword [rsp + 0x28], eax
test eax, eax
je 0x1400b6a65
mov ecx, eax
call fcn.14013d074
mov rdi, rax
test rax, rax
je 0x1400b6a65
mov r9, rax
mov r8d, dword [rsp + 0x28]
xor edx, edx
mov rcx, rbx
call sub.VERSION.dll_GetFileVersionInfoW
test eax, eax
je 0x1400b6a5d
mov qword [rsp + 0x80], r13
lea r9, [rsp + 0x28]
lea r8, [rsp + 0x80]
lea rdx, [0x14019eaf8]
mov rcx, rdi
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x1400b6a5d
cmp qword [rsp + 0x80], 0
je 0x1400b6a5d
mov rcx, rdi
call fcn.14013d06c
test rbp, rbp
je 0x1400b6a42
mov dword [rbp], esi
test r15, r15
je 0x1400b6a4a
mov dword [r15], r13d
test r14, r14
je 0x1400b6a55
mov word [r14], 0x20
mov r12d, 1
jmp 0x1400b6a65
mov rcx, rdi
call fcn.14013d06c
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
sub rcx, 1
test ecx, ecx
js 0x1400b6ac1
jmp 0x1400b6a81
mov ecx, r13d
cmp ecx, dword [rbx - 0xc]
jg 0x1400b6ac1
mov dword [rbx - 0x10], ecx
movsxd rax, ecx
mov word [rbx + rax*2], 0
lea rdx, [rbx - 0x18]
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400b6aae
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
add esi, 1
cmp esi, 0x63
jl 0x1400b6957
test r12d, r12d
jne 0x1400b6af3
jmp 0x1400b6ad7
mov ecx, 0x80070057
call fcn.140001c00
nop
mov ecx, 0x80004005
call fcn.140001c00
int3
test rbp, rbp
je 0x1400b6ae0
mov dword [rbp], r13d
test r15, r15
je 0x1400b6ae8
mov dword [r15], r13d
test r14, r14
je 0x1400b6af3
mov word [r14], 0x20
xor eax, eax
mov rcx, qword [rsp + 0x940]
xor rcx, rsp
call fcn.14015d000
mov rbx, qword [rsp + 0x9a8]
add rsp, 0x950
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret