Function at 0x41b480
Capabilities:
Check os version

Disassembly:
lea r12, [rsp - 0x130]
cmp r12, qword [r14 + 0x10]
jbe 0x41be8d
sub rsp, 0x1b0
mov qword [rsp + 0x1a8], rbp
lea rbp, [rsp + 0x1a8]
movsd qword [rsp + 0xb8], xmm0
mov eax, 2
call fcn.0041a7c0
mov rcx, qword [0x00838db8]
mov qword [0x007e1500], rcx
call fcn.00452f40
mov qword [rsp + 0x38], rax
call fcn.00445ee0
mov qword [rsp + 0x188], rax
mov qword [rax + 0xd0], 5
lea rcx, [0x00644a38]
mov qword [rax + 0xc8], rcx
mov qword [rsp + 0x198], r14
mov rcx, qword [r14 + 0x30]
mov byte [rcx + 0xf9], 2
mov rcx, qword [r14 + 0x30]
mov rcx, qword [rcx + 0x90]
mov qword [rsp + 0x190], rcx
mov ebx, 2
mov rax, rcx
mov ecx, 4
call fcn.0043ac40
mov rcx, qword [rsp + 0x190]
mov byte [rcx + 0xb0], 6
movups xmmword [rsp + 0xc0], xmm15
lea rdx, [0x0041bec0]
mov qword [rsp + 0xc0], rdx
mov rdx, qword [rsp + 0x38]
mov qword [rsp + 0xc8], rdx
lea rdx, [rsp + 0xc0]
mov qword [rsp], rdx
call fcn.0045f140
xorps xmm15, xmm15
mov r14, qword gs:[0x28]
mov r14, qword [r14]
lea rcx, [0x00675120]
mov qword [rsp], rcx
call fcn.0045f140
xorps xmm15, xmm15
mov r14, qword gs:[0x28]
mov r14, qword [r14]
mov rcx, qword [rsp + 0x198]
mov rcx, qword [rcx + 0x30]
mov byte [rcx + 0xf9], 0
mov rax, qword [rsp + 0x190]
mov ebx, 4
mov ecx, 2
call fcn.0043ac40
cmp byte [0x007ea170], 0
je 0x41b5e7
call fcn.004540c0
mov rcx, qword [rsp + 0x188]
movups xmmword [rcx + 0xc8], xmm15
cmp dword [0x00837fcc], 0
nop
jne 0x41be7b
mov rcx, qword [0x0083c738]
mov qword [0x0083de40], rcx
lea rax, [0x00838d40]
movsd xmm0, qword [rsp + 0xb8]
call fcn.00421560
mov rax, qword [0x00838d58]
call fcn.004258e0
mov rax, qword [0x00838da8]
mov rbx, qword [0x00838db0]
call fcn.00421b80
call fcn.00452f40
mov qword [rsp + 0x58], rax
call fcn.00462f80
xorps xmm15, xmm15
mov r14, qword gs:[0x28]
mov r14, qword [r14]
mov rcx, qword [rsp]
mov qword [rsp + 0x40], rcx
movsxd rdx, dword [rsp + 8]
mov qword [rsp + 0xb0], rdx
mov rbx, qword [0x007e14f0]
mov rsi, qword [rsp + 0x58]
mov rdi, rsi
sub rsi, rbx
add qword [0x007e14e8], rsi
mov qword [0x007e14e0], rdi
mov rbx, qword [0x007e14f0]
sub rdi, rbx
lea rax, [0x0083ec38]
mov rbx, rdi
call fcn.00409a80
mov rcx, qword [rsp + 0x40]
imul rcx, rcx, 0x3b9aca00
mov rdx, qword [rsp + 0xb0]
add rcx, rdx
lea rdx, [0x0083c7a8]
mov rbx, rcx
xchg qword [rdx], rcx
mov rcx, qword [rsp + 0x58]
lea rdx, [0x0083de38]
mov rsi, rcx
xchg qword [rdx], rcx
movzx ecx, byte [0x0083d7b8]
mov rdx, qword [0x007e14e8]
lea rdi, [0x0083c7b8]
mov qword [rdi + rcx*8], rdx
movzx ecx, byte [0x0083d7b8]
lea rdx, [0x0083cfb8]
mov qword [rdx + rcx*8], rbx
mov rcx, qword [0x0083c7b0]
add rcx, qword [0x007e14e8]
mov qword [0x0083c7b0], rcx
movsxd rcx, dword [0x007e14bc]
mov rdx, qword [0x007e14d0]
sub rdx, qword [0x007e14c8]
imul rdx, rcx
mov qword [rsp + 0x30], rdx
mov rbx, qword [0x00838e18]
add rbx, qword [0x00838e10]
add rbx, qword [0x00838e20]
mov rdi, qword [0x007e14e0]
sub rdi, qword [0x007e14d8]
imul rcx, rdi
mov qword [rsp + 0x60], rcx
add rbx, rdx
add rbx, rcx
add rbx, qword [0x007e1480]
mov qword [0x007e1480], rbx
mov rdi, qword [0x007e2c80]
sub rsi, rdi
movsxd rdi, dword [0x00837fd0]
imul rdi, rsi
add rdi, qword [0x007e2c88]
xorps xmm1, xmm1
cvtsi2sd xmm1, rbx
xorps xmm2, xmm2
cvtsi2sd xmm2, rdi
divsd xmm1, xmm2
movsd qword [0x0083d7c0], xmm1
mov qword [0x007e0c74], 0
cmp byte [0x007e1478], 0
je 0x41b7e0
inc dword [0x0083d7bc]
lea rax, [0x007e14a8]
call fcn.0040b060
inc dword [0x0083d7b8]
lea rax, [0x007e14b0]
call fcn.0043e800
lea rax, [0x007e14a8]
call fcn.0040b280
call fcn.0042de60
lea rax, [0x007e0c7c]
call fcn.00423ec0
nop dword [rax + rax]
test bl, bl
je 0x41be6a
mov byte [rsp + 0x2b], bl
mov dword [rsp + 0x2c], eax
lea rax, [0x00675128]
mov qword [rsp], rax
nop dword [rax + rax]
call fcn.0045f140
xorps xmm15, xmm15
mov r14, qword gs:[0x28]
mov r14, qword [r14]
call fcn.0042dee0
nop
call fcn.004265a0
lea rax, [0x006750e8]
mov qword [rsp], rax
call fcn.0045f140
xorps xmm15, xmm15
mov r14, qword gs:[0x28]
mov r14, qword [r14]
lea rax, [0x00675138]
mov qword [rsp], rax
call fcn.0045f140
xorps xmm15, xmm15
mov r14, qword gs:[0x28]
mov r14, qword [r14]
lea rax, [0x007e0c7c]
mov ebx, dword [rsp + 0x2c]
movzx ecx, byte [rsp + 0x2b]
nop dword [rax]
call fcn.00423f40
cmp dword [0x0083861c], 0
jle 0x41ba57
movsd xmm0, qword [0x00684268]
mulsd xmm0, qword [0x0083d7c0]
movsd qword [rsp + 0xb8], xmm0
movups xmmword [rsp + 0xd0], xmm15
movups xmmword [rsp + 0xd8], xmm15
nop dword [rax]
call fcn.00438460
mov rax, qword [0x007e14c8]
sub rax, qword [0x00838190]
mov rcx, rax
movabs rax, 0x8637bd05af6c69b6
mul rcx
shr rdx, 0x13
lea rax, [rsp + 0xd0]
mov ebx, 0x18
mov rcx, rbx
mov rdi, rdx
mov esi, 3
nop
call fcn.0041cda0
mov ecx, dword [0x0083d7b8]
mov qword [rsp + 0xa8], rcx
mov rdx, rax
lea rax, [rsp + 0x140]
mov rsi, rbx
mov rbx, rdx
mov rcx, rsi
call fcn.0044cd60
mov qword [rsp + 0x1a0], rax
mov qword [rsp + 0xa0], rbx
nop dword [rax]
call fcn.00438460
lea rax, [0x0064461c]
mov ebx, 3
call fcn.00438d00
mov rax, qword [rsp + 0xa8]
nop
call fcn.00438a40
lea rax, [0x006443bd]
mov ebx, 2
call fcn.00438d00
mov rax, qword [rsp + 0x1a0]
mov rbx, qword [rsp + 0xa0]
call fcn.00438d00
lea rax, [0x0064446f]
mov ebx, 2
call fcn.00438d00
movsd xmm0, qword [rsp + 0xb8]
cvttsd2si rax, xmm0
call fcn.00438b20
lea rax, [0x0064449c]
mov ebx, 3
nop dword [rax + rax]
call fcn.00438d00
call fcn.004384e0
mov rax, qword [0x007e14c8]
movups xmmword [rsp + 0xe8], xmm15
movups xmmword [rsp + 0xf0], xmm15
mov rcx, qword [0x007e14d0]
mov qword [rsp + 0xe8], rcx
mov rcx, qword [0x007e14d8]
mov qword [rsp + 0xf0], rcx
mov rcx, qword [0x007e14e0]
mov qword [rsp + 0xf8], rcx
xor ecx, ecx
jmp 0x41baf8
lea rax, [0x007a333c]
nop
call fcn.004479a0
lea rax, [0x007a3334]
call fcn.004479a0
mov rax, qword [rsp + 0x188]
call fcn.00445f00
mov rbp, qword [rsp + 0x1a8]
add rsp, 0x1b0
ret
sub rdi, rax
lea rax, [rsp + 0xd0]
mov ebx, 0x18
mov rcx, rbx
call fcn.0041ce40
mov rcx, rbx
mov rbx, rax
lea rax, [rsp + 0x120]
call fcn.0044cd60
mov qword [rsp + 0x1a0], rax
mov qword [rsp + 0xa0], rbx
call fcn.00438460
mov rax, qword [rsp + 0x1a0]
mov rbx, qword [rsp + 0xa0]
nop
call fcn.00438d00
call fcn.004384e0
mov rdx, qword [rsp + 0x70]
lea rcx, [rdx + 1]
mov rax, qword [rsp + 0x48]
cmp rcx, 3
jge 0x41bb4e
mov qword [rsp + 0x70], rcx
mov rdi, qword [rsp + rcx*8 + 0xe8]
mov qword [rsp + 0x48], rdi
test rcx, rcx
je 0x41ba8e
mov qword [rsp + 0xb0], rax
call fcn.00438460
lea rax, [0x00644395]
mov ebx, 1
call fcn.00438d00
call fcn.004384e0
mov rax, qword [rsp + 0xb0]
mov rdi, qword [rsp + 0x48]
jmp 0x41ba8e
call fcn.00438460
lea rax, [0x00646042]
mov ebx, 0xb
nop
call fcn.00438d00
call fcn.004384e0
movups xmmword [rsp + 0x160], xmm15
movups xmmword [rsp + 0x168], xmm15
movups xmmword [rsp + 0x178], xmm15
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x160], rax
mov rax, qword [0x00838e10]
mov qword [rsp + 0x168], rax
mov rax, qword [0x00838e20]
add rax, qword [0x00838e18]
mov qword [rsp + 0x170], rax
mov rax, qword [0x00838e28]
mov qword [rsp + 0x178], rax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x180], rax
xor eax, eax
jmp 0x41bc37
lea rax, [rsp + 0xd0]
mov ebx, 0x18
mov rcx, rbx
call fcn.0041ce40
mov rcx, rbx
mov rbx, rax
lea rax, [rsp + 0x100]
call fcn.0044cd60
mov qword [rsp + 0x1a0], rax
mov qword [rsp + 0xa0], rbx
call fcn.00438460
mov rax, qword [rsp + 0x1a0]
mov rbx, qword [rsp + 0xa0]
call fcn.00438d00
call fcn.004384e0
mov rdx, qword [rsp + 0x68]
lea rax, [rdx + 1]
cmp rax, 5
jge 0x41bcb9
mov qword [rsp + 0x68], rax
mov rdi, qword [rsp + rax*8 + 0x160]
mov qword [rsp + 0x50], rdi
cmp rax, 2
je 0x41bc60
cmp rax, 3
jne 0x41bc85
nop dword [rax + rax]
call fcn.00438460
lea rax, [0x00644399]
mov ebx, 1
call fcn.00438d00
call fcn.004384e0
mov rdi, qword [rsp + 0x50]
jmp 0x41bbd7
test rax, rax
je 0x41bbd7
call fcn.00438460
lea rax, [0x00644395]
mov ebx, 1
nop
call fcn.00438d00
call fcn.004384e0
mov rax, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x50]
jmp 0x41bbd7
mov rax, qword [0x007e14f8]
mov qword [rsp + 0xa8], rax
mov rcx, qword [0x007e1500]
mov qword [rsp + 0x98], rcx
mov rdx, qword [0x007e1508]
mov qword [rsp + 0x90], rdx
mov rbx, qword [0x007e1510]
mov qword [rsp + 0x88], rbx
mov rsi, qword [0x00838dd0]
mov qword [rsp + 0x80], rsi
mov rdi, qword [0x00838de0]
mov qword [rsp + 0x78], rdi
movsxd r8, dword [0x007e14c0]
mov qword [rsp + 0xb0], r8
nop
call fcn.00438460
lea rax, [0x006456e2]
mov ebx, 9
call fcn.00438d00
mov rax, qword [rsp + 0xa8]
shr rax, 0x14
call fcn.00438a40
lea rax, [0x006443d5]
mov ebx, 2
call fcn.00438d00
mov rax, qword [rsp + 0x98]
shr rax, 0x14
call fcn.00438a40
lea rax, [0x006443d5]
mov ebx, 2
call fcn.00438d00
mov rax, qword [rsp + 0x90]
shr rax, 0x14
call fcn.00438a40
lea rax, [0x0064489e]
mov ebx, 5
call fcn.00438d00
mov rax, qword [rsp + 0x88]
shr rax, 0x14
call fcn.00438a40
lea rax, [0x00645a82]
mov ebx, 0xa
call fcn.00438d00
mov rax, qword [rsp + 0x80]
shr rax, 0x14
call fcn.00438a40
lea rax, [0x0064656d]
mov ebx, 0xc
nop dword [rax + rax]
call fcn.00438d00
mov rax, qword [rsp + 0x78]
shr rax, 0x14
call fcn.00438a40
lea rax, [0x00646ca6]
mov ebx, 0xd
nop
call fcn.00438d00
mov rax, qword [rsp + 0xb0]
call fcn.00438b20
lea rax, [0x006443bf]
mov ebx, 2
nop
call fcn.00438d00
call fcn.004384e0
cmp byte [0x007e1478], 0
je 0x41be4e
call fcn.00438460
lea rax, [0x0064567f]
mov ebx, 9
call fcn.00438d00
call fcn.004384e0
call fcn.00438460
call fcn.004386a0
call fcn.004384e0
nop dword [rax]
call fcn.004384e0
jmp 0x41ba57
lea rax, [0x0064db41]
mov ebx, 0x1b
call fcn.00436d80
lea rax, [0x0064ec27]
mov ebx, 0x1d
call fcn.00436d80
nop
movsd qword [rsp + 8], xmm0
call fcn.0045f280
movsd xmm0, qword [rsp + 8]
nop
jmp fcn.0041b480