Function at 0x44a09c
Capabilities:
Get os information via kuser_shared_data

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x38
mov esi, dword [esp + 0x4c]
mov dword [esp], 0xaa937b77
mov edi, dword [esp + 0x18]
mov ebx, dword [esp + 0x14]
mov eax, dword [esp]
cmp eax, 0x845a73
jle 0x44a104
cmp eax, 0x3bc3b378
jg 0x44a15a
cmp eax, 0x12caeac4
jle 0x44a1e1
cmp eax, 0x1ceb96f0
jle 0x44a337
cmp eax, 0x1ceb96f1
je 0x44a4e7
cmp eax, 0x241b1475
je 0x44a521
cmp eax, 0x3a09e3b4
je 0x44a4d8
jmp 0x44a0b6
cmp eax, 0xc71cd4c9
jg 0x44a1a9
cmp eax, 0xa076448c
jle 0x44a24a
cmp eax, 0xb2409be5
jle 0x44a365
cmp eax, 0xb2409be6
je 0x44a536
cmp eax, 0xbf8677a6
je 0x44a576
cmp eax, 0xc3501d22
jne 0x44a0b6
movzx ebx, byte [esp + 7]
add ebx, 5
mov dword [esp], 0x4da77fde
jmp 0x44a0b6
cmp eax, 0x602deeae
jle 0x44a2a3
cmp eax, 0x65a2ab42
jle 0x44a387
cmp eax, 0x65a2ab43
je 0x44a594
cmp eax, 0x724743a3
je 0x44a5ba
cmp eax, 0x7e43d795
jne 0x44a0b6
movzx eax, byte [esp + 7]
add eax, 9
mov dword [esp + 0x24], eax
mov dword [esp], 0x1ceb96f1
jmp 0x44a0b6
cmp eax, 0xe04cd1eb
jg 0x44a2f8
cmp eax, 0xd85c26d5
jg 0x44a3d4
cmp eax, 0xc7b8ff6d
je 0x44a5d2
cmp eax, 0xccb8bb14
jne 0x44a6fe
mov dword [esp], 0x76d9ca6
jmp 0x44a0b6
cmp eax, 0x76d9ca5
jg 0x44a414
cmp eax, 0x845a74
je case.0x44a3f9.3
cmp eax, 0x6f0d1ed
jne 0x44a0b6
mov ecx, dword [esp + 8]
shr ecx, 0xc
lea eax, [ecx + 0xe1]
add ecx, 0xfffffff6
imul eax, eax
shr ecx, 9
mov edx, eax
shl edx, 0xa
add edx, eax
dec edx
imul ecx, ecx, 0xfc
add ecx, 0xb814
mov dword [esp + 8], ecx
mov ecx, 0xeb227f65
cmp eax, edx
je 0x44a23e
mov ecx, 0x4da77fde
mov dword [esp], ecx
mov ebx, dword [esp + 0x2c]
jmp 0x44a0b6
cmp eax, 0x895cf965
jg 0x44a438
cmp eax, 0x88be01a0
je 0x44a5ec
cmp eax, 0x8927a85f
jne 0x44a0b6
mov eax, dword [esp + 8]
mov ecx, 0x163
add eax, ecx
mov ecx, eax
imul ecx, eax
shr eax, 2
imul edx, ecx, 0x3759
dec edx
add eax, 0xffffff85
mov dword [esp + 8], eax
mov eax, 0x76d9ca6
cmp ecx, edx
je 0x44a6f6
mov eax, 0xc71cd4ca
jmp 0x44a6f6
cmp eax, 0x459792f1
jg 0x44a46b
cmp eax, 0x3bc3b379
je 0x44a3bc
cmp eax, 0x4431cd5b
jne 0x44a0b6
shr edi, 0xd
imul ebp, edi, 0x49d8
add ebp, 0x1c
mov edi, ebp
shr edi, 1
push edi
call fcn.0044a09c
add esp, 4
mov eax, 0xeb227f65
cmp ebp, 0xaf
jae 0x44a6f6
mov eax, 0x724743a3
jmp 0x44a6f6
cmp eax, 0xeee9bf98
jg 0x44a491
cmp eax, 0xe04cd1ec
je 0x44a61a
cmp eax, 0xeb227f65
jne 0x44a0b6
mov eax, dword [0x7ffe0260]
mov dword [esp + 0x1c], eax
mov eax, dword [0x7ffe0264]
mov dword [esp + 0x20], eax
mov dword [esp], 0x724743a3
jmp 0x44a0b6
cmp eax, 0x12caeac5
je 0x44a651
cmp eax, 0x13d0c0b8
jne 0x44a0b6
movzx eax, byte [esp + 7]
add eax, 7
mov dword [esp + 0x28], eax
mov dword [esp], 0x12caeac5
jmp 0x44a0b6
cmp eax, 0xa076448d
je 0x44a669
cmp eax, 0xaa937b77
jne 0x44a0b6
mov dword [esp], 0x241b1475
jmp 0x44a0b6
cmp eax, 0x602deeaf
je 0x44a67e
cmp eax, 0x64ee4232
jne 0x44a0b6
mov eax, dword [esp + 0xc]
test eax, eax
je 0x44a4d8
mov ebx, 2
cmp eax, 1
je case.default.0x44a3f9
cmp eax, 2
jne 0x44a42a
movzx eax, byte [esp + 7]
add eax, 3
mov dword [esp + 0x2c], eax
mov dword [esp], 0x6f0d1ed
jmp 0x44a0b6
cmp eax, 0xd85c26d6
je 0x44a5ae
cmp eax, 0xdd27e91b
jne 0x44a0b6
xor ebx, ebx
mov eax, dword [esp + 0xc]
cmp eax, 3
ja case.default.0x44a3f9
jmp dword [eax*4 + 0x4733d4]
movzx ebx, byte [esp + 7]
add ebx, 0xb
mov dword [esp], 0x4da77fde
jmp 0x44a0b6
cmp eax, 0x76d9ca6
je 0x44a68a
cmp eax, 0xa3fe076
jne 0x44a0b6
mov dword [esp], 0x4da77fde
xor ebx, ebx
jmp 0x44a0b6
cmp eax, 0x895cf966
je 0x44a4c4
cmp eax, 0x9d1fe6d8
jne 0x44a0b6
imul eax, dword [esp + 8], 0x54612000
add eax, 0xb5ae5f53
mov dword [esp + 8], eax
mov dword [esp], 0x602deeaf
jmp 0x44a0b6
cmp eax, 0x459792f2
je 0x44a69f
cmp eax, 0x4da77fde
jne 0x44a0b6
mov dword [esp + 0x34], ebx
mov dword [esp], 0xccb8bb14
jmp 0x44a0b6
cmp eax, 0xeee9bf99
je 0x44a6ce
cmp eax, 0xf6c5cd5b
jne 0x44a0b6
mov eax, dword [esp + 0x10]
cmp eax, 5
je 0x44a39d
cmp eax, 6
je 0x44a3ea
xor ebx, ebx
cmp eax, 0xa
jne case.default.0x44a3f9
movzx ebx, byte [esp + 7]
add ebx, 0xd
mov dword [esp], 0x4da77fde
jmp 0x44a0b6
mov dword [esp], 0x4da77fde
xor ebx, ebx
inc ebx
jmp 0x44a0b6
mov eax, dword [esp + 8]
shr eax, 0xb
lea ecx, [eax - 0x27]
imul ecx, ecx
imul edx, ecx, 0x31fd
dec edx
imul eax, eax, 0x4b
add eax, 0x286e
mov dword [esp + 8], eax
mov eax, 0xb2409be6
cmp ecx, edx
je 0x44a515
mov eax, 0x4da77fde
mov dword [esp], eax
mov ebx, dword [esp + 0x24]
jmp 0x44a0b6
mov eax, dword [0x7ffe026c]
mov dword [esp + 0x10], eax
mov dword [esp], 0xa076448d
jmp 0x44a0b6
mov ebp, edi
add ebp, 0xffffff8d
mov edi, ebp
shr edi, 3
add edi, 0xb6
shr edi, 0xb
push edi
call fcn.0044a09c
add esp, 4
push edi
call fcn.0044a09c
add esp, 4
mov eax, 0x724743a3
cmp ebp, 0x183a50
jae 0x44a6f6
mov eax, 0x88be01a0
jmp 0x44a6f6
shl edi, 8
add edi, 0xf2d8
push edi
call fcn.0044a09c
add esp, 4
mov dword [esp], 0xa076448d
jmp 0x44a0b6
and edi, 0xfffffffe
add edi, edi
add edi, 0xffffffbf
push edi
call fcn.0044a09c
add esp, 4
push edi
call fcn.0044a09c
add esp, 4
mov dword [esp], 0xeb227f65
jmp 0x44a0b6
mov eax, dword [esp + 0x20]
cmp eax, 2
sete byte [esp + 7]
mov dword [esp], 0xf6c5cd5b
jmp 0x44a0b6
mov eax, dword [esp + 0x1c]
mov dword [esi + 8], eax
mov eax, dword [esp + 0xc]
mov dword [esi + 4], eax
mov dword [esp], 0x8927a85f
jmp 0x44a0b6
shl edi, 6
add edi, 0x2978
mov eax, edi
shr eax, 5
and eax, 0xffffffe0
mov ecx, 0x4431cd5b
cmp edi, 0x400
jb 0x44a60f
mov ecx, 0x65a2ab43
lea edi, [eax + eax*4]
mov dword [esp], ecx
jmp 0x44a0b6
lea eax, [edi*8 + 0xf1]
shr eax, 0xc
imul edi, eax, 0x4057
add edi, 0x95
push edi
call fcn.0044a09c
add esp, 4
mov eax, 0x13d0c0b8
cmp edi, 0x14
jl 0x44a6f6
mov eax, 0x459792f2
jmp 0x44a6f6
mov dword [esp + 8], 0x15338000
mov dword [esp], 0x4da77fde
mov ebx, dword [esp + 0x28]
jmp 0x44a0b6
mov eax, dword [0x7ffe0270]
mov dword [esp + 0xc], eax
mov dword [esp], 0xeee9bf99
jmp 0x44a0b6
mov dword [esp], 0xc7b8ff6d
jmp 0x44a0b6
movzx eax, byte [esp + 7]
mov dword [esp + 0x30], eax
mov dword [esp], 0x9d1fe6d8
jmp 0x44a0b6
shl edi, 0xd
or edi, 0xf8
push edi
call fcn.0044a09c
add esp, 4
push edi
call fcn.0044a09c
add esp, 4
mov eax, 0x724743a3
cmp edi, 0xa6
jge 0x44a6f6
mov eax, 0xa076448d
jmp 0x44a6f6
mov eax, dword [esp + 8]
lea ecx, [eax - 0x2b]
imul ecx, ecx
imul edx, ecx, 0x3d07
dec edx
add eax, 0x10a
mov dword [esp + 8], eax
mov eax, 0xa076448d
cmp ecx, edx
je 0x44a6f6
mov eax, 0xd85c26d6
mov dword [esp], eax
jmp 0x44a0b6
cmp eax, 0xc71cd4ca
jne 0x44a0b6
mov dword [esp + 0x18], edi
mov dword [esp + 0x14], ebx
mov eax, dword [esp + 0x10]
mov dword [esi], eax
mov eax, dword [esp + 0x30]
mov dword [esi + 0xc], eax
mov eax, dword [esp + 0x34]
add esp, 0x38
pop esi
pop edi
pop ebx
pop ebp
ret