Function at 0x40324f
Capabilities:
Check os version
Encrypt data using chaskey

Disassembly:
sub esp, 0x180
push ebx
push ebp
push esi
push edi
xor ebx, ebx
push 0x8001
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x14], str.Error_writing_temporary_file._Make_sure_your_temp_folder_is_valid.
xor esi, esi
mov byte [esp + 0x18], 0x20
call dword [sym.imp.KERNEL32.dll_SetErrorMode]
call dword [sym.imp.KERNEL32.dll_GetVersion]
cmp ax, 6
je 0x403296
push ebx
call fcn.00406087
cmp eax, ebx
je 0x403296
push 0xc00
call eax
push str.UXTHEME
call fcn.0040601d
push str.USERENV
call fcn.0040601d
push str.SETUPAPI
call fcn.0040601d
push 0xd
call fcn.00406087
push 0xb
call fcn.00406087
mov dword [0x423f84], eax
call dword [sym.imp.COMCTL32.dll_InitCommonControls]
push ebx
call dword [sym.imp.ole32.dll_OleInitialize]
mov dword [0x424038], eax
push ebx
lea eax, [esp + 0x34]
push 0x160
push eax
push ebx
push 0x41f538
rol ecx, 0x1b
cmp dword [0x40902b], 0xda9820ae
jne 0x4032ff
add ecx, 0x2ad4a338
sub ebx, 0xe82c2b14
dec esi
ror edi, 0xa
sub ebx, ebp
sub edx, ecx
or ecx, ebx
and ecx, 0x4e461f28
call fcn.00404ddb
mov eax, 0xa0fc24d5
add ebx, ecx
xchg edi, eax
neg eax
sub eax, 0xcdb478a0
cmp dword [0x40938b], edi
js 0x403338
call fcn.00405558
and ebx, edi
add eax, 0xdcca77c4
shr esi, 0x10
xor edx, esi
mov ecx, 0x3ea6c643
dec eax
shr edx, 0xe
and eax, 0x8cfda4da
add edx, 0x33414e57
test dword [0x4093bf], esi
je 0x403365
ror esi, 0x11
call fcn.00404ddb
shl esi, 7
neg ebx
dec ebx
add esi, 0xd6129cd6
xor eax, esp
inc esi
dec ecx
jne 0x40334a
xor edx, eax
add eax, esi
or edi, 0xcb79b8ed
mov ecx, 0x4950192a
shr ecx, 0x17
or ecx, 0x2397e47c
ror eax, 0x12
cmp dword [0x409412], 0xfdfc81e4
jno 0x4033a9
call fcn.00405558
sub esi, edi
neg esi
call fcn.00404ddb
mov ecx, 0x44fb1f0b
call fcn.004027ba
ror eax, 0x17
call fcn.004027ba
sub edi, 0xe434a790
and ebx, dword [0x4094e9]
sub ebx, 0x7317cbf8
add edi, dword [0x40949f]
sub dword [0x4241d5], esi
shl eax, 0x14
dec esi
mov eax, dword [0x40939d]
inc edx
mov esi, ebp
neg esi
test dword [0x409086], 0xb9b7bc52
jle 0x4033ff
neg esi
shr eax, 0xd
neg edx
dec ecx
jne 0x4033b7
mov ecx, 0x442305fb
shl ebx, 2
xchg ebx, eax
and esi, 0x5d6d94b5
and dword [0x4245ae], 0x74875341
add ebx, dword [0x4092d1]
mov edx, esp
not edx
xor ebx, dword [0x409083]
and ebx, eax
add dword [0x42442c], ecx
xchg edi, edx
mov eax, dword [str.SetDefaultDllDirectories]
dec ecx
jne 0x40340d
xor edx, esp
inc edi
sub edx, 0x2533eac4
xchg esi, edx
cmp dword [0x4093d3], 0x7efd846d
jne 0x40345f
neg eax
rol esi, 0x11
not edx
test dword [0x40945c], esp
jge 0x40346f
ror edi, 0x1f
xor ecx, 0x239a7dda
mov esi, 0xb5251a92
dec edi
ror edi, 0x14
xor edx, ecx
call fcn.00401607
ror edi, 0xe
call fcn.00404ddb
add eax, 0xb7ecb795
sub esi, ebx
xchg eax, edx
mov dword [0x42449d], 0x6ba50e42
sub dword [0x4244e6], ebx
add dword [0x42424a], edx
xchg eax, edx
add esi, ebx
sub eax, 0xb7ecb795
call fcn.004016c5
rol edi, 0xe
xor edx, ecx
rol edi, 0x14
inc edi
or esi, 0xe9a96da4
call fcn.00401a28
rol edi, 7
xor dword [0x42475d], 0xd0dd81d2
call fcn.00402591
add eax, esp
add dword [0x4247da], ecx
and dword [0x424795], edx
sub ebx, dword [0x424905]
sub ebx, 0x97384250
xor edx, dword [0x424fa7]
call fcn.00404ddb
sub esi, dword [0x424cb7]
xchg edi, eax
add ebx, eax
or edi, dword [0x42494a]
add edx, 0x83dcf08b
add dword [0x42411b], esi
call fcn.00404ddb
call fcn.004018ec
sub edx, 0x83dcf08b
sub ebx, eax
xchg edi, eax
call fcn.00401607
add ebx, 0x97384250
sub dword [0x424796], ecx
mov dword [0x424206], edi
sub eax, esp
sub dword [0x42463a], 0x12d352eb
ror edi, 7
call fcn.00401607
xor esi, 0xfdad7fb6
xor edx, 0xfbc09967
xor edi, dword [0x424ec2]
xor edi, 0xd3d4a2f0
xor esi, dword [0x424a87]
or edx, dword [0x424cfb]
call fcn.0040641e
or ecx, dword [0x424cb9]
add eax, edi
inc edx
xor edx, 0x4742b59a
not esi
xor ecx, edi
not esi
add dword [0x42445a], ecx
xchg edi, edx
call fcn.004053a5
rol eax, 0x1f
xor esi, 0x85bede7d
call fcn.00405dff
xor esi, 0x85bede7d
ror eax, 0x1f
call fcn.00403235
xchg edi, edx
not esi
xor ecx, edi
not esi
xor edx, 0x4742b59a
dec edx
sub eax, edi
call fcn.004027ba
xor edi, 0xd3d4a2f0
xor edx, 0xfbc09967
push esi
xor ecx, 0x7ccbcca8
rol eax, 0x1f
call fcn.00404ddb
neg edx
inc eax
or dword [0x424782], eax
not ebx
xor dword [0x4247d3], ecx
neg esi
inc eax
sub eax, dword [0x424b5d]
call fcn.00404ea6
xor dword [0x4243ff], 0xd1bdb6a1
inc edi
inc eax
mov dword [0x424309], 0xd441342e
or eax, dword [0x424d50]
call fcn.00402591
dec eax
dec edi
call fcn.00405dff
dec eax
neg esi
not ebx
xor dword [0x4244c5], eax
dec eax
neg edx
call fcn.00401e32
ror eax, 0x1f
xor ecx, 0x7ccbcca8
mov edi, 0x8543b2dc
sub edi, dword [0x4249d0]
xor eax, 0xa0c862ad
add dword [0x424446], eax
or edx, dword [0x424cb4]
call fcn.0040641e
neg edx
or eax, dword [0x42499c]
dec esi
add dword [0x4243a1], edx
xor ebx, dword [0x424eb6]
sub ecx, eax
sub edi, dword [0x424b90]
sub ebx, 0xbcbafe50
ror ebx, 0xd
rol ebx, 0xd
add ebx, 0xbcbafe50
add ecx, eax
mov dword [0x424322], ecx
inc esi
neg edx
call fcn.00406183
sub dword [0x4245a7], esi
xor eax, 0xa0c862ad
or edi, 0xe3d7f556
xor edi, dword [0x424ac3]
xor eax, ebx
sub esi, 0xfe6c0c55
mov dword [0x4244b4], ecx
xor ecx, ebp
dec edi
add eax, 0xa22db0b9
and dword [0x4246f4], edi
cmp eax, 0x4246f4
ror ebx, 0x14
or esi, dword [0x424ccf]
xor eax, dword [0x424ada]
rol ebx, 0x14
xor dword [0x42418d], edx
sub eax, 0xa22db0b9
inc edi
xor ecx, ebp
add dword [0x424136], esi
add esi, 0xfe6c0c55
xor eax, ebx
sub edi, 0xb5a48b79
not ebx
inc eax
sub edi, 0x6f6603f9
xor edi, 0xab18b01b
not esi
call fcn.00402a74
add dword [0x424632], eax
call fcn.00404ddb
sub ecx, ebx
call fcn.00405dff
sub esi, dword [0x424a38]
and dword [0x4245fd], 0x7fb9a89
sub ebx, 0xa2d07c6a
add ebx, 0xa2d07c6a
mov dword [0x42436a], 0x6928d4f4
add ecx, ebx
call fcn.0040223e
xor dword [0x4241f5], ebx
not esi
xor edi, 0xab18b01b
add edi, 0x6f6603f9
dec eax
not ebx
push edi
call fcn.00401b10
or dword [0x424537], ebx
ror eax, 0x15
not ecx
xchg esi, edx
sub esi, dword [0x424d39]
or dword [0x4244db], 0xb3d83c35
call fcn.00404ddb
add esi, dword [0x424bac]
ror esi, 3
call fcn.00404ddb
add dword [0x4243ce], edi
and dword [0x4244a7], eax
mov dword [0x42430c], 0x8e4b416e
call fcn.00402a74
call fcn.00403235
call fcn.004018ec
call fcn.00405dff
mov dword [0x424192], ecx
call fcn.00401d08
rol esi, 3
xchg esi, edx
not ecx
rol eax, 0x15
and dword [0x4247d7], esi
call fcn.00401e32
mov ecx, 0x926c4a04
add edx, esp
call fcn.00402a74
dec ecx
call fcn.00404ddb
and dword [0x424761], eax
call fcn.00406183
ror edi, 0x10
xchg edx, eax
or dword [0x4246f9], eax
xor ecx, dword [0x424bfc]
add dword [0x424593], eax
call fcn.00404ddb
sub eax, ecx
inc edi
add ebx, edx
inc ecx
not edx
dec ebx
rol eax, 0x1b
call fcn.00406183
call fcn.00404ddb
call fcn.00405dff
call fcn.00402090
ror eax, 0x1b
inc ebx
not edx
dec ecx
sub ebx, edx
dec edi
add eax, ecx
call fcn.00402090
or dword [0x424081], ecx
xchg edx, eax
rol edi, 0x10
call fcn.0040641e
inc ecx
call fcn.00405557
sub edx, esp
and ecx, 0xbd3c8629
xor edx, 0xec85e1de
ror esi, 0x15
add eax, dword [0x424f97]
or esi, dword [0x424cf4]
add dword [0x424475], ebx
inc ecx
xor ecx, esp
ror ebx, 0x11
sub dword [0x42451a], ecx
xor ecx, dword [0x424c9e]
rol ebx, 0x11
xor ecx, esp
dec ecx
sub dword [0x424645], edi
rol esi, 0x15
xor edx, 0xec85e1de
add ecx, 0xde46636b
not esi
ror ecx, 5
add dword [0x424662], ebx
or ebx, dword [0x424cbc]
call fcn.00402f88
xchg edx, eax
neg ecx
mov dword [0x424496], eax
add esi, 0x52c89693
call fcn.00404ddb
sub ecx, dword [0x424ce0]
and dword [0x4243a8], eax
call fcn.00404ddb
sub esi, 0x52c89693
or dword [0x424605], edx
neg ecx
xchg edx, eax
rol ecx, 5
not esi
push ecx
not ebx
xchg ebx, edx
xor eax, dword [0x4248e5]
ror eax, 5
or esi, dword [0x4248cf]
xor eax, 0x7031b106
sub ecx, dword [0x424cab]
ror edx, 0x1d
dec ebx
call fcn.00401efd
xchg edi, eax
add eax, ecx
neg ebx
xor edx, 0xae1b5285
sub edi, ebp
xor ecx, dword [0x424dec]
or dword [0x424087], edi
rol eax, 8
xor edx, ecx
neg esi
call fcn.00401607
call fcn.00404ddb
neg esi
xor edx, ecx
ror eax, 8
add edi, ebp
xor edx, 0xae1b5285
neg ebx
sub eax, ecx
xchg edi, eax
call fcn.00404ddb
inc ebx
rol edx, 0x1d
xor eax, 0x7031b106
rol eax, 5
xchg ebx, edx
not ebx
push esp
and dword [0x424226], ebx
add ecx, 0x81aca5ca
call fcn.00404ddb
xchg eax, edx
rol esi, 0xd
or esi, dword [0x424bfb]
ror ebx, 0x1b
call fcn.00401a28
add dword [0x42432d], ebx
add ecx, ebp
mov dword [0x4247db], esi
ror edx, 0x17
xor ecx, 0x80efd757
rol esi, 0x15
call fcn.00402d08
call fcn.00404ddb
ror esi, 0x15
xor ecx, 0x80efd757
rol edx, 0x17
xor dword [0x4241a7], edi
sub ecx, ebp
or dword [0x424517], ebx
call fcn.00404ddb
rol ebx, 0x1b
ror esi, 0xd
xchg eax, edx
call 0x40328c
sub ecx, 0x81aca5ca
xor dword [0x4246a7], edx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
or eax, dword [0x424abb]
call fcn.004053a5
not eax
rol edi, 0x16
sub ebx, 0x738102db
call fcn.00404ddb
inc eax
or ebx, dword [0x424efb]
neg esi
or ebx, dword [0x42498a]
add eax, edx
ror ecx, 0x13
add dword [0x4240e0], ecx
call fcn.00404ddb
inc ebx
not eax
sub edx, edi
call fcn.00404ddb
call fcn.00401d08
call fcn.00402591
add edx, edi
not eax
dec ebx
call fcn.0040223e
mov dword [0x424737], eax
rol ecx, 0x13
sub eax, edx
neg esi
dec eax
add ebx, 0x738102db
ror edi, 0x16
not eax
call fcn.00402f88
add esp, 0xc
xor eax, esp
xchg edi, esi
or dword [0x424221], edx
xchg edx, eax
call fcn.00401a28
rol ebx, 0x1f
call fcn.00403235
neg esi
add esi, edx
neg esi
or dword [0x4246f7], 0x4ef3de78
or ecx, dword [0x424895]
call fcn.00403235
sub dword [0x424254], 0x1e9330aa
neg esi
sub esi, edx
neg esi
call fcn.00402a74
ror ebx, 0x1f
xchg edx, eax
xor dword [0x4241e6], ecx
xchg edi, esi
xor eax, esp
mov edx, 0x796ad371
add dword [0x42479f], edi
xor ebx, dword [0x424d5b]
xor dword [0x424111], edi
xor esi, 0x3a9deb36
sub eax, 0x89455ffe
sub esi, dword [0x424f76]
call fcn.00405dff
ror edi, 0x1e
xchg ecx, esi
ror esi, 3
sub dword [0x4240ca], 0xc08aaff1
mov dword [0x4244f0], 0x24ae2fb
rol esi, 3
xchg ecx, esi
rol edi, 0x1e
call fcn.004053a5
add eax, 0x89455ffe
xor esi, 0x3a9deb36
xor dword [0x42425e], edx
sub dword [0x424609], ecx
and edx, 0x1163c839
rol edi, 1
xor esi, dword [0x424d33]
sub edx, 0x85bc3dec
xor esi, edi
not esi
call fcn.00404ddb
rol eax, 0x18
xor esi, dword [0x424e89]
sub edx, esi
or dword [0x4244c2], 0x56a5f434
dec edi
not eax
xchg eax, edx
not edx
xor eax, 0x4fbe3805
call fcn.004027ba
xor edx, edi
not ebx
call fcn.00402090
call fcn.00401607
not ebx
xor edx, edi
xor eax, 0x4fbe3805
not edx
xchg eax, edx
not eax
inc edi
xor dword [0x42413d], 0x118e9c98
add edx, esi
ror eax, 0x18
not esi
xor esi, edi
add edx, 0x85bc3dec
ror edi, 1
add edx, 0xee9d3fcf
neg edi
inc edi
rol esi, 7
xor edx, ebx
or ecx, dword [0x424d06]
call fcn.00405dff
or esi, dword [0x42484b]
add dword [0x4241f7], 0xfa02ffb8
inc ecx
not eax
xor ecx, esi
add edx, ebx
dec ecx
neg esi
xchg ecx, edx
neg edx
call fcn.00404ddb
xor esi, esp
dec ecx
add edi, dword [0x424914]
sub edx, 0xefa36e71
add edx, 0xefa36e71
inc ecx
xor esi, esp
call fcn.00404ddb
neg edx
xchg ecx, edx
neg esi
inc ecx
sub edx, ebx
xor ecx, esi
not eax
dec ecx
add dword [0x42430d], 0x566d250a
call fcn.00401d08
xor edx, ebx
ror esi, 7
dec edi
neg edi
push edx
xor eax, edx
xchg eax, esi
or dword [0x4244b6], ecx
xor edx, 0xb43d073f
ror eax, 0xf
or ecx, dword [0x4249a8]
xor esi, 0xb7fa4d8d
sub esi, 0xec1494d3
dec edi
rol edi, 9
xor dword [0x4241fd], esi
sub eax, 0x4efd9942
add eax, 0x4efd9942
add dword [0x424454], eax
ror edi, 9
inc edi
add esi, 0xec1494d3
xor esi, 0xb7fa4d8d
rol eax, 0xf
xor edx, 0xb43d073f
add dword [0x424227], eax
xchg eax, esi
xor eax, edx
mov edi, 0xca0526c3
xor dword [0x4246f0], ebx
add ebx, 0x8be354ae
xor dword [0x42438b], 0x5012684
not esi
or dword [0x42472c], edi
call fcn.00405dff
neg ebx
dec ecx
neg edi
xchg ecx, eax
ror ecx, 0x1d
inc esi
add dword [0x4247d5], 0xe487a3f1
dec edi
neg esi
add dword [0x4244b5], ebx
add dword [0x424615], esi
neg esi
inc edi
dec esi
rol ecx, 0x1d
xchg ecx, eax
neg edi
inc ecx
neg ebx
call fcn.00404ddb
not esi
xor dword [0x424423], 0xc1e054fe
sub ebx, 0x8be354ae
sub edi, 0x30e47da6
xchg edx, eax
sub esi, dword [0x424e91]
call fcn.00405dff
sub ecx, 0x428218f2
call fcn.00402a74
sub ecx, dword [0x424b42]
neg edi
sub esi, eax
rol eax, 0xb
call fcn.004016c5
not edx
rol ebx, 0xc
call fcn.00401607
ror ecx, 6
add ebx, dword [0x424c1a]
call fcn.00402be8
call fcn.00402591
rol ecx, 6
ror ebx, 0xc
not edx
call fcn.00405557
ror eax, 0xb
add esi, eax
neg edi
call fcn.00404ddb
add ecx, 0x428218f2
call fcn.00402090
xchg edx, eax
xor edi, 0xfa4fc571
sub edx, 0x10d4c891
ror edx, 0x1c
xchg ecx, esi
inc ebx
rol edx, 5
xor dword [0x42448c], esi
not esi
call fcn.00404ddb
rol ebx, 0x15
xor ecx, dword [0x424e73]
sub dword [0x424452], ebx
xchg edi, eax
not ecx
ror edx, 0x15
rol edx, 0x15
not ecx
xchg edi, eax
add dword [0x424551], ecx
ror ebx, 0x15
call fcn.00402f88
not esi
add dword [0x42428d], edi
ror edx, 5
dec ebx
xchg ecx, esi
rol edx, 0x1c
add edx, 0x10d4c891
push edi
xor eax, esi
call fcn.00404ddb
inc edi
xchg eax, edx
or eax, dword [0x4249f7]
inc ecx
xor edx, 0x1aa84fa5
add edi, dword [0x424c9c]
dec esi
ror esi, 3
sub ebx, 0x87a07173
ror edi, 0xb
call fcn.00401a28
call fcn.00402a74
rol edi, 0xb
add ebx, 0x87a07173
rol esi, 3
inc esi
xor edx, 0x1aa84fa5
dec ecx
xchg eax, edx
dec edi
xor eax, esi
mov edi, 0x79b0f8bb
mov dword [0x424376], 0xf6204623
ror ebx, 0x1e
call fcn.00401607
not ebx
add dword [0x4243ae], edi
sub eax, dword [0x4249c5]
inc esi
rol edi, 0xe
call fcn.00406183
add edi, ebp
not edi
xchg edx, esi
add ecx, 0x5613de06
sub ecx, dword [0x424cea]
sub ecx, 0x5613de06
xchg edx, esi
not edi
sub edi, ebp
call fcn.00404ddb
ror edi, 0xe
dec esi
sub dword [0x4247e8], ebx
not ebx
call fcn.00404ddb
rol ebx, 0x1e
and edi, 0x53d71b79
call fcn.00404ddb
sub esi, 0x665be0c7
and dword [0x424308], 0x7a383402
neg edi
xor edx, 0xca2add61
sub eax, esp
ror esi, 2
xor dword [0x4245d2], edx
sub esi, dword [0x4249b2]
call fcn.00404ddb
call fcn.00404ddb
call fcn.00404ddb
call fcn.00404ddb
rol esi, 2
add eax, esp
xor edx, 0xca2add61
neg edi
xor dword [0x4245fd], 0x8b5dc5c
add esi, 0x665be0c7
call fcn.00402be8
sub edi, 0x1023b6c4
not ebx
xchg edi, esi
xor edx, esi
add edi, edx
neg esi
call fcn.00404ddb
xor edx, dword [0x424dde]
neg esi
add ebx, 0xc660d2c
not eax
xor ecx, edx
sub edx, esi
and dword [0x424113], edx
ror ebx, 0x12
rol ebx, 0x12
sub dword [0x424789], eax
add edx, esi
xor ecx, edx
not eax
sub ebx, 0xc660d2c
neg esi
call fcn.0040641e
add bh, dh
fisubr word [ebx]
cli
xor edx, esi
xchg edi, esi
not ebx
push edi
add dword [0x42437a], eax
not esi
xor dword [0x42470e], edi
xchg edi, edx
add ebx, dword [0x424e15]
add dword [0x4246ae], eax
add byte [ecx], al
adc eax, 0x42410c
rol ebx, 0x10
neg esi
sub edx, 0x5fd58838
sub dword [0x4246bd], 0xc198e861
dec edi
add dword [0x424533], ebx
add ebx, dword [0x424c72]
xor ebx, 0xeb972025
add edx, 0xc3c86037