Function at 0x4414c0
Capabilities:
Get os information via kuser_shared_data

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x34
mov dword [esp], 0x78a13529
mov esi, dword [esp + 0x18]
mov ebp, dword [esp + 0x14]
xor edi, edi
inc edi
mov eax, dword [esp]
cmp eax, 0xedfbd3ce
jle 0x441533
cmp eax, 0x3e41e8cc
jle 0x441586
cmp eax, 0x626988b7
jle 0x4415ef
cmp eax, 0x6a667c0e
jle 0x4416df
cmp eax, 0x6a667c0f
je 0x44189c
cmp eax, 0x75fa082a
je 0x441923
cmp eax, 0x78a13529
jne 0x4414d9
mov eax, dword [0x7ffe026c]
mov dword [esp + 0x10], eax
mov dword [esp], 0xb8b656b8
jmp 0x4414d9
cmp eax, 0xb2a1aad1
jg 0x4415b7
cmp eax, 0xa5ae260e
jg 0x441615
cmp eax, 0x96f251b9
jg 0x44171e
cmp eax, 0x87a2011e
je 0x441966
cmp eax, 0x8b71f59c
jne 0x441ac4
mov eax, dword [esp + 8]
shl eax, 0x19
add eax, 0xda000000
mov dword [esp + 8], eax
mov dword [esp], 0x4034fc6c
mov ebp, dword [esp + 0x24]
jmp 0x4414d9
cmp eax, 0x1f5e02cc
jg 0x44163b
cmp eax, 0x12ec38b1
jg 0x441748
cmp eax, 0xedfbd3cf
je 0x44198d
cmp eax, 0x1249dc0b
je 0x441ab8
jmp 0x4414d9
cmp eax, 0xc37141f2
jg 0x441685
cmp eax, 0xbbaf56ef
jg 0x441776
cmp eax, 0xb2a1aad2
je case.0x44182c.0
cmp eax, 0xb8b656b8
jne 0x4414d9
mov dword [esp], 0xaeaab18d
jmp 0x4414d9
cmp eax, 0x4131dced
jg 0x4417c1
cmp eax, 0x3e41e8cd
je 0x441999
cmp eax, 0x4034fc6c
je case.default.0x44182c
jmp 0x4414d9
cmp eax, 0xaeaab18c
jg 0x4417ec
cmp eax, 0xa5ae260f
je case.0x44182c.2
cmp eax, 0xaa3358b0
je 0x4418e9
jmp 0x4414d9
cmp eax, 0x327a55ac
jg 0x441807
cmp eax, 0x1f5e02cd
je 0x4419a5
cmp eax, 0x22eb69f6
jne 0x4414d9
mov eax, dword [esp + 8]
shl eax, 7
add eax, 0x59e9
shr eax, 0xe
imul eax, eax, 0x99
mov dword [esp + 8], eax
mov dword [esp], 0x4034fc6c
mov ebp, dword [esp + 0x28]
jmp 0x4414d9
cmp eax, 0xd462280f
jg 0x441847
cmp eax, 0xc37141f3
je 0x4419d2
cmp eax, 0xd2d87be9
jne 0x4414d9
imul ecx, dword [esp + 8], 0x53
shr ecx, 0xa
imul eax, ecx, 0xe0
imul ecx, ecx
imul edx, ecx, 0x7e7f
dec edx
add eax, 0x6c80
mov dword [esp + 8], eax
mov eax, 0xc275a18f
cmp edx, ecx
je 0x4416d5
mov eax, 0x4034fc6c
mov dword [esp], eax
xor ebp, ebp
jmp 0x4414d9
cmp eax, 0x626988b8
je case.0x44182c.3
cmp eax, 0x6753933f
jne 0x4414d9
mov eax, dword [esp + 8]
shl eax, 0xa
add eax, 0x2a403
shr eax, 8
imul eax, eax, 0x37000
mov dword [esp + 8], eax
mov dword [esp], 0x4034fc6c
mov ebp, dword [esp + 0x20]
jmp 0x4414d9
cmp eax, 0x96f251ba
je 0x4419ec
cmp eax, 0x9978191a
jne 0x4414d9
movzx ebp, byte [esp + 7]
add ebp, 0xd
mov dword [esp], 0x4034fc6c
jmp 0x4414d9
cmp eax, 0x12ec38b2
je 0x441a1f
cmp eax, 0x1e35e006
jne 0x4414d9
movzx eax, byte [esp + 7]
add eax, 7
mov dword [esp + 0x24], eax
mov dword [esp], 0x8b71f59c
jmp 0x4414d9
cmp eax, 0xbbaf56f0
je 0x441a45
cmp eax, 0xc275a18f
jne 0x4414d9
mov eax, dword [0x7ffe0260]
mov dword [esp + 0x1c], eax
cmp dword [0x7ffe0264], 2
sete byte [esp + 7]
mov eax, dword [esp + 0x10]
cmp eax, 5
je 0x44189c
cmp eax, 6
je 0x44181d
cmp eax, 0xa
jne 0x4416a6
jmp 0x441734
cmp eax, 0x4131dcee
je 0x441a5f
cmp eax, 0x4d070cd3
jne 0x4414d9
movzx eax, byte [esp + 7]
mov dword [esp + 0x2c], eax
mov dword [esp], 0x4131dcee
jmp 0x4414d9
cmp eax, 0xaeaab18d
je 0x441a91
cmp eax, 0xb1bedde3
je 0x4418db
jmp 0x4414d9
cmp eax, 0x327a55ad
je 0x4418b3
cmp eax, 0x3de22966
jne 0x4414d9
xor ebp, ebp
mov eax, dword [esp + 0xc]
cmp eax, 3
ja case.default.0x44182c
jmp dword [eax*4 + 0x468dd8]
movzx ebp, byte [esp + 7]
add ebp, 5
mov dword [esp], 0x4034fc6c
jmp 0x4414d9
cmp eax, 0xd4622810
je 0x441aa6
cmp eax, 0xecb12a5f
jne 0x4414d9
shl esi, 0xd
add esi, 0xfff29f7a
shr esi, 0xa
add esi, 0xffffff6f
push esi
call fcn.004414c0
add esp, 4
push esi
call fcn.004414c0
add esp, 4
mov eax, 0x96f251ba
cmp esi, 0x91
jae 0x441a89
mov eax, 0xbbaf56f0
jmp 0x441a89
mov eax, dword [esp + 0xc]
test eax, eax
je 0x4418db
mov ebp, 2
cmp eax, 1
je case.default.0x44182c
cmp eax, 2
jne 0x4418e9
movzx eax, byte [esp + 7]
add eax, 3
mov dword [esp + 0x28], eax
mov dword [esp], 0x22eb69f6
jmp 0x4414d9
mov dword [esp + 0x30], ebp
mov dword [esp], 0x4d070cd3
jmp 0x4414d9
mov dword [esp], 0x4034fc6c
mov ebp, edi
jmp 0x4414d9
mov dword [esp], 0x4034fc6c
xor ebp, ebp
jmp 0x4414d9
movzx ebp, byte [esp + 7]
add ebp, 9
mov dword [esp], 0x4034fc6c
jmp 0x4414d9
movzx eax, byte [esp + 7]
add eax, 0xb
mov dword [esp + 0x20], eax
mov dword [esp], 0x6753933f
jmp 0x4414d9
shl esi, 8
and esi, 0x3fff00
mov ebx, esi
add ebx, 0xffffff5d
mov esi, ebx
shr esi, 6
push esi
call fcn.004414c0
add esp, 4
push esi
call fcn.004414c0
add esp, 4
mov eax, 0x87a2011e
cmp ebx, 0x3800
jb 0x441a89
mov eax, 0xc275a18f
jmp 0x441a89
and esi, 0xfffffffe
shl esi, 7
add esi, 0xffffff99
push esi
call fcn.004414c0
add esp, 4
push esi
call fcn.004414c0
add esp, 4
mov dword [esp], 0x4d070cd3
jmp 0x4414d9
mov dword [esp], 0x3e41e8cd
jmp 0x4414d9
mov dword [esp], 0x81fa49ba
jmp 0x4414d9
mov ebx, esi
shr ebx, 0xf
add ebx, 0x6e
push ebx
call fcn.004414c0
add esp, 4
mov eax, 0x12ec38b2
cmp esi, 0x270000
jae 0x4419c8
mov eax, 0x75fa082a
mov dword [esp], eax
mov esi, ebx
jmp 0x4414d9
shl esi, 0x11
add esi, 0xea0000
and esi, 0xfff00000
add esi, 0xfffffb40
jmp 0x441ab8
mov eax, esi
shl eax, 5
add esi, eax
add esi, 0xffffe48e
push esi
call fcn.004414c0
add esp, 4
push esi
call fcn.004414c0
add esp, 4
mov eax, 0x327a55ad
cmp esi, 0xc9
je 0x441a89
mov eax, 0xaeaab18d
jmp 0x441a89
imul esi, esi, 0xc5
add esi, 0xd3
push esi
call fcn.004414c0
add esp, 4
mov eax, 0x4d070cd3
cmp esi, 0x77
je 0x441a89
mov eax, 0xd4622810
jmp 0x441a89
shl esi, 3
and esi, 0xffffff80
mov eax, 0xaeaab18d
cmp esi, 0xf8
jge 0x441a89
mov eax, 0x327a55ad
jmp 0x441a89
mov ecx, dword [esp + 8]
shr ecx, 0xa
add ecx, 0xfffffff8
imul ecx, ecx
imul edx, ecx, 0x7dff
dec edx
mov dword [esp + 8], 0
mov eax, 0x1f5e02cd
cmp edx, ecx
je 0x441a89
mov eax, 0xedfbd3cf
mov dword [esp], eax
jmp 0x4414d9
mov eax, dword [0x7ffe0270]
mov dword [esp + 0xc], eax
mov dword [esp], 0x1249dc0b
jmp 0x4414d9
shr esi, 6
and esi, 0xfffffff8
imul esi, esi, 0x1b000
or esi, 0xd7
mov dword [esp], 0xc275a18f
jmp 0x4414d9
cmp eax, 0x81fa49ba
jne 0x4414d9
mov dword [esp + 0x18], esi
mov dword [esp + 0x14], ebp
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x48]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0xc]
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x10]
mov dword [ecx], eax
mov eax, dword [esp + 0x2c]
mov dword [ecx + 0xc], eax
mov eax, dword [esp + 0x30]
add esp, 0x34
pop esi
pop edi
pop ebx
pop ebp
ret