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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x914
push ebx
push esi
push edi
call fcn.100151c4
cmp eax, 1
je 0x10017905
call fcn.100156f2
cmp eax, 0xa
jb 0x10017905
call fcn.10017631
test al, al
je 0x10017905
call fcn.100151c4
cmp eax, 1
je 0x10017905
push 5
pop edx
lea ecx, [ebp - 4]
call fcn.10015491
xor eax, eax
mov dword [ebp - 0x46], 0x2a092a10
mov dword [ebp - 0x42], 0x2a2c2a21
xor ecx, ecx
mov dword [ebp - 0x3e], 0x2a3c2a25
mov dword [ebp - 0x3a], 0x2a3d2a37
mov dword [ebp - 0x36], 0x2a262a20
mov dword [ebp - 0x32], 0x2a162a6c
mov dword [ebp - 0x2e], 0x2a292a28
mov dword [ebp - 0x2a], 0x2a322a36
mov dword [ebp - 0x26], 0x2a3c2a3f
mov dword [ebp - 0x22], 0x2a362a2a
mov dword [ebp - 0x1e], 0x2a0f2a0f
mov dword [ebp - 0x1a], 0x2a022a26
mov dword [ebp - 0x16], 0x2a042a10
mov word [ebp - 0x12], ax
lea eax, [ecx + 0x2a4c]
xor word [ebp + ecx*2 - 0x46], ax
inc ecx
cmp ecx, 0x1a
jb 0x100178ac
xor eax, eax
lea ecx, [ebp - 4]
mov word [ebp - 0x12], ax
lea eax, [ebp - 0x46]
push eax
call fcn.100040f3
lea ecx, [ebp - 0xc]
call fcn.10015444
push dword [ebp - 4]
mov esi, dword [0x291b2d4]
call esi
push dword [ebp - 0xc]
mov edi, eax
call esi
push edi
push eax
call dword [0x291b220]
test eax, eax
jne 0x1001790c
mov ecx, dword [ebp - 0xc]
call fcn.100074b7
mov ecx, dword [ebp - 4]
call fcn.100074b7
pop edi
pop esi
xor eax, eax
pop ebx
leave
ret
push dword [0x2a55090]
mov ebx, dword [0x291b234]
call ebx
lea eax, [ebp - 8]
xor edi, edi
push eax
mov dword [ebp - 8], edi
call dword [0x291b0ec]
push eax
call dword [0x291b108]
cmp dword [ebp - 8], edi
je 0x1001793d
lea ecx, [ebp - 0x10]
call fcn.100152a7
call fcn.1001771a
mov esi, 0x400
lea eax, [ebp - 0x910]
push esi
push edi
push eax
call fcn.10001ecf
add esp, 0xc
lea eax, [ebp - 0x910]
push esi
push eax
push edi
call dword [0x291b258]
lea eax, [ebp - 0x910]
mov esi, 0x291e372
push eax
push esi
call fcn.10017796
push esi
push 0x291e7ac
call fcn.10017796
add esp, 0x10
lea eax, [ebp - 0x510]
push 0x104
push eax
call dword [0x291b1e0]
push 0x291e7bc
lea eax, [ebp - 0x510]
push eax
call dword [0x291b238]
call dword [0x291b240]
push 0x44
lea eax, [ebp - 0x54]
push edi
push eax
call fcn.10001ecf
push 0x11
pop ecx
lea esi, [ebp - 0x54]
xor eax, eax
lea edi, [ebp - 0xc0]
rep movsd dword es:[edi], dword [esi]
lea edi, [ebp - 0x74]
stosd dword es:[edi], eax
lea esi, [ebp - 0x74]
push 0xa
pop ecx
push 0x1df
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x2df]
lea edi, [ebp - 0x64]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, 0x291e7d4
lea edi, [ebp - 0x308]
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
xor edi, edi
push edi
push eax
call fcn.10001ecf
mov esi, dword [0x291b204]
add esp, 0x18
push 0x4e20
call esi
lea eax, [ebp - 0x64]
push eax
lea eax, [ebp - 0xc0]
push eax
push edi
push edi
push edi
push edi
push edi
push edi
lea eax, [ebp - 0x308]
push eax
push edi
call dword [0x291b224]
push dword [ebp - 0x60]
call ebx
push dword [ebp - 0x64]
call ebx
lea eax, [ebp - 0x510]
push eax
lea eax, [ebp - 0x100]
push 0x291b7c0
push eax
call dword [0x291b2d0]
add esp, 0xc
push edi
push dword [ebp - 0x14]
call dword [0x291b1c0]
cmp dword [ebp - 8], edi
je 0x10017a6f
lea ecx, [ebp - 0x10]
call fcn.100152d4
push 0x7d0
call esi
push 0x291e780
push 0x80000001
call dword [0x291b030]
push edi
call dword [0x291b22c]
int3