Function at 0x405230
Capabilities:
Contain obfuscated stackstrings
Create thread
Encode data using xor
Resume thread
Terminate process

Disassembly:
sub esp, 0x50
mov eax, dword [0x466ec0]
xor eax, esp
mov dword [esp + 0x4c], eax
push esi
push edi
mov esi, ecx
mov dword [esp + 8], 0x47
mov eax, dword [esp + 8]
xor al, 0x6e
mov byte [esp + 0xc], al
mov eax, dword [esp + 8]
inc al
xor al, 0x74
mov byte [esp + 0xd], al
mov eax, dword [esp + 8]
add al, 2
xor al, 0x64
mov byte [esp + 0xe], al
mov eax, dword [esp + 8]
add al, 3
xor al, 0x6c
mov byte [esp + 0xf], al
mov eax, dword [esp + 8]
add al, 4
xor al, 0x6c
mov byte [esp + 0x10], al
mov eax, dword [esp + 8]
add al, 5
xor al, 0x2e
mov byte [esp + 0x11], al
mov eax, dword [esp + 8]
add al, 6
xor al, 0x64
mov byte [esp + 0x12], al
mov eax, dword [esp + 8]
add al, 7
xor al, 0x6c
mov byte [esp + 0x13], al
mov eax, dword [esp + 8]
add al, 8
mov byte [esp + 0x15], 0
xor al, 0x6c
xor edx, edx
mov byte [esp + 0x14], al
mov al, byte [esp + 0xc]
nop
mov al, byte [esp + edx + 0xc]
mov ecx, dword [esp + 8]
add cl, dl
xor cl, al
mov byte [esp + edx + 0xc], cl
inc edx
cmp edx, 9
jb 0x4052c0
lea eax, [esp + 0xc]
mov byte [esp + 0x15], 0
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [esp + 0x18], 0x1a
mov edi, eax
mov byte [esp + 0x1c], 0x56
xor edx, edx
mov byte [esp + 0x1d], 0x7e
mov byte [esp + 0x1e], 0x68
mov byte [esp + 0x1f], 0x56
mov byte [esp + 0x20], 0x75
mov byte [esp + 0x21], 0x7b
mov byte [esp + 0x22], 0x7e
mov byte [esp + 0x23], 0x5e
mov byte [esp + 0x24], 0x76
mov byte [esp + 0x25], 0x76
mov al, byte [esp + 0x1c]
mov byte [esp + 0x26], 0
nop dword [eax]
mov al, byte [esp + edx + 0x1c]
mov ecx, dword [esp + 0x18]
xor cl, al
mov byte [esp + edx + 0x1c], cl
inc edx
cmp edx, 0xa
jb 0x405330
lea eax, [esp + 0x1c]
mov byte [esp + 0x26], 0
push eax
push edi
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
call edi
mov ecx, eax
mov dword [0x467ad8], ecx
test ecx, ecx
jne 0x40536b
push 0xffffffffffffffff
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
mov eax, dword [ecx]
mov dword [0x467ae8], eax
movzx eax, byte [ecx + 4]
mov byte [0x467aec], al
lea eax, [ecx + 5]
mov dword [0x467adc], eax
mov eax, dword [ecx]
mov dword [0x467ae0], eax
movzx eax, byte [ecx + 4]
mov ecx, fcn.0040de60
mov byte [0x467ae4], al
push 0
push 4
mov eax, dword [ecx]
mov dword [0x467af8], eax
movzx eax, byte [ecx + 4]
mov ecx, sub.VCRUNTIME140.dll_memcpy
push esi
mov byte [0x467afc], al
push 0x405520
mov eax, dword [ecx]
mov dword [0x467af0], eax
mov ax, word [ecx + 4]
push 0
mov word [0x467af4], ax
push 0
mov byte [esi + 4], 1
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [esi], eax
xor edx, edx
mov dword [esp + 0x28], 0x67
mov byte [esp + 0x2c], 0x29
mov byte [esp + 0x2d], 0x13
mov byte [esp + 0x2e], 0x34
mov byte [esp + 0x2f], 2
mov byte [esp + 0x30], 0x13
mov byte [esp + 0x31], 0x2e
mov byte [esp + 0x32], 9
mov byte [esp + 0x33], 1
mov byte [esp + 0x34], 8
mov byte [esp + 0x35], 0x15
mov byte [esp + 0x36], 0xa
mov byte [esp + 0x37], 6
mov byte [esp + 0x38], 0x13
mov byte [esp + 0x39], 0xe
mov byte [esp + 0x3a], 8
mov byte [esp + 0x3b], 9
mov byte [esp + 0x3c], 0x33
mov byte [esp + 0x3d], 0xf
mov byte [esp + 0x3e], 0x15
mov byte [esp + 0x3f], 2
mov byte [esp + 0x40], 6
mov byte [esp + 0x41], 3
mov al, byte [esp + 0x2c]
mov byte [esp + 0x42], 0
nop dword [eax]
mov al, byte [esp + edx + 0x2c]
mov ecx, dword [esp + 0x28]
xor cl, al
mov byte [esp + edx + 0x2c], cl
inc edx
cmp edx, 0x16
jb 0x405460
mov byte [esp + 0x42], 0
xor edx, edx
mov dword [esp + 0x44], 0x28
mov byte [esp + 0x48], 0x46
mov byte [esp + 0x49], 0x5c
mov byte [esp + 0x4a], 0x4c
mov byte [esp + 0x4b], 0x44
mov byte [esp + 0x4c], 0x44
mov byte [esp + 0x4d], 6
mov byte [esp + 0x4e], 0x4c
mov byte [esp + 0x4f], 0x44
mov byte [esp + 0x50], 0x44
mov al, byte [esp + 0x48]
mov byte [esp + 0x51], 0
nop dword [eax]
mov al, byte [esp + edx + 0x48]
mov ecx, dword [esp + 0x44]
xor cl, al
mov byte [esp + edx + 0x48], cl
inc edx
cmp edx, 9
jb 0x4054c0
lea eax, [esp + 0x48]
mov byte [esp + 0x51], 0
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea ecx, [esp + 0x2c]
push ecx
push eax
call edi
push 0
push 0
push 0x11
push dword [esi]
call eax
push dword [esi]
call dword [sym.imp.KERNEL32.dll_ResumeThread]
mov ecx, dword [esp + 0x54]
mov eax, esi
pop edi
pop esi
xor ecx, esp
call fcn.0042434f
add esp, 0x50
ret