Function at 0x18018e280
Capabilities:
Get file version info

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x110]
sub rsp, 0x210
mov rax, qword [0x180a3f180]
xor rax, rsp
mov qword [rbp + 0x100], rax
mov rsi, rcx
mov qword [rsp + 0x20], rcx
xor r12d, r12d
mov r8d, 0x104
lea rdx, [rbp - 0x10]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea rdx, [rsp + 0x44]
lea rcx, [rbp - 0x10]
call qword [sym.imp.VERSION.dll_GetFileVersionInfoSizeA]
mov r15d, eax
xorps xmm0, xmm0
test eax, eax
jne 0x18018e322
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], 7
mov qword [rsi + 0x18], 0xf
mov rcx, qword [0x1803f6eb8]
mov dword [rsi], ecx
movzx ecx, word [0x1803f6ebc]
mov word [rsi + 4], cx
movzx ecx, byte [0x1803f6ebe]
mov byte [rsi + 6], cl
mov byte [rsi + 7], r12b
jmp 0x18018e412
movdqu xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], r12
cmp r15, 0x1000
jb 0x18018e35e
lea rcx, [r15 + 0x27]
cmp rcx, r15
jbe 0x18018e52c
call fcn.180337400
test rax, rax
je 0x18018e532
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x18018e369
mov rcx, r15
call fcn.180337400
mov rbx, rax
mov qword [rsp + 0x70], rbx
lea rdi, [rbx + r15]
mov qword [rbp - 0x80], rdi
mov r8, r15
xor edx, edx
mov rcx, rbx
call fcn.180375960
mov qword [rsp + 0x78], rdi
mov r9, rbx
mov r8d, r15d
xor edx, edx
lea rcx, [rbp - 0x10]
call qword [sym.imp.VERSION.dll_GetFileVersionInfoA]
test eax, eax
jne 0x18018e440
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], 7
mov qword [rsi + 0x18], 0xf
mov rax, qword [0x1803f6eb8]
mov dword [rsi], eax
movzx eax, word [0x1803f6ebc]
mov word [rsi + 4], ax
movzx eax, byte [0x1803f6ebe]
mov byte [rsi + 6], al
mov byte [rsi + 7], 0
test rbx, rbx
je 0x18018e412
sub rdi, rbx
mov rax, rbx
cmp rdi, 0x1000
jb 0x18018e407
add rdi, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18018e532
mov rdx, rdi
mov rcx, rbx
call fcn.180337884
mov rax, rsi
mov rcx, qword [rbp + 0x100]
xor rcx, rsp
call fcn.1803373e0
lea r11, [rsp + 0x210]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret
lea r9, [rsp + 0x48]
lea r8, [rsp + 0x20]
lea rdx, [0x18040c728]
mov rcx, rbx
call qword [sym.imp.VERSION.dll_VerQueryValueA]
test eax, eax
je 0x18018e3a2
mov rcx, qword [rsp + 0x20]
lea rax, str....
mov qword [rbp - 0x70], rax
mov qword [rbp - 0x68], inet_ntoa
movzx eax, word [rcx + 0xa]
mov dword [rsp + 0x30], eax
movzx eax, word [rcx + 8]
mov dword [rbp - 0x60], eax
movzx eax, word [rcx + 0xe]
mov dword [rsp + 0x50], eax
movzx eax, word [rcx + 0xc]
mov dword [rsp + 0x60], eax
movups xmm0, xmmword [rsp + 0x30]
movaps xmmword [rbp - 0x50], xmm0
movups xmm1, xmmword [rbp - 0x60]
movaps xmmword [rbp - 0x40], xmm1
movups xmm0, xmmword [rsp + 0x50]
movaps xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rsp + 0x60]
movaps xmmword [rbp - 0x20], xmm1
mov qword [rsp + 0x30], 0x2222
lea rax, [rbp - 0x50]
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x60], xmm0
movaps xmm1, xmmword [rbp - 0x70]
movdqa xmmword [rsp + 0x50], xmm1
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.1801f4ae0
nop
test rbx, rbx
je 0x18018e412
sub rdi, rbx
mov rax, rbx
cmp rdi, 0x1000
jb 0x18018e407
add rdi, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18018e532
jmp 0x18018e407
call fcn.18000c6c0
int3
call fcn.1803459e4
int3