Function at 0x40f940
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x43c
mov edi, dword [esp + 0x468]
mov dword [esp + 0x3c], 0xc95bcbbf
mov dword [esp + 0x40], 0xc551c74e
mov dword [esp + 0x44], 0xc156c350
mov dword [esp + 0x48], 0xfdafff5f
mov dword [esp + 0x4c], 0xf9a8fbb7
mov dword [esp + 0x50], 0xf5d6f7a8
mov dword [esp + 0x54], 0xf19bf3ac
mov dword [esp + 0x58], 0xed7cef67
mov dword [esp + 0x5c], 0xe97beb70
mov dword [esp + 0x60], 0xe56be761
mov dword [esp + 0x64], 0xe190e3c4
mov dword [esp + 0x68], 0x1d3e1f8c
mov dword [esp + 0x6c], 0x194a1b53
mov dword [esp + 0x70], 0x1546174a
mov dword [esp + 0x74], 0x11321351
mov dword [esp + 0x78], 0xd990f79
mov dword [esp + 0x7c], 0x9400b9e
mov dword [esp + 0x80], 0x5430744
mov dword [esp + 0x84], 0x18a0324
mov dword [esp + 0x88], 0x3d723f4a
mov dword [esp + 0x8c], 0x391a3b6b
mov dword [esp + 0x90], 0x35a63747
mov dword [esp + 0x94], 0x31a633a4
mov dword [esp + 0x98], 0x2d472fab
mov dword [esp + 0x9c], 0x29b42bb7
mov dword [esp + 0xa0], 0x25b1275d
mov dword [esp + 0xa4], 0x217323a8
mov dword [esp + 0xa8], 0x5d135f6b
mov dword [esp + 0xac], 0x59085b15
mov dword [esp + 0xb0], 0x551c5715
mov dword [esp + 0xb4], 0x510a5374
mov dword [esp + 0xb8], 0x4d364f25
mov dword [esp + 0xbc], 0x49394b20
mov dword [esp + 0xc0], 0x4512473c
mov dword [esp + 0xc4], 0x41d64364
mov dword [esp + 0xc8], 0x7deb7fd7
mov dword [esp + 0xcc], 0x795a7be7
mov dword [esp + 0xd0], 0x75ed7701
mov dword [esp + 0xd4], 0x71e773e9
mov dword [esp + 0xd8], 0x6d396fe1
mov dword [esp + 0xdc], 0x69176b4c
mov dword [esp + 0xe0], 0x65e867f0
mov dword [esp + 0xe4], 0x61f163f5
mov dword [esp + 0xe8], 0x9dcf9ffb
mov dword [esp + 0xec], 0x99d59bd3
mov dword [esp + 0xf0], 0x95c497df
mov dword [esp + 0xf4], 0x91c093c4
mov dword [esp + 0xf8], 0x8ddc8fc0
mov dword [esp + 0xfc], 0x89aa8bdc
mov dword [esp + 0x100], 0x851987e5
mov dword [esp + 0x104], 0x811d831e
mov dword [esp + 0x108], 0xbd29bf0e
mov dword [esp + 0x10c], 0xb9f1bbed
mov dword [esp + 0x110], 0xb5ffb7f5
mov dword [esp + 0x114], 0xb1ffb3e6
mov dword [esp + 0x118], 0xadaeaffa
mov byte [esp + 0x11e], 0
mov word [esp + 0x11c], 0
mov eax, dword [0x44f920]
xor ecx, ecx
xor edx, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov esi, ecx
and esi, 0xa6
mov ebx, edx
xor ebx, 0x53
add ebx, esi
xor bl, byte [esp + edx + 0x3c]
add bl, 0x61
mov byte [esp + edx + 0x3c], bl
inc edx
add ecx, 2
cmp edx, 0xe3
jne case.default.0x40fc04
lea ecx, [esp + 0x3c]
push 0
push 0
push 0
push 0
push ecx
call eax
xor ecx, ecx
mov dword [esp], eax
test eax, eax
setne cl
mov eax, dword [ecx*4 + 0x449f2c]
mov ecx, 0x1749ad5c
xor ecx, dword [0x449f34]
add eax, ecx
inc eax
jmp eax
invalid
cmp eax, 0x10
jae 0x43a568
mov cl, byte [ebp + eax - 0x28]
movzx edi, cl
mov ebx, eax
and ebx, 0x141e233a
xor ebx, 0x141e233a
mov edx, eax
and edx, 0xebe1dcc5
sub edx, ebx
mov ebx, edx
and ebx, edi
shl ebx, 1
sub edx, ebx
add dl, cl
add dl, 0x22
mov byte [ebp + eax - 0x28], dl
add eax, 1
jmp 0x43a52e
mov ecx, dword [ebp - 0x28c]
xor ecx, 0x24920b
mov eax, dword [ebp - 0x290]
mov eax, dword [eax]
mov eax, dword [eax + ecx*4]
mov ecx, dword [0x44e334]
xor ecx, 0xd96a77d9
sub eax, ecx
jmp eax