Function at 0x407f30
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
push ebp
mov ecx, 0x1b
xor eax, eax
mov ebp, esp
push edi
push esi
lea edi, [ebp - 0x189]
mov esi, 0x42c098
push ebx
sub esp, 0x1ac
rep movsb byte es:[edi], byte [esi]
lea edi, [ebp - 0x153]
mov esi, str.The_operation_has_failed._CSVFS_is_not_in_redirected_mode.
mov ecx, 0x3b
rep movsb byte es:[edi], byte [esi]
mov byte [ebp + eax - 0x118], al
inc eax
cmp eax, 0x100
jne 0x407f62
xor esi, esi
xor ebx, ebx
xor eax, eax
cmp byte [eax + str.The_SMI_primitive_installer_failed_during_setup_or_servicing.], 0
je 0x407f97
inc eax
cmp eax, 0xc7b
jne 0x407f77
mov eax, dword [0x429474]
add eax, 0x2b78397c
mov dword [0x4292f0], eax
mov eax, dword [0x4292f0]
mov edi, 0x3a
or eax, 0xd39d143a
mov dword [0x429474], eax
imul eax, eax, 0x2b8ff811
mov dword [0x4292f0], eax
call fcn.004125f4
mov eax, ebx
xor edx, edx
mov cl, byte [ebp + ebx - 0x118]
div edi
mov al, byte [ebp + edx - 0x153]
add eax, ecx
add eax, esi
movzx esi, al
mov al, byte [ebp + esi - 0x118]
mov byte [ebp + ebx - 0x118], al
inc ebx
mov byte [ebp + esi - 0x118], cl
cmp ebx, 0x100
jne 0x407f75
xor edi, edi
xor esi, esi
xor ebx, ebx
xor eax, eax
cmp byte [eax + str.The_SMI_primitive_installer_failed_during_setup_or_servicing.], 0
je 0x40801c
inc eax
cmp eax, 0x9b
jne 0x407ffc
imul eax, dword [0x429474], 0x7cfd18a2
mov dword [0x4292f0], eax
imul eax, dword [0x429474], 0x8dfd69ec
inc ebx
movzx ebx, bl
mov dword [0x429474], eax
call fcn.00413a64
mov edx, str.The_SMI_primitive_installer_failed_during_setup_or_servicing.
mov ecx, 0x1089
mov al, byte [ebp + ebx - 0x118]
sub dword [0x4292f0], 0x7f4abedc
mov byte [ebp - 0x199], al
add eax, esi
movzx esi, al
mov al, byte [ebp + esi - 0x118]
mov byte [ebp + ebx - 0x118], al
movzx eax, byte [edx]
inc edx
test al, al
je 0x40807f
add ecx, eax
cmp ecx, 0x1b70
jbe 0x408068
call fcn.0041472c
mov eax, dword [0x4292f0]
mov edx, eax
xor edx, 0x6d9d6f21
mov dword [0x429474], edx
mov dword [esp], eax
call dword [sym.imp.USER32.dll_GetWindowTextLengthA]
push eax
mov al, byte [ebp - 0x199]
and dword [0x4292f0], 0xfaec50a1
mov byte [ebp + esi - 0x118], al
xor eax, eax
cmp byte [eax + str.Insufficient_system_resources_exist_to_complete_the_API.], 0
je 0x4080da
inc eax
cmp eax, 0xb4e
jne 0x4080b5
call fcn.00413a64
mov eax, dword [0x429474]
and eax, 0xb65a526e
mov dword [0x4292f0], eax
mov eax, dword [0x4292f0]
and eax, 0x3bfd8d9e
mov dword [0x429474], eax
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
lea edx, [ebp - 0x16e]
and eax, 0x110f2a9a
mov dword [0x429474], eax
or eax, 0x8fac0995
mov dword [0x4292f0], eax
mov al, byte [ebp - 0x199]
add al, byte [ebp + ebx - 0x118]
movzx eax, al
mov al, byte [ebp + eax - 0x118]
xor al, byte [ebp + edi - 0x189]
mov byte [ebp + edi - 0x16e], al
inc edi
cmp edi, 0x1b
jne 0x407ffa
mov byte [ebp - 0x153], 0
mov dword [esp + 0xc], 0x1b
mov dword [esp + 8], edx
mov dword [esp + 4], 0x1290
mov dword [esp], str.xnCULdnMmTEtahwnwLchbtrk6q2RZ4uJXmEAwE_pCT5GY0kAvHQ4TgBeNui3XJXVr7NhO4IQBD7Bqr5ni5AiPZPtecb8a3RO0PR5Yu9VqNEMc3H7gv0RdY0212FJshWCvag7fyMP3RpeFv3vFO9JHbXS4lfK2Oxi11hXfFi1cO5_meiS3jPUheh1cprc0gxBvPQQr1D2KFMiRySqpRLmyo7D6iWl1pxm7uEqm1wPszSfSJIQCuVWE7ib2OR21fwPUqZmSJcqF_LpQ8aZ_yQ5Yfuew7BHNXm36TA2TMkIKJTWp1R2s3PPXTnEeJp5DqrytAP7Bo6nUuRjxcImSpnstOmXbD_wMjRfZdvoPMfuQXv7oKvuywBm2ZzfspJaEQH8QiFynQHfMoIXnAtJQPzdcT0dtanR7peWC7VxlMeQPoFNaG2Hw6hG2VTPFdEq3lweiyfozWSRC8JIVx3oYrO6uuzgd1Y1ujx8GmbofZhOCjXW_6Y3mgxfO7eBrwj9g_VoLSgA_x7jwX1Dxe16rbZKRtyRSvPguiX2yXae6wMeEJhAeuCzHBfm4mZ4YJiSC9pA8_Vzu01CpEhZJjxEfnydRNTII29TMalOopkr3fAwEBIS2kXP9z7RIy1TcJwbMsVHF6tXSyHIKlCONKDkzVuC_xkg4ZGNaxvwDiwLWWSqyVjgsQQZuSu_eNdGQ9KnPOU9Y55CeAirRlQfhqHs08YwLGQq7uqNZeeR8fopUwHdiqsuKqt9DPENL974BuIizJqperVyyO0LmKyVMX5gKLObukc6NxWnWhqZBisFPrXDJs8a0tSZp8D6Q_cvrR0PkyLuufS0xn0P5mJFVolrcI_OHJ1MA04P4mlfoZrbwpVIFAc4ImbR0oEYqHTSM45CgzkHQ2FbpThebRoJNjXxKGjxIWSEUFhQqCrK3DT2ifn3bmrn8rfR0dBzWb9addAc5omPmNzKJ1_kkNXuSBjIu6mtVeICrWnHHsKShCRcXEWNkL3mcUJW9DZRnPIdmiWLWlTLZ12UUIu7SF55M4aTiylfsU2mvZHsUruIOUeqo1wMZtXqppdTrPAKioJ5Sr1kRMqvHdENVCNQFaMrxcmOiZTC6Ux0SyyYLKXNTgJEMP3BbdZcP6Ej2q2T4ZaIy9LVB_VZqZ_pcQ13o8WgF9CaQJvOllEymoxNxfeNmGuoT5_jnyLjo37oUVuvULQiZH5JkmpS2D39_1vdtIG5KRH6IiDLpwhVVY2P4J34BZEW8Pi1kygDVIrIHBwB8fSv0e4L0fFV2nEoJr0n85Ayj8UxEKZIvuv62nA_ItKoKzA45cGGrwmvgBuAs8h2MlcX5EAVU_miMPhxbHHkmonB_C5DfaqpDP1uGXgYOhyjty_lnpY_kaWqQlZ0xwe2wNrXlUuqXKrTIPnQdBfsijwYuL9x2C5GT_FsT9ZiRZh7E1cjnRYOCLmzpkRU8XTwtMjl1rx0LC62mYxwV71oddw3LJXIdwThSZJ1p_qEppNuRp0C92SAWb58FzYBVKveUj9AFUSpO92fkp42fFkm24JdRBp_9yigXZ4cfzirqAnFAE3PA3TDi630CPhCTWCEIWDyo7y9mugNXTxZLA3QPeWQAJgkaKG62AfrL4f0bhpsjuf1MLSTodghAfbKQMyRFlR1l9XPkQSEgLTbl0V1oLgy81nR5RGYTwqzqS2CVDPTObpkCooL6ritK0olOadnnbAuUvHWy88rmqYSGyCOqmQzN7hVRVcwSalRVv7jl_nB_MQQ2AOXPEMwkA2xZF1lup1YgXSxbcHo1KBCorgd2nh9FBQaOuthBVtAvnKbQBSMmiR0cZ6CqkRx3UPuneNOVStuDb4F2uHfkdQx83w6AasAFHDHrwt4NE3ujFe77VVat75I2wnjEm9fFGUgR5CoMw8B89ijXeLD3sQ3kXWy309PHFDQnFoqLuy_EcPorwmCaIf7xHARBzmXgTuiBrGhmVUD6heBuvWEja5MLDuB_j5hh_CgyCEC4L0ytQQWS_GSslUnuJcZy2RdVAGO6VCIlQjGXDXbvGs0C8jjEaPdXzXNq_aA0ngzTd0gAql4LVYf_sZnU3MQeiFZWKsi5Bd3ON8qZ4HoU9mpxYxgSCR_trmxE_AB7nQGw2Ic8QVdsuvkKW9FnZJ9MOpePkNbuYRBYSKqY6o_vo1O_ZuvNgD8POIrBqoEUqNcIRzAJBGkU75lNG8Mgb_4GXf51SipP2qwOs7gO0WIblk1reGt3XR68jjRoFlDIwW3n3OgcjaaDwZ4VLKzlA0DWcO_F5tmSsTtuO_4RABmSdK40okm1EicrK8N1V8WWRLXhyhU4R5VnXkSSnOtbPv1hmzcfE27eQ8cxWqbIneUtXFm5uhfnyrYuFJK5YnqqpPw32ThEIe5lwcN8M0DcXhI6Yh2lm8imV40_2g2cP5TAWiZlppa6y__Z2FONMeEnOPLdNp2_2pSiYYSqXTWb13mAxUXT34bBPKmUeNLzkoGb6BfY863Sy2dbeAxSpVNAhyyWynrjz1ZmsqgLQ6w8JD2MT9OT0sjZgTthezgWEiNTge3oqlFfXw81n2vkwnMUtxnyr4QagIJTXRcTvdkHfhWxFVlDSjOWjo5htEyzXcc4_yqmr0TaityBCVgCN7BgyIYmtKSE1piKciwlRYpWHkHMt3D9F3Yk7vjQVVSd3stKMJfEF5EHTUFsxO6vIxuUTt2tzQdNslbKv9BHocfGgjmGrBHjbtFZmer5TIKuR4eG4BXSFvtIPC2_nFnUHerEWy3gR1yq93GivMkgxJ8J8ySaCDRPXtWGdgqNRfnlxsaxwVdQqhxzVm4P0BNzrR7Ajj8ZG_wIYOCl0T18OhnAH6YyjtvTboOFC30kCpPaTOVi7b9BYFGHPQRVB22InhxAvmHOAeUCJuZ6JmS7eRP9nm06wxHkvpzpYT4GEz6uSfh8IUSIy1fR02JjjAvrRhxqbKGaOTfEx3XsefgrQj3TvOfcZaC6uRLQkWKYTpdOb_L1ot0FK_Qq7Za9cYLMcTLPNgeXo47UvG9GeWL4aLPmHTb7LSqyVwQZiKZ1xMXChNiROFw34FFp4h6HmMcDcfF9hXdsRojthNySEBLrhnqxWDo8PnjgEmx_SLDNb7LWp66TLgNZq_52URHdV9GFWoMtGdhg98CuuosWRxio93LGzsX5MrW5GyKDIP0qFEGf_ABgUs77THZHxVwvuJH7mPoy0pLj7tYn9mDdnwM89lwf6gjSi8sL4mbdUK6HZCinOMfn9vU1Wt5MpaLvD9pbNxPLcNTimOfpTSXMC1lv62Cr3MKqLoZWUfSEyjvG7PYc4uYcQvUNTLrKPyPPKbXL1Tq3pj2FJzn2KKmBNmH85gCfwU0CS1HLW1mV2Hi_lzZ1Z5RKKg9mDFOo_xcxjn2Em539ihhPi0ii861Gpwxu_UTLtWKv_UT5HSWjL1xcpp8BscPg7gApX26NJ9P076CoEoOLF775JaICDTANNfIiJTnV0HSV9Ll8eMOxYC80z5EZ09AKRWwN6Tg2f0vcscEmHG4nJQXMXsu3Z_e41kKpJh5r0P9i_qvI1umWcCA23FjaZRvlDitgv6iLEzVJkUYKQ39wES1BJegKoCpVeyiHm0aWoUKUV3SljheZWN7QUhkAG4IpclutMm1QXIEEfD28wnoiczIVL9HIfir6ZyVCbmYsBGZKTljFDyNzczxFJrXQcAcHKpn5rayomlGhXAWXUGvood_uCc6QCtPBK_C5LQ_UWVndPEcdPVnCv6ocETa3Tsz3wMqvQ_EfTArhKtlW1tIQl2WJJMKvdIYSxCWiCI27Y_k48pqSi7FBhabTEAZfSkmXJlnwMD5oTmCPLO3fshBT4yTW25TUMOWIkW5uVCIJyuOi0z31OF1sFWwoMvofCy_R56kv2a9uDGES2LJpLp95LPU_Xe_qMyjGygWrISHPtnN6KdI9wCM_7wzHhHk5P6fe4gB8Lmi4hbodSCCFakPascflV72wgXUF1lmy2BMLuWicPeaU3KjyuGKnP_NmHjVtX_lvgCM
call fcn.0040b3c4
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret