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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10017ccd
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0xf0
mov eax, dword [0x10020004]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
xorps xmm0, xmm0
mov dword [ebp - 0x9c], 0
movq qword [ebp - 0x1c], xmm0
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x18], 0
lea eax, [ebp - 0x9c]
mov dword [ebp - 4], 0
push eax
push edx
push ecx
lea ecx, [ebp - 0x2c]
call fcn.10001290
mov esi, eax
mov dword [ebp - 0xfc], esi
test esi, esi
je 0x100032a7
push 0x40
push 0x1000
push dword [ebp - 0x9c]
push 0
call dword [0x10021fe4]
mov dword [ebp - 0xf8], eax
test eax, eax
je 0x100032a7
mov ch, 0x18
mov byte [ebp - 0x92], 0x18
mov cl, ch
mov byte [ebp - 0x91], ch
mov dl, cl
mov byte [ebp - 0x93], 0x18
mov al, cl
mov byte [ebp - 0x94], 0x18
xor al, dl
mov byte [ebp - 0x95], 0x18
movsx eax, al
xor cl, ch
cdq
mov edi, eax
mov byte [ebp - 0x96], 0x18
mov esi, edx
movsx eax, cl
cdq
add edi, eax
mov byte [ebp - 0x97], 0x18
mov byte [ebp - 0x98], 0x18
adc esi, edx
mov byte [ebp - 0xe1], 0
xor ch, byte [ebp - 0x92]
movsx eax, ch
cdq
add edi, eax
mov byte [ebp - 0xe1], 0
mov al, byte [ebp - 0x93]
adc esi, edx
mov byte [ebp - 0xe1], 0
xor al, byte [ebp - 0x94]
movsx eax, al
cdq
add edi, eax
mov byte [ebp - 0xe1], 0
mov al, byte [ebp - 0x95]
adc esi, edx
mov byte [ebp - 0xe1], 0
xor al, byte [ebp - 0x96]
movsx eax, al
cdq
add edi, eax
mov byte [ebp - 0xe1], 0
mov al, byte [ebp - 0x97]
adc esi, edx
xor al, byte [ebp - 0x98]
movsx eax, al
cdq
add edi, eax
adc esi, edx
or edi, esi
jne 0x10002ccf
movaps xmm0, xmmword [0x1001dda0]
mov dl, 0x18
mov byte [ebp - 0x44], dl
xor ecx, ecx
movups xmmword [ebp - 0x43], xmm0
lea eax, [ebp - 0x43]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xf
jae 0x10002a86
mov dl, byte [ebp - 0x44]
jmp 0x10002a75
movaps xmm0, xmmword [0x1001dda0]
mov dl, 0x18
mov byte [ebp - 0x84], dl
xor ecx, ecx
movups xmmword [ebp - 0x83], xmm0
nop
lea eax, [ebp - 0x83]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xf
jae 0x10002ab7
mov dl, byte [ebp - 0x84]
jmp 0x10002aa0
movaps xmm0, xmmword [0x1001dda0]
mov dl, 0x18
mov byte [ebp - 0xb0], dl
xor ecx, ecx
movups xmmword [ebp - 0xaf], xmm0
nop
lea eax, [ebp - 0xaf]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xf
jae 0x10002ae7
mov dl, byte [ebp - 0xb0]
jmp 0x10002ad0
movaps xmm0, xmmword [0x1001dda0]
mov dl, 0x18
mov byte [ebp - 0xd0], dl
xor ecx, ecx
movups xmmword [ebp - 0xcf], xmm0
nop
lea eax, [ebp - 0xcf]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xf
jae 0x10002b17
mov dl, byte [ebp - 0xd0]
jmp 0x10002b00
movaps xmm0, xmmword [0x1001dda0]
mov dl, 0x18
mov byte [ebp - 0xf0], dl
xor ecx, ecx
movups xmmword [ebp - 0xef], xmm0
nop
lea eax, [ebp - 0xef]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xf
jae 0x10002b47
mov dl, byte [ebp - 0xf0]
jmp 0x10002b30
movsx eax, byte [ebp - 0xef]
cdq
mov esi, eax
mov ecx, edx
movsx eax, byte [ebp - 0xcf]
cdq
add esi, eax
movsx eax, byte [ebp - 0xaf]
adc ecx, edx
cdq
add esi, eax
movsx eax, byte [ebp - 0x83]
adc ecx, edx
cdq
add esi, eax
movsx eax, byte [ebp - 0x43]
adc ecx, edx
cdq
add esi, eax
adc ecx, edx
or esi, ecx
jne 0x10002ccf
movaps xmm0, xmmword [0x1001dda0]
mov dl, 0x18
mov byte [ebp - 0xb0], dl
xor ecx, ecx
movups xmmword [ebp - 0xaf], xmm0
lea eax, [ebp - 0xaf]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xf
jae 0x10002bb7
mov dl, byte [ebp - 0xb0]
jmp 0x10002ba0
movaps xmm0, xmmword [0x1001dda0]
mov dl, 0x18
mov byte [ebp - 0x84], dl
xor ecx, ecx
movups xmmword [ebp - 0x83], xmm0
nop
lea eax, [ebp - 0x83]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xf
jae 0x10002be7
mov dl, byte [ebp - 0x84]
jmp 0x10002bd0
movaps xmm0, xmmword [0x1001dda0]
mov dl, 0x18
mov byte [ebp - 0x44], dl
xor ecx, ecx
movups xmmword [ebp - 0x43], xmm0
nop dword [eax]
lea eax, [ebp - 0x43]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xf
jae 0x10002c11
mov dl, byte [ebp - 0x44]
jmp 0x10002c00
movsx eax, byte [ebp - 0x43]
cdq
mov esi, eax
mov ecx, edx
movsx eax, byte [ebp - 0x83]
cdq
add esi, eax
movsx eax, byte [ebp - 0xaf]
adc ecx, edx
cdq
add esi, eax
adc ecx, edx
or esi, ecx
jne 0x10002ccf
movaps xmm0, xmmword [0x1001dda0]
mov dl, 0x18
mov byte [ebp - 0x84], dl
xor ecx, ecx
movups xmmword [ebp - 0x83], xmm0
lea eax, [ebp - 0x83]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xf
jae 0x10002c69
mov dl, byte [ebp - 0x84]
jmp 0x10002c52
movaps xmm0, xmmword [0x1001dda0]
mov dl, 0x18
mov byte [ebp - 0x44], dl
xor ecx, ecx
movups xmmword [ebp - 0x43], xmm0
nop dword [eax + eax]
lea eax, [ebp - 0x43]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xf
jae 0x10002c91
mov dl, byte [ebp - 0x44]
jmp 0x10002c80
movsx eax, byte [ebp - 0x43]
cdq
mov esi, eax
mov ecx, edx
movsx eax, byte [ebp - 0x83]
cdq
add esi, eax
adc ecx, edx
or esi, ecx
jne 0x10002ccf
mov cl, 0x18
mov byte [ebp - 0x2e], 0
mov al, cl
mov byte [ebp - 0x30], cl
xor al, cl
mov byte [ebp - 0x2e], 0
mov byte [ebp - 0x2f], al
lea eax, [ebp - 0x2f]
push eax
push 0x1001dd94
call fcn.10001920
add esp, 8
movaps xmm0, xmmword [0x1001ddb0]
mov dl, 0x18
mov byte [ebp - 0x68], dl
xor ecx, ecx
movups xmmword [ebp - 0x67], xmm0
mov dword [ebp - 0x57], 0x2b2a2928
mov byte [ebp - 0x53], 0
nop dword [eax]
lea eax, [ebp - 0x67]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0x14
jae 0x10002d01
mov dl, byte [ebp - 0x68]
jmp 0x10002cf0
movaps xmm0, xmmword [0x1001ddb0]
mov dl, 0x18
mov byte [ebp - 0xf4], dl
xor ecx, ecx
movups xmmword [ebp - 0xf3], xmm0
mov dword [ebp - 0xe3], 0x2b2a2928
mov byte [ebp - 0xdf], 0
nop word [eax + eax]
lea eax, [ebp - 0xf3]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0x14
jae 0x10002d47
mov dl, byte [ebp - 0xf4]
jmp 0x10002d30
movaps xmm0, xmmword [0x1001ddb0]
mov dl, 0x18
mov byte [ebp - 0xd4], dl
xor ecx, ecx
movups xmmword [ebp - 0xd3], xmm0
mov dword [ebp - 0xc3], 0x2b2a2928
mov byte [ebp - 0xbf], 0
lea eax, [ebp - 0xd3]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0x14
jae 0x10002d87
mov dl, byte [ebp - 0xd4]
jmp 0x10002d70
movaps xmm0, xmmword [0x1001ddb0]
mov dl, 0x18
mov byte [ebp - 0xb4], dl
xor ecx, ecx
movups xmmword [ebp - 0xb3], xmm0
mov dword [ebp - 0xa3], 0x2b2a2928
mov byte [ebp - 0x9f], 0
lea eax, [ebp - 0xb3]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0x14
jae 0x10002dc7
mov dl, byte [ebp - 0xb4]
jmp 0x10002db0
movaps xmm0, xmmword [0x1001ddb0]
mov dl, 0x18
mov byte [ebp - 0x88], dl
xor ecx, ecx
movups xmmword [ebp - 0x87], xmm0
mov dword [ebp - 0x77], 0x2b2a2928
mov byte [ebp - 0x73], 0
nop word [eax + eax]
lea eax, [ebp - 0x87]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0x14
jae 0x10002e07
mov dl, byte [ebp - 0x88]
jmp 0x10002df0
movaps xmm0, xmmword [0x1001ddb0]
mov dl, 0x18
mov byte [ebp - 0x48], dl
xor ecx, ecx
movups xmmword [ebp - 0x47], xmm0
mov dword [ebp - 0x37], 0x2b2a2928
mov byte [ebp - 0x33], 0
lea eax, [ebp - 0x47]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0x14
jae 0x10002e35
mov dl, byte [ebp - 0x48]
jmp 0x10002e24
movsx eax, byte [ebp - 0x47]
cdq
mov esi, eax
mov ecx, edx
movsx eax, byte [ebp - 0x87]
cdq
add esi, eax
movsx eax, byte [ebp - 0xb3]
adc ecx, edx
cdq
add esi, eax
movsx eax, byte [ebp - 0xd3]
adc ecx, edx
cdq
add esi, eax
movsx eax, byte [ebp - 0xf3]
adc ecx, edx
cdq
add esi, eax
movsx eax, byte [ebp - 0x67]
adc ecx, edx
cdq
add esi, eax
adc ecx, edx
or esi, ecx
jne 0x1000320e
movaps xmm0, xmmword [0x1001ddb0]
mov dl, 0x18
mov byte [ebp - 0xdc], dl
xor ecx, ecx
movups xmmword [ebp - 0xdb], xmm0
mov dword [ebp - 0xcb], 0x2b2a2928
mov dword [ebp - 0xc7], 0x2f2e2d2c
mov dword [ebp - 0xc3], 0x33323130
mov word [ebp - 0xbf], 0x3534
mov byte [ebp - 0xbd], 0
lea eax, [ebp - 0xdb]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0x1e
jae 0x10002edc
mov dl, byte [ebp - 0xdc]
jmp 0x10002ec5
movaps xmm0, xmmword [0x1001ddb0]
mov dl, 0x18
mov byte [ebp - 0xbc], dl
xor ecx, ecx
movups xmmword [ebp - 0xbb], xmm0
mov dword [ebp - 0xab], 0x2b2a2928
mov dword [ebp - 0xa7], 0x2f2e2d2c
mov dword [ebp - 0xa3], 0x33323130
mov word [ebp - 0x9f], 0x3534
mov byte [ebp - 0x9d], 0
lea eax, [ebp - 0xbb]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0x1e
jae 0x10002f39
mov dl, byte [ebp - 0xbc]
jmp 0x10002f22
movaps xmm0, xmmword [0x1001ddb0]
mov dl, 0x18
mov byte [ebp - 0x90], dl
xor ecx, ecx
movups xmmword [ebp - 0x8f], xmm0
mov dword [ebp - 0x7f], 0x2b2a2928
mov dword [ebp - 0x7b], 0x2f2e2d2c
mov dword [ebp - 0x77], 0x33323130
mov word [ebp - 0x73], 0x3534
mov byte [ebp - 0x71], 0
lea eax, [ebp - 0x8f]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0x1e
jae 0x10002f87
mov dl, byte [ebp - 0x90]
jmp 0x10002f70
movaps xmm0, xmmword [0x1001ddb0]
mov dl, 0x18
mov byte [ebp - 0x50], dl
xor ecx, ecx
movups xmmword [ebp - 0x4f], xmm0
mov dword [ebp - 0x3f], 0x2b2a2928
mov dword [ebp - 0x3b], 0x2f2e2d2c
mov dword [ebp - 0x37], 0x33323130
mov word [ebp - 0x33], 0x3534
mov byte [ebp - 0x31], 0
lea eax, [ebp - 0x4f]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0x1e
jae 0x10002fc9
mov dl, byte [ebp - 0x50]
jmp 0x10002fb8
movaps xmm0, xmmword [0x1001ddb0]
mov dl, 0x18
mov byte [ebp - 0x70], dl
xor ecx, ecx
movups xmmword [ebp - 0x6f], xmm0
mov dword [ebp - 0x5f], 0x2b2a2928
mov dword [ebp - 0x5b], 0x2f2e2d2c
mov dword [ebp - 0x57], 0x33323130
mov word [ebp - 0x53], 0x3534
mov byte [ebp - 0x51], 0
nop word [eax + eax]
lea eax, [ebp - 0x6f]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0x1e
jae 0x10003011
mov dl, byte [ebp - 0x70]
jmp 0x10003000
movsx eax, byte [ebp - 0x6f]
cdq
mov esi, eax
mov ecx, edx
movsx eax, byte [ebp - 0x4f]
cdq
add esi, eax
movsx eax, byte [ebp - 0x8f]
adc ecx, edx
cdq
add esi, eax
movsx eax, byte [ebp - 0xbb]
adc ecx, edx
cdq
add esi, eax
movsx eax, byte [ebp - 0xdb]
adc ecx, edx
cdq
add esi, eax
adc ecx, edx
or esi, ecx
jne 0x1000320e
movaps xmm0, xmmword [0x1001ddb0]
mov dl, 0x18
mov byte [ebp - 0x90], dl
xor ecx, ecx
movups xmmword [ebp - 0x8f], xmm0
mov dword [ebp - 0x7f], 0x2b2a2928
mov dword [ebp - 0x7b], 0x2f2e2d2c
mov dword [ebp - 0x77], 0x33323130
mov word [ebp - 0x73], 0x3534
mov byte [ebp - 0x71], 0
lea eax, [ebp - 0x8f]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0x1e
jae 0x1000309d
mov dl, byte [ebp - 0x90]
jmp 0x10003086
movaps xmm0, xmmword [0x1001ddb0]
mov dl, 0x18
mov byte [ebp - 0x50], dl
xor ecx, ecx
movups xmmword [ebp - 0x4f], xmm0
mov dword [ebp - 0x3f], 0x2b2a2928
mov dword [ebp - 0x3b], 0x2f2e2d2c
mov dword [ebp - 0x37], 0x33323130
mov word [ebp - 0x33], 0x3534
mov byte [ebp - 0x31], 0
nop
lea eax, [ebp - 0x4f]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0x1e
jae 0x100030e1
mov dl, byte [ebp - 0x50]
jmp 0x100030d0
movaps xmm0, xmmword [0x1001ddb0]
mov dl, 0x18
mov byte [ebp - 0x70], dl
xor ecx, ecx
movups xmmword [ebp - 0x6f], xmm0
mov dword [ebp - 0x5f], 0x2b2a2928
mov dword [ebp - 0x5b], 0x2f2e2d2c
mov dword [ebp - 0x57], 0x33323130
mov word [ebp - 0x53], 0x3534
mov byte [ebp - 0x51], 0
lea eax, [ebp - 0x6f]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0x1e
jae 0x10003123
mov dl, byte [ebp - 0x70]
jmp 0x10003112
movsx eax, byte [ebp - 0x6f]
cdq
mov esi, eax
mov ecx, edx
movsx eax, byte [ebp - 0x4f]
cdq
add esi, eax
movsx eax, byte [ebp - 0x8f]
adc ecx, edx
cdq
add esi, eax
adc ecx, edx
or esi, ecx
jne 0x1000320e
movaps xmm0, xmmword [0x1001ddb0]
mov dl, 0x18
mov byte [ebp - 0x50], dl
xor ecx, ecx
movups xmmword [ebp - 0x4f], xmm0
mov dword [ebp - 0x3f], 0x2b2a2928
mov dword [ebp - 0x3b], 0x2f2e2d2c
mov dword [ebp - 0x37], 0x33323130
mov word [ebp - 0x33], 0x3534
mov byte [ebp - 0x31], 0
nop word [eax + eax]
lea eax, [ebp - 0x4f]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0x1e
jae 0x10003191
mov dl, byte [ebp - 0x50]
jmp 0x10003180
movaps xmm0, xmmword [0x1001ddb0]
mov dl, 0x18
mov byte [ebp - 0x70], dl
xor ecx, ecx
movups xmmword [ebp - 0x6f], xmm0
mov dword [ebp - 0x5f], 0x2b2a2928
mov dword [ebp - 0x5b], 0x2f2e2d2c
mov dword [ebp - 0x57], 0x33323130
mov word [ebp - 0x53], 0x3534
mov byte [ebp - 0x51], 0
lea eax, [ebp - 0x6f]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0x1e
jae 0x100031d3
mov dl, byte [ebp - 0x70]
jmp 0x100031c2
movsx eax, byte [ebp - 0x6f]
cdq
mov esi, eax
mov ecx, edx
movsx eax, byte [ebp - 0x4f]
cdq
add esi, eax
adc ecx, edx
or esi, ecx
jne 0x1000320e
mov cl, 0x18
mov byte [ebp - 0x2e], 0
mov al, cl
mov byte [ebp - 0x30], cl
xor al, cl
mov byte [ebp - 0x2e], 0
mov byte [ebp - 0x2f], al
lea eax, [ebp - 0x2f]
push eax
push 0x1001dd94
call fcn.10001920
add esp, 8
mov edi, dword [ebp - 0x9c]
push edi
call fcn.10003f22
add esp, 4
mov esi, eax
mov dword [ebp - 0x30], esi
push 0x4f804
call fcn.100089fa
add esp, 4
test edi, edi
jle 0x10003271
mov eax, dword [ebp - 0xfc]
sub eax, esi
mov dword [ebp - 0x100], eax
call fcn.100089d9
cdq
lea esi, [esi + 1]
idiv dword [ebp - 0x9c]
mov eax, dword [ebp - 0x100]
inc dl
mov al, byte [eax + esi - 1]
xor al, dl
xor al, 4
mov byte [esi - 1], al
sub edi, 1
jne 0x10003241
mov edi, dword [ebp - 0x9c]
mov esi, dword [ebp - 0x30]
push edi
push esi
push dword [ebp - 0xf8]
call fcn.10006cb0
add esp, 0xc
push esi
call fcn.10003f1d
mov ecx, dword [ebp - 0xf8]
add esp, 4
mov edx, edi
call fcn.10001950
lea ecx, [ebp - 0x2c]
call fcn.10001170
mov esi, dword [ebp - 0xfc]
jmp 0x100032b3
lea ecx, [ebp - 0x2c]
call fcn.10001170
test esi, esi
je 0x100032bc
push esi
call fcn.10003f1d
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.10003eae
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret