Function at 0x10028819
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x28
push ebx
push esi
movzx eax, dx
mov esi, ecx
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], 0
cmp eax, 0x5e
ja case.0x100286ec.3
movzx eax, byte [eax + 0x10029428]
jmp dword [eax*4 + 0x10029340]
mov cl, 0x6d
mov byte [esp + 0x18], 1
mov al, 0x40
mov byte [esp + 0xe], 0x72
mov dl, cl
mov bl, 0x21
mov ch, 0x6e
mov dh, 0x6f
mov bh, 0x64
mov ah, 0x5b
xor al, byte [esp + 0x18]
mov byte [esp + 0x19], al
mov al, byte [esp + 0x18]
xor cl, al
mov byte [esp + 0x22], 0
xor dl, al
mov byte [esp + 0x22], 0
xor bl, al
xor ah, al
xor ch, al
xor dh, al
xor bh, al
mov al, byte [esp + 0xe]
xor al, byte [esp + 0x18]
mov byte [esp + 0x21], al
mov byte [esp + 0x20], bh
mov byte [esp + 0x1f], dh
mov byte [esp + 0x1e], ch
mov byte [esp + 0x1a], cl
mov byte [esp + 0x1d], ah
mov ecx, esi
lea eax, [esp + 0x19]
mov byte [esp + 0x1b], dl
push eax
mov byte [esp + 0x20], bl
call fcn.100049e0
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x10061e20]
xor ecx, ecx
movups xmmword [esp + 0x18], xmm0
mov byte [esp + 0x28], 0
mov al, byte [esp + 0x18]
xor byte [esp + ecx + 0x19], al
inc ecx
cmp ecx, 0xf
jb 0x10028780
lea eax, [esp + 0x19]
mov byte [esp + 0x28], 0
push eax
mov ecx, esi
call fcn.100049e0
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x10061fd0]
xor ecx, ecx
movups xmmword [esp + 0x18], xmm0
mov byte [esp + 0x28], 0
nop word [eax + eax]
mov al, byte [esp + 0x18]
xor byte [esp + ecx + 0x19], al
inc ecx
cmp ecx, 0xf
jb 0x100287c0
jmp 0x1002878e
movaps xmm0, xmmword [0x10061dc0]
xor ecx, ecx
movups xmmword [esp + 0x18], xmm0
mov byte [esp + 0x28], 0
mov al, byte [esp + 0x18]
xor byte [esp + ecx + 0x19], al
inc ecx
cmp ecx, 0xf
jb 0x100287e3
jmp 0x1002878e
movaps xmm0, xmmword [0x10061f10]
xor ecx, ecx
movups xmmword [esp + 0x18], xmm0
mov byte [esp + 0x28], 0
mov al, byte [esp + 0x18]
xor byte [esp + ecx + 0x19], al
inc ecx
cmp ecx, 0xf
jb 0x10028806
jmp 0x1002878e
movaps xmm0, xmmword [0x100626a0]
xor ecx, ecx
movups xmmword [esp + 0x18], xmm0
mov byte [esp + 0x28], 0
nop dword [eax]
mov al, byte [esp + 0x18]
xor byte [esp + ecx + 0x19], al
inc ecx
cmp ecx, 0xf
jb 0x10028830
jmp 0x1002878e
movaps xmm0, xmmword [0x100628e0]
xor ecx, ecx
movups xmmword [esp + 0x18], xmm0
mov byte [esp + 0x28], 0
mov al, byte [esp + 0x18]
xor byte [esp + ecx + 0x19], al
inc ecx
cmp ecx, 0xf
jb 0x10028856
jmp 0x1002878e
mov dh, 0x2b
mov al, 0x6e
mov cl, 0x58
mov dl, 0x47
mov bl, 0x4a
mov ah, 0x45
mov ch, 0x5f
xor al, dh
mov byte [esp + 0x1f], 0
xor ah, dh
mov byte [esp + 0x19], al
xor cl, dh
mov byte [esp + 0x1d], ah
xor ch, dh
mov byte [esp + 0x1a], cl
lea eax, [esp + 0x19]
mov byte [esp + 0x1e], ch
xor dl, dh
mov byte [esp + 0x18], dh
xor bl, dh
mov byte [esp + 0x1b], dl
push eax
mov ecx, esi
mov byte [esp + 0x20], bl
mov byte [esp + 0x23], 0
call fcn.100049e0
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dh, 0x37
mov al, 0x72
mov cl, 0x44
mov dl, 0x5b
mov bl, 0x56
mov ah, 0x59
mov ch, 0x43
jmp 0x10028877
mov dh, 0x10
mov al, 0x55
mov cl, 0x63
mov dl, 0x7c
mov bl, 0x71
mov ah, 0x7e
mov ch, 0x64
jmp 0x10028877
mov dh, 0x23
mov al, 0x66
mov cl, 0x50
mov dl, 0x4f
mov bl, 0x42
mov ah, 0x4d
mov ch, 0x57
jmp 0x10028877
mov dh, 0x48
mov al, 0xd
mov cl, 0x3b
mov dl, 0x24
mov bl, 0x29
mov ah, 0x26
mov ch, 0x3c
jmp 0x10028877
mov dh, 0x31
mov al, 0x74
mov cl, 0x42
mov dl, 0x5d
mov bl, 0x50
mov ah, 0x5f
mov ch, 0x45
jmp 0x10028877
mov byte [esp + 0x18], 0x10
mov al, 0x5f
mov cl, 0x7c
mov byte [esp + 0xe], 0x63
mov dl, 0x74
mov bl, 0x30
mov ch, 0x71
mov dh, 0x62
mov bh, 0x65
jmp 0x1002870b
mov bh, 0x3f
mov al, 0x72
mov cl, 0x50
mov dl, 0x4d
mov bl, 0x5e
mov ah, 0x5b
mov dh, 0x51
mov ch, cl
xor al, bh
mov byte [esp + 0x20], 0
xor cl, bh
mov byte [esp + 0x18], bh
xor dl, bh
mov byte [esp + 0x19], al
xor bl, bh
mov byte [esp + 0x20], 0
xor ah, bh
xor ch, bh
xor dh, bh
jmp 0x10028741
mov bh, 0x3c
mov al, 0x71
mov cl, 0x53
mov dl, 0x4e
mov bl, 0x5d
mov ah, 0x58
mov dh, 0x52
jmp 0x1002893e
mov bh, 0x74
mov al, 0x39
mov cl, 0x1b
mov dl, 6
mov bl, 0x15
mov ah, 0x10
mov dh, 0x1a
jmp 0x1002893e
mov bh, 4
mov al, 0x49
mov cl, 0x6b
mov dl, 0x76
mov bl, 0x65
mov ah, 0x60
mov dh, 0x6a
jmp 0x1002893e
mov byte [esp + 0x18], 0x3e
mov al, 0x71
mov cl, 0x52
mov byte [esp + 0xe], 0x50
mov dl, 0x5a
mov bl, 0x1e
mov ah, 0x76
mov ch, 0x4b
mov dh, 0x53
mov bh, 0x5f
jmp 0x1002870d
mov cl, 0x6a
mov dword [esp + 0x18], 0xe06256a
mov dword [esp + 0x1c], 0x1805274a
xor eax, eax
mov dword [esp + 0x20], 0x4050e0b
mov byte [esp + 0x24], 0
xor byte [esp + eax + 0x19], cl
inc eax
cmp eax, 0xb
jae 0x100289e5
mov cl, byte [esp + 0x18]
jmp 0x100289d5
lea eax, [esp + 0x19]
mov byte [esp + 0x24], 0
push eax
mov ecx, esi
call fcn.100049e0
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ch, 0x3e
mov byte [esp + 0x1e], 0
mov al, 0x7a
mov byte [esp + 0x18], ch
mov cl, 0x5b
mov byte [esp + 0x1e], 0
mov dl, 0x52
mov bl, 0x51
xor al, ch
mov ah, 0x4d
xor cl, ch
mov byte [esp + 0x19], al
xor dl, ch
xor bl, ch
xor ah, ch
jmp 0x10028749
mov bh, 0x3b
mov al, 0x79
mov cl, 0x52
mov dl, 0x5d
mov bl, 0x49
mov ah, 0x54
mov ch, 0x48
mov dh, 0x4f
jmp 0x10028940
movaps xmm0, xmmword [0x10062910]
xor ecx, ecx
movups xmmword [esp + 0x18], xmm0
mov word [esp + 0x28], 0x7d7d
mov byte [esp + 0x2a], 0
nop word [eax + eax]
mov al, byte [esp + 0x18]
xor byte [esp + ecx + 0x19], al
inc ecx
cmp ecx, 0x11
jb 0x10028a60
lea eax, [esp + 0x19]
mov byte [esp + 0x2a], 0
push eax
mov ecx, esi
call fcn.100049e0
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [esp + 0x18], 0x7c
mov al, 0x34
xor al, byte [esp + 0x18]
mov cl, 0x19
xor cl, byte [esp + 0x18]
mov dl, 0x10
mov byte [esp + 0x19], al
mov bl, dl
mov byte [esp + 0xe], 0xf
mov ah, 0x5c
mov al, byte [esp + 0xe]
mov ch, 0x3d
mov byte [esp + 0x1a], cl
mov dh, 0x1e
mov cl, byte [esp + 0x18]
mov bh, 5
xor al, cl
mov byte [esp + 0xf], 0xf
mov byte [esp + 0x21], al
xor ch, cl
mov al, byte [esp + 0xf]
xor dh, cl
xor bh, cl
mov byte [esp + 0x23], 0
xor dl, cl
mov byte [esp + 0x1e], ch
xor bl, cl
mov byte [esp + 0x1f], dh
xor ah, cl
mov byte [esp + 0x20], bh
xor al, cl
mov byte [esp + 0x23], 0
mov byte [esp + 0x22], al
jmp 0x1002874d
mov cl, 0x78
mov dword [esp + 0x18], 0x141d3e78
mov dword [esp + 0x1c], 0x17131619
xor eax, eax
mov dword [esp + 0x20], 0x1934580a
mov word [esp + 0x24], 0xa11
mov byte [esp + 0x26], 0
nop dword [eax]
xor byte [esp + eax + 0x19], cl
inc eax
cmp eax, 0xd
jae 0x10028b30
mov cl, byte [esp + 0x18]
jmp 0x10028b20
lea eax, [esp + 0x19]
mov byte [esp + 0x26], 0
push eax
mov ecx, esi
call fcn.100049e0
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [str._eDMNR]
xor ecx, ecx
movups xmmword [esp + 0x18], xmm0
mov al, byte [esp + 0x18]
xor byte [esp + ecx + 0x19], al
inc ecx
cmp ecx, 0xe
jb 0x10028b57
lea eax, [esp + 0x19]
mov byte [esp + 0x27], 0
push eax
mov ecx, esi
call fcn.100049e0
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, 0x6b
mov dword [esp + 0x18], 0x1f0a296b
mov dword [esp + 0x1c], 0x4b0e071f
xor eax, eax
mov dword [esp + 0x20], 0x50e192a
mov word [esp + 0x24], 0xa
xor byte [esp + eax + 0x19], cl
inc eax
cmp eax, 0xc
jae 0x10028bb1
mov cl, byte [esp + 0x18]
jmp 0x10028ba1
lea eax, [esp + 0x19]
mov byte [esp + 0x25], 0
push eax
mov ecx, esi
call fcn.100049e0
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x10062970]
xor ecx, ecx
movups xmmword [esp + 0x18], xmm0
mov dword [esp + 0x28], 0x7f786e
mov al, byte [esp + 0x18]
xor byte [esp + ecx + 0x19], al
inc ecx
cmp ecx, 0x12
jb 0x10028be0
lea eax, [esp + 0x19]
mov byte [esp + 0x2b], 0
push eax
mov ecx, esi
call fcn.100049e0
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x10062140]
xor ecx, ecx
movups xmmword [esp + 0x18], xmm0
mov byte [esp + 0x28], 0
nop word [eax + eax]
mov al, byte [esp + 0x18]
xor byte [esp + ecx + 0x19], al
inc ecx
cmp ecx, 0xf
jb 0x10028c20
lea eax, [esp + 0x19]
mov byte [esp + 0x28], 0
push eax
mov ecx, esi
call fcn.100049e0
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, 0x14
mov dword [esp + 0x18], 0x767b5314
mov dword [esp + 0x1c], 0x347a7d78
xor eax, eax
mov dword [esp + 0x20], 0x67716145
mov word [esp + 0x24], 0x60
nop word [eax + eax]
xor byte [esp + eax + 0x19], cl
inc eax
cmp eax, 0xc
jae 0x10028bb1
mov cl, byte [esp + 0x18]
jmp 0x10028c70
mov byte [esp + 0x18], 0x1a
mov al, 0x59
xor al, byte [esp + 0x18]
mov cl, 0x7b
xor cl, byte [esp + 0x18]
mov bl, 0x7f
mov byte [esp + 0x19], al
mov bh, bl
mov byte [esp + 0xf], 0x69
mov dl, 0x6a
mov al, byte [esp + 0xf]
mov ah, 0x3a
mov byte [esp + 0x1a], cl
mov ch, 0x4b
mov cl, byte [esp + 0x18]
mov dh, 0x6f
xor al, cl
mov byte [esp + 0xe], 0x6e
mov byte [esp + 0x21], al
xor ch, cl
mov al, byte [esp + 0xe]
xor dh, cl
xor bh, cl
mov byte [esp + 0x23], 0
xor dl, cl
mov byte [esp + 0x1e], ch
xor bl, cl
mov byte [esp + 0x1f], dh
xor ah, cl
mov byte [esp + 0x20], bh
xor al, cl
mov byte [esp + 0x23], 0
mov byte [esp + 0x22], al
jmp 0x1002874d
movaps xmm0, xmmword [0x10062670]
xor ecx, ecx
movups xmmword [esp + 0x18], xmm0
mov word [esp + 0x28], 0x57
mov al, byte [esp + 0x18]
xor byte [esp + ecx + 0x19], al
inc ecx
cmp ecx, 0x10
jb 0x10028d07
lea eax, [esp + 0x19]
mov byte [esp + 0x29], 0
push eax
mov ecx, esi
call fcn.100049e0
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, 0x22
mov dword [esp + 0x18], 0x52436c22
mov dword [esp + 0x1c], 0x251474b
xor eax, eax
mov dword [esp + 0x20], 0x45504d65
mov word [esp + 0x24], 0x47
xor byte [esp + eax + 0x19], cl
inc eax
cmp eax, 0xc
jae 0x10028bb1
mov cl, byte [esp + 0x18]
jmp 0x10028d51
movaps xmm0, xmmword [0x100621a0]
xor ecx, ecx
movups xmmword [esp + 0x18], xmm0
mov byte [esp + 0x28], 0
nop dword [eax + eax]
mov al, byte [esp + 0x18]
xor byte [esp + ecx + 0x19], al
inc ecx
cmp ecx, 0xf
jb 0x10028d80
lea eax, [esp + 0x19]
mov byte [esp + 0x28], 0
push eax
mov ecx, esi
call fcn.100049e0
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [str._bFaml_zaifodm]
xor ecx, ecx
movups xmmword [esp + 0x18], xmm0
mov al, byte [esp + 0x18]
xor byte [esp + ecx + 0x19], al
inc ecx
cmp ecx, 0xe
jb 0x10028db5
lea eax, [esp + 0x19]
mov byte [esp + 0x27], 0
push eax
mov ecx, esi
call fcn.100049e0
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x10061c50]
xor ecx, ecx
movups xmmword [esp + 0x18], xmm0
nop word [eax + eax]
mov al, byte [esp + 0x18]
xor byte [esp + ecx + 0x19], al
inc ecx
cmp ecx, 0xe
jb 0x10028df0
lea eax, [esp + 0x19]
mov byte [esp + 0x27], 0
push eax
mov ecx, esi
call fcn.100049e0
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, 9
mov dword [esp + 0x18], 0x7b664409
mov dword [esp + 0x1c], 0x67666d68
xor eax, eax
mov dword [esp + 0x20], 0x7b685e29
mov byte [esp + 0x24], 0
xor byte [esp + eax + 0x19], cl
inc eax
cmp eax, 0xb
jae 0x100289e5
mov cl, byte [esp + 0x18]
jmp 0x10028e38
mov dh, 0x57
mov al, 0x18
mov cl, 0x25
mov dl, 0x32
mov bl, 0x36
mov ah, 0x33
mov ch, 0x24
xor al, dh
mov byte [esp + 0x1f], 0
xor cl, dh
mov byte [esp + 0x18], dh
xor dl, dh
mov byte [esp + 0x19], al
xor bl, dh
mov byte [esp + 0x1f], 0
xor ah, dh
xor ch, dh
jmp 0x10028745
mov byte [esp + 0x18], 7
mov al, 0x54
xor al, byte [esp + 0x18]
mov cl, 0x69
mov byte [esp + 0x19], al
mov dl, 0x68
mov al, byte [esp + 0x18]
mov bl, 0x70
mov ah, 0x27
mov byte [esp + 0x21], 0
mov ch, 0x50
mov byte [esp + 0x21], 0
mov dh, 0x66
mov bh, 0x75
xor cl, al
xor dl, al
xor bl, al
xor ah, al
xor ch, al
xor dh, al
xor bh, al
jmp 0x1002873d
mov cl, 0x31
mov dword [esp + 0x18], 0x5d5e7231
mov dword [esp + 0x1c], 0x11485f5e
xor eax, eax
mov dword [esp + 0x20], 0x545f5e6b
mov byte [esp + 0x24], 0
nop dword [eax]
xor byte [esp + eax + 0x19], cl
inc eax
cmp eax, 0xb
jae 0x100289e5
mov cl, byte [esp + 0x18]
jmp 0x10028ee0
mov cl, 0x47
mov bh, 0x35
mov al, 0x74
mov dl, 0x51
mov bl, cl
mov ah, 0x50
mov ch, 0x54
mov dh, 0x58
jmp 0x10028940
movaps xmm0, xmmword [0x10062090]
xor ecx, ecx
movups xmmword [esp + 0x18], xmm0
mov word [esp + 0x28], 0x34
nop
mov al, byte [esp + 0x18]
xor byte [esp + ecx + 0x19], al
inc ecx
cmp ecx, 0x10
jb 0x10028f20
lea eax, [esp + 0x19]
mov byte [esp + 0x29], 0
push eax
mov ecx, esi
call fcn.100049e0
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, 0x47
mov dword [esp + 0x18], 0x28350c47
mov dword [esp + 0x1c], 0x673d2630
xor eax, eax
mov dword [esp + 0x20], 0x2e2a2803
mov word [esp + 0x24], 0x2928
mov byte [esp + 0x26], 0
nop
xor byte [esp + eax + 0x19], cl
inc eax
cmp eax, 0xd
jae 0x10028b30
mov cl, byte [esp + 0x18]
jmp 0x10028f70
mov cl, 0x5b
mov dword [esp + 0x18], 0x3235105b
mov dword [esp + 0x1c], 0x7b2f333c
xor eax, eax
mov dword [esp + 0x20], 0x3a223409
mov word [esp + 0x24], 0x3e37
mov byte [esp + 0x26], 0
nop dword [eax]
xor byte [esp + eax + 0x19], cl
inc eax
cmp eax, 0xd
jae 0x10028b30
mov cl, byte [esp + 0x18]
jmp 0x10028fb0
movaps xmm0, xmmword [0x10062930]
xor ecx, ecx
movups xmmword [esp + 0x18], xmm0
mov word [esp + 0x28], 0x75
nop dword [eax]
mov al, byte [esp + 0x18]
xor byte [esp + ecx + 0x19], al
inc ecx
cmp ecx, 0x10
jb 0x10028fe0
lea eax, [esp + 0x19]
mov byte [esp + 0x29], 0
push eax
mov ecx, esi
call fcn.100049e0
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x100620c0]
xor ecx, ecx
movups xmmword [esp + 0x18], xmm0
mov dword [esp + 0x28], 0x212e036f
mov word [esp + 0x2c], 0x2b
mov al, byte [esp + 0x18]
xor byte [esp + ecx + 0x19], al
inc ecx
cmp ecx, 0x14
jb 0x10029024
lea eax, [esp + 0x19]
mov byte [esp + 0x2d], 0
push eax
mov ecx, esi
call fcn.100049e0
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, 0x19
mov dword [esp + 0x18], 0x77765419
mov dword [esp + 0x1c], 0x6b7c6d6a
xor eax, eax
mov dword [esp + 0x20], 0x766d4a39
mov word [esp + 0x24], 0x7c77
mov byte [esp + 0x26], 0
xor byte [esp + eax + 0x19], cl
inc eax
cmp eax, 0xd
jae 0x10028b30
mov cl, byte [esp + 0x18]
jmp 0x10029073
mov cl, 0x22
mov dword [esp + 0x18], 0x4c4d6f22
mov dword [esp + 0x1c], 0x50475651
xor eax, eax
mov dword [esp + 0x20], 0x4d567102
mov word [esp + 0x24], 0x474c
mov byte [esp + 0x26], 0
nop
xor byte [esp + eax + 0x19], cl
inc eax
cmp eax, 0xd
jae 0x10028b30
mov cl, byte [esp + 0x18]
jmp 0x100290b0
mov cl, 0x23
mov dword [esp + 0x18], 0x4d4c6e23
mov dword [esp + 0x1c], 0x51465750
xor eax, eax
mov dword [esp + 0x20], 0x4c577003
mov word [esp + 0x24], 0x464d
mov byte [esp + 0x26], 0
nop dword [eax]
xor byte [esp + eax + 0x19], cl
inc eax
cmp eax, 0xd
jae 0x10028b30
mov cl, byte [esp + 0x18]
jmp 0x100290f0
movaps xmm0, xmmword [0x100629a0]
xor ecx, ecx
movups xmmword [esp + 0x18], xmm0
mov dword [esp + 0x28], 0x2d3e08
nop word [eax + eax]
mov al, byte [esp + 0x18]
xor byte [esp + ecx + 0x19], al
inc ecx
cmp ecx, 0x12
jb 0x10029120
lea eax, [esp + 0x19]
mov byte [esp + 0x2b], 0
push eax
mov ecx, esi
call fcn.100049e0
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x10061a10]
xor ecx, ecx
movups xmmword [esp + 0x18], xmm0
mov al, byte [esp + 0x18]
xor byte [esp + ecx + 0x19], al
inc ecx
cmp ecx, 0xe
jb 0x10029155
lea eax, [esp + 0x19]
mov byte [esp + 0x27], 0
push eax
mov ecx, esi
call fcn.100049e0
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x10062980]
xor ecx, ecx
movups xmmword [esp + 0x18], xmm0
mov word [esp + 0x28], 0x77
mov al, byte [esp + 0x18]
xor byte [esp + ecx + 0x19], al
inc ecx
cmp ecx, 0x10
jb 0x10029191
lea eax, [esp + 0x19]
mov byte [esp + 0x29], 0
push eax
mov ecx, esi
call fcn.100049e0
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x10061ff0]
xor ecx, ecx
movups xmmword [esp + 0x18], xmm0
mov byte [esp + 0x28], 0
nop dword [eax + eax]
mov al, byte [esp + 0x18]
xor byte [esp + ecx + 0x19], al
inc ecx
cmp ecx, 0xf
jb 0x100291d0
lea eax, [esp + 0x19]
mov byte [esp + 0x28], 0
push eax
mov ecx, esi
call fcn.100049e0
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, 0x28
mov dword [esp + 0x18], 0x4c446728
mov dword [esp + 0x1c], 0x5a476508
xor eax, eax
mov dword [esp + 0x20], 0x46474c49
mov byte [esp + 0x24], 0
xor byte [esp + eax + 0x19], cl
inc eax
cmp eax, 0xb
jae 0x100289e5
mov cl, byte [esp + 0x18]
jmp 0x10029218
mov dh, 0x6c
mov al, 0x3c
mov cl, 0x1e
mov dl, 5
mov bl, 0x1f
mov ah, 3
mov ch, 2
jmp 0x10028e5a
mov cl, 2
mov dword [esp + 0x18], 0x6b714b02
mov dword [esp + 0x1c], 0x6d6b6e6e
xor eax, eax
mov dword [esp + 0x20], 0x634e226c
mov word [esp + 0x24], 0x706b
mov byte [esp + 0x26], 0
xor byte [esp + eax + 0x19], cl
inc eax
cmp eax, 0xd
jae 0x10028b30
mov cl, byte [esp + 0x18]
jmp 0x10029267
mov cl, 0x52
mov dword [esp + 0x18], 0x3e371452
mov dword [esp + 0x1c], 0x3d393c33
xor eax, eax
mov dword [esp + 0x20], 0x331e7220
mov word [esp + 0x24], 0x203b
mov byte [esp + 0x26], 0
xor byte [esp + eax + 0x19], cl
inc eax
cmp eax, 0xd
jae 0x10028b30
mov cl, byte [esp + 0x18]
jmp 0x100292a3
mov bh, 0x25
mov byte [esp + 0x20], 0
mov cl, 0x4b
mov byte [esp + 0x18], bh
mov bl, cl
mov byte [esp + 0x20], 0
mov dh, bl
mov dword [esi + 0x14], 0xf
mov al, 0x70
mov dword [esi + 0x10], 0
mov dl, 0x4e
mov ah, 0x4a
mov ch, 0x52
xor al, bh
xor cl, bh
mov byte [esp + 0x19], al
xor dl, bh
mov byte [esp + 0x1a], cl
xor bl, bh
mov byte [esp + 0x1b], dl
xor ah, bh
mov byte [esp + 0x1c], bl
xor ch, bh
mov byte [esp + 0x1d], ah
xor dh, bh
mov byte [esp + 0x1e], ch
mov byte [esp + 0x1f], dh
mov byte [esi], 0
cmp byte [esp + 0x19], 0
jne 0x1002931b
xor ecx, ecx
jmp 0x1002932b
lea ecx, [esp + 0x19]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10029322
sub ecx, edx
push ecx
lea eax, [esp + 0x1d]
mov ecx, esi
push eax
call fcn.100048e0
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret