Function at 0x10031f50
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x388
push ebx
push esi
movzx eax, dx
mov esi, ecx
mov dword [esp + 0x38c], esi
cmp eax, 0x5e
ja case.0x1003121a.3
movzx eax, byte [eax + 0x10032a80]
jmp dword [eax*4 + 0x10032994]
mov byte [esp + 0x1c], 0xa
mov al, 0x4b
xor al, byte [esp + 0x1c]
mov cl, 0x66
mov byte [esp + 0x1d], al
mov dl, cl
mov al, byte [esp + 0x1c]
mov ah, 0x50
xor cl, al
mov byte [esp + 0xe], 0x79
xor dl, al
mov byte [esp + 0x1e], cl
xor ah, al
mov byte [esp + 0x26], 0
mov ch, 0x65
mov byte [esp + 0x21], ah
xor ch, al
mov byte [esp + 0x1f], dl
mov dh, 0x64
mov byte [esp + 0x22], ch
xor dh, al
mov byte [esp + 0x26], 0
mov bl, 0x2a
mov byte [esp + 0x23], dh
xor bl, al
mov bh, 0x6f
xor bh, al
mov byte [esp + 0x20], bl
mov al, byte [esp + 0xe]
mov ecx, esi
xor al, byte [esp + 0x1c]
mov byte [esp + 0x25], al
lea eax, [esp + 0x1d]
push eax
mov byte [esp + 0x28], bh
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x100a16c0]
xor ecx, ecx
movups xmmword [esp + 0x294], xmm0
mov byte [esp + 0x2a4], 0
nop dword [eax]
nop dword [eax + eax]
mov al, byte [esp + 0x294]
xor byte [esp + ecx + 0x295], al
inc ecx
cmp ecx, 0xf
jb 0x100312c0
lea eax, [esp + 0x295]
mov byte [esp + 0x2a4], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x100a14d0]
xor ecx, ecx
movups xmmword [esp + 0x2a8], xmm0
mov byte [esp + 0x2b8], 0
nop dword [eax]
mov al, byte [esp + 0x2a8]
xor byte [esp + ecx + 0x2a9], al
inc ecx
cmp ecx, 0xf
jb 0x10031310
lea eax, [esp + 0x2a9]
mov byte [esp + 0x2b8], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x100a0a40]
xor ecx, ecx
movups xmmword [esp + 0x334], xmm0
mov byte [esp + 0x344], 0
nop dword [eax]
mov al, byte [esp + 0x334]
xor byte [esp + ecx + 0x335], al
inc ecx
cmp ecx, 0xf
jb 0x10031360
lea eax, [esp + 0x335]
mov byte [esp + 0x344], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x100a0b90]
xor ecx, ecx
movups xmmword [esp + 0x2bc], xmm0
mov byte [esp + 0x2cc], 0
nop dword [eax]
mov al, byte [esp + 0x2bc]
xor byte [esp + ecx + 0x2bd], al
inc ecx
cmp ecx, 0xf
jb 0x100313b0
lea eax, [esp + 0x2bd]
mov byte [esp + 0x2cc], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x100a10f0]
xor ecx, ecx
movups xmmword [esp + 0x2d0], xmm0
mov byte [esp + 0x2e0], 0
nop dword [eax]
mov al, byte [esp + 0x2d0]
xor byte [esp + ecx + 0x2d1], al
inc ecx
cmp ecx, 0xf
jb 0x10031400
lea eax, [esp + 0x2d1]
mov byte [esp + 0x2e0], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x100a0b40]
xor ecx, ecx
movups xmmword [esp + 0x2e4], xmm0
mov byte [esp + 0x2f4], 0
nop dword [eax]
mov al, byte [esp + 0x2e4]
xor byte [esp + ecx + 0x2e5], al
inc ecx
cmp ecx, 0xf
jb 0x10031450
lea eax, [esp + 0x2e5]
mov byte [esp + 0x2f4], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dh, 0x40
mov byte [esp + 0x157], 0
mov al, 5
mov byte [esp + 0x150], dh
mov ah, 0x2e
mov byte [esp + 0x157], 0
xor al, dh
xor ah, dh
mov cl, 0x33
mov byte [esp + 0x151], al
mov ch, 0x34
mov byte [esp + 0x155], ah
xor cl, dh
lea eax, [esp + 0x151]
xor ch, dh
mov byte [esp + 0x152], cl
mov dl, 0x2c
mov byte [esp + 0x156], ch
mov bl, 0x21
xor dl, dh
xor bl, dh
mov byte [esp + 0x153], dl
push eax
mov ecx, esi
mov byte [esp + 0x158], bl
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dh, 0x27
mov byte [esp + 0x15f], 0
mov al, 0x62
mov byte [esp + 0x158], dh
mov ah, 0x49
mov byte [esp + 0x15f], 0
xor al, dh
xor ah, dh
mov cl, 0x54
mov byte [esp + 0x159], al
mov ch, 0x53
mov byte [esp + 0x15d], ah
xor cl, dh
lea eax, [esp + 0x159]
xor ch, dh
mov byte [esp + 0x15a], cl
mov dl, 0x4b
mov byte [esp + 0x15e], ch
mov bl, 0x46
xor dl, dh
xor bl, dh
mov byte [esp + 0x15b], dl
push eax
mov ecx, esi
mov byte [esp + 0x160], bl
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dh, 0x69
mov byte [esp + 0x18f], 0
mov al, 0x2c
mov byte [esp + 0x188], dh
mov ah, 7
mov byte [esp + 0x18f], 0
xor al, dh
xor ah, dh
mov cl, 0x1a
mov byte [esp + 0x189], al
mov ch, 0x1d
mov byte [esp + 0x18d], ah
xor cl, dh
lea eax, [esp + 0x189]
xor ch, dh
mov byte [esp + 0x18a], cl
mov dl, 5
mov byte [esp + 0x18e], ch
mov bl, 8
xor dl, dh
xor bl, dh
mov byte [esp + 0x18b], dl
push eax
mov ecx, esi
mov byte [esp + 0x190], bl
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dh, 0x6f
mov byte [esp + 0x167], 0
mov al, 0x2a
mov byte [esp + 0x160], dh
mov ah, 1
mov byte [esp + 0x167], 0
xor al, dh
xor ah, dh
mov cl, 0x1c
mov byte [esp + 0x161], al
mov ch, 0x1b
mov byte [esp + 0x165], ah
xor cl, dh
lea eax, [esp + 0x161]
xor ch, dh
mov byte [esp + 0x162], cl
mov dl, 3
mov byte [esp + 0x166], ch
mov bl, 0xe
xor dl, dh
xor bl, dh
mov byte [esp + 0x163], dl
push eax
mov ecx, esi
mov byte [esp + 0x168], bl
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dh, 0x1b
mov byte [esp + 0x16f], 0
mov al, 0x5e
mov byte [esp + 0x168], dh
mov ah, 0x75
mov byte [esp + 0x16f], 0
xor al, dh
xor ah, dh
mov cl, 0x68
mov byte [esp + 0x169], al
mov ch, 0x6f
mov byte [esp + 0x16d], ah
xor cl, dh
lea eax, [esp + 0x169]
xor ch, dh
mov byte [esp + 0x16a], cl
mov dl, 0x77
mov byte [esp + 0x16e], ch
mov bl, 0x7a
xor dl, dh
xor bl, dh
mov byte [esp + 0x16b], dl
push eax
mov ecx, esi
mov byte [esp + 0x170], bl
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dh, 0x13
mov byte [esp + 0x177], 0
mov al, 0x56
mov byte [esp + 0x170], dh
mov ah, 0x7d
mov byte [esp + 0x177], 0
xor al, dh
xor ah, dh
mov cl, 0x60
mov byte [esp + 0x171], al
mov ch, 0x67
mov byte [esp + 0x175], ah
xor cl, dh
lea eax, [esp + 0x171]
xor ch, dh
mov byte [esp + 0x172], cl
mov dl, 0x7f
mov byte [esp + 0x176], ch
mov bl, 0x72
xor dl, dh
xor bl, dh
mov byte [esp + 0x173], dl
push eax
mov ecx, esi
mov byte [esp + 0x178], bl
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [esp + 0x28], 0x78
mov al, 0x37
xor al, byte [esp + 0x28]
mov cl, 0x14
mov byte [esp + 0x29], al
mov dl, 0x1c
mov al, byte [esp + 0x28]
mov ah, 0x33
xor cl, al
mov byte [esp + 0xe], 0xb
xor dl, al
mov byte [esp + 0x2a], cl
xor ah, al
mov byte [esp + 0x32], 0
mov ch, 0x19
mov byte [esp + 0x2d], ah
xor ch, al
mov byte [esp + 0x2b], dl
mov dh, 0xa
mov byte [esp + 0x2e], ch
xor dh, al
mov byte [esp + 0x32], 0
mov bl, 0x58
mov byte [esp + 0x2f], dh
xor bl, al
mov bh, 0xd
xor bh, al
mov byte [esp + 0x2c], bl
mov al, byte [esp + 0xe]
mov ecx, esi
xor al, byte [esp + 0x28]
mov byte [esp + 0x31], al
lea eax, [esp + 0x29]
push eax
mov byte [esp + 0x34], bh
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov bh, 0x64
mov byte [esp + 0x1ec], 0
mov cl, 0xb
mov byte [esp + 0x1e4], bh
xor ah, ah
mov al, 0x29
mov ch, cl
xor al, bh
xor ah, bh
mov byte [esp + 0x1e5], al
xor cl, bh
mov byte [esp + 0x1e9], ah
xor ch, bh
mov byte [esp + 0x1e6], cl
mov dl, 0x16
mov byte [esp + 0x1ea], ch
mov dh, 0xa
lea eax, [esp + 0x1e5]
mov bl, 5
xor dl, bh
xor bl, bh
mov byte [esp + 0x1e7], dl
xor dh, bh
mov byte [esp + 0x1e8], bl
push eax
mov ecx, esi
mov byte [esp + 0x1ef], dh
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov bh, 0x7a
mov byte [esp + 0x1e0], 0
mov cl, 0x15
mov byte [esp + 0x1d8], bh
mov al, 0x37
mov byte [esp + 0x1e0], 0
mov ah, 0x1e
mov ch, cl
xor al, bh
xor ah, bh
xor cl, bh
mov byte [esp + 0x1d9], al
xor ch, bh
mov byte [esp + 0x1dd], ah
mov dl, 8
mov byte [esp + 0x1da], cl
mov dh, 0x14
mov byte [esp + 0x1de], ch
mov bl, 0x1b
lea eax, [esp + 0x1d9]
xor dl, bh
xor bl, bh
xor dh, bh
mov byte [esp + 0x1db], dl
push eax
mov ecx, esi
mov byte [esp + 0x1e0], bl
mov byte [esp + 0x1e3], dh
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov bh, 0x1a
mov byte [esp + 0x1d4], 0
mov cl, 0x75
mov byte [esp + 0x1cc], bh
mov al, 0x57
mov byte [esp + 0x1d4], 0
mov ah, 0x7e
mov ch, cl
xor al, bh
xor ah, bh
xor cl, bh
mov byte [esp + 0x1cd], al
xor ch, bh
mov byte [esp + 0x1d1], ah
mov dl, 0x68
mov byte [esp + 0x1ce], cl
mov dh, 0x74
mov byte [esp + 0x1d2], ch
mov bl, 0x7b
lea eax, [esp + 0x1cd]
xor dl, bh
xor bl, bh
xor dh, bh
mov byte [esp + 0x1cf], dl
push eax
mov ecx, esi
mov byte [esp + 0x1d4], bl
mov byte [esp + 0x1d7], dh
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov bh, 0x5a
mov byte [esp + 0x1c8], 0
mov cl, 0x35
mov byte [esp + 0x1c0], bh
mov al, 0x17
mov byte [esp + 0x1c8], 0
mov ah, 0x3e
mov ch, cl
xor al, bh
xor ah, bh
xor cl, bh
mov byte [esp + 0x1c1], al
xor ch, bh
mov byte [esp + 0x1c5], ah
mov dl, 0x28
mov byte [esp + 0x1c2], cl
mov dh, 0x34
mov byte [esp + 0x1c6], ch
mov bl, 0x3b
lea eax, [esp + 0x1c1]
xor dl, bh
xor bl, bh
xor dh, bh
mov byte [esp + 0x1c3], dl
push eax
mov ecx, esi
mov byte [esp + 0x1c8], bl
mov byte [esp + 0x1cb], dh
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov bh, 0xb
mov byte [esp + 0x1bc], 0
mov cl, 0x64
mov byte [esp + 0x1b4], bh
mov al, 0x46
mov byte [esp + 0x1bc], 0
mov ah, 0x6f
mov ch, cl
xor al, bh
xor ah, bh
xor cl, bh
mov byte [esp + 0x1b5], al
xor ch, bh
mov byte [esp + 0x1b9], ah
mov dl, 0x79
mov byte [esp + 0x1b6], cl
mov dh, 0x65
mov byte [esp + 0x1ba], ch
mov bl, 0x6a
lea eax, [esp + 0x1b5]
xor dl, bh
xor bl, bh
xor dh, bh
mov byte [esp + 0x1b7], dl
push eax
mov ecx, esi
mov byte [esp + 0x1bc], bl
mov byte [esp + 0x1bf], dh
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [esp + 0x10], 0xd
mov al, 0x42
xor al, byte [esp + 0x10]
mov cl, 0x61
mov byte [esp + 0x11], al
mov dl, 0x69
mov al, byte [esp + 0x10]
mov ah, 0x45
xor cl, al
mov byte [esp + 0xe], 0x63
xor dl, al
mov byte [esp + 0x12], cl
xor ah, al
mov byte [esp + 0x1a], 0
mov ch, 0x78
mov byte [esp + 0x15], ah
xor ch, al
mov byte [esp + 0x13], dl
mov dh, 0x60
mov byte [esp + 0x16], ch
xor dh, al
mov byte [esp + 0x1a], 0
mov bl, 0x2d
mov byte [esp + 0x17], dh
xor bl, al
mov bh, 0x6c
xor bh, al
mov byte [esp + 0x14], bl
mov al, byte [esp + 0xe]
mov ecx, esi
xor al, byte [esp + 0x10]
mov byte [esp + 0x19], al
lea eax, [esp + 0x11]
push eax
mov byte [esp + 0x1c], bh
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, 0x3f
mov dword [esp + 0x58], 0x5b53703f
mov dword [esp + 0x5c], 0x4d50721f
xor eax, eax
mov dword [esp + 0x60], 0x51505b5e
mov byte [esp + 0x64], 0
nop dword [eax]
xor byte [esp + eax + 0x59], cl
inc eax
cmp eax, 0xb
jae 0x10031ac0
mov cl, byte [esp + 0x58]
jmp 0x10031ab0
lea eax, [esp + 0x59]
mov byte [esp + 0x64], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ch, 0x25
mov byte [esp + 0x14e], 0
mov al, 0x61
mov byte [esp + 0x148], ch
mov ah, 0x56
mov byte [esp + 0x14e], 0
xor al, ch
xor ah, ch
mov cl, 0x40
mov byte [esp + 0x149], al
xor cl, ch
mov byte [esp + 0x14d], ah
mov dl, 0x49
mov byte [esp + 0x14a], cl
mov bl, 0x4a
lea eax, [esp + 0x149]
xor dl, ch
xor bl, ch
push eax
mov ecx, esi
mov byte [esp + 0x14f], dl
mov byte [esp + 0x150], bl
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov bh, 0x39
mov byte [esp + 0x1b0], 0
mov al, 0x7b
mov byte [esp + 0x1a8], bh
mov ah, 0x56
mov byte [esp + 0x1b0], 0
xor al, bh
xor ah, bh
mov cl, 0x50
mov byte [esp + 0x1a9], al
mov ch, 0x4a
mov byte [esp + 0x1ad], ah
xor cl, bh
lea eax, [esp + 0x1a9]
xor ch, bh
mov byte [esp + 0x1aa], cl
mov dl, 0x5f
mov byte [esp + 0x1ae], ch
mov dh, 0x4d
mov bl, 0x4b
xor dl, bh
xor bl, bh
xor dh, bh
mov byte [esp + 0x1ab], dl
push eax
mov ecx, esi
mov byte [esp + 0x1b0], bl
mov byte [esp + 0x1b3], dh
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x100a1680]
xor ecx, ecx
movups xmmword [esp + 0x230], xmm0
mov word [esp + 0x240], 0x7474
mov byte [esp + 0x242], 0
mov al, byte [esp + 0x230]
xor byte [esp + ecx + 0x231], al
inc ecx
cmp ecx, 0x11
jb 0x10031be0
lea eax, [esp + 0x231]
mov byte [esp + 0x242], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [esp + 0x34], 0x4d
mov al, 5
xor al, byte [esp + 0x34]
mov cl, 0x28
xor cl, byte [esp + 0x34]
mov ah, 0x6d
mov byte [esp + 0x35], al
mov dl, 0x21
mov byte [esp + 0x36], cl
mov ch, 0xc
mov cl, byte [esp + 0x34]
mov bl, dl
mov byte [esp + 0xe], 0x3e
xor ah, cl
mov al, byte [esp + 0xe]
xor ch, cl
xor al, cl
mov byte [esp + 0xf], 0x3e
mov byte [esp + 0x3d], al
mov dh, 0x2f
mov al, byte [esp + 0xf]
mov bh, 0x34
xor al, cl
mov byte [esp + 0x39], ah
mov byte [esp + 0x3e], al
xor dl, cl
xor bl, cl
mov byte [esp + 0x3a], ch
xor dh, cl
mov byte [esp + 0x3f], 0
xor bh, cl
mov byte [esp + 0x37], dl
lea eax, [esp + 0x35]
mov byte [esp + 0x38], bl
push eax
mov ecx, esi
mov byte [esp + 0x3f], dh
mov byte [esp + 0x40], bh
mov byte [esp + 0x43], 0
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, 0x2b
mov dword [esp + 0x138], 0x474e6d2b
mov dword [esp + 0x13c], 0x4440454a
xor eax, eax
mov dword [esp + 0x140], 0x4a670b59
mov word [esp + 0x144], 0x5942
mov byte [esp + 0x146], 0
xor byte [esp + eax + 0x139], cl
inc eax
cmp eax, 0xd
jae 0x10031ce9
mov cl, byte [esp + 0x138]
jmp 0x10031cd3
lea eax, [esp + 0x139]
mov byte [esp + 0x146], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [str._hI_C__fnM_IAIBX]
xor ecx, ecx
movups xmmword [esp + 0x348], xmm0
nop dword [eax]
mov al, byte [esp + 0x348]
xor byte [esp + ecx + 0x349], al
inc ecx
cmp ecx, 0xe
jb 0x10031d20
lea eax, [esp + 0x349]
mov byte [esp + 0x357], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, 0x79
mov dword [esp + 0x98], 0xd183b79
mov dword [esp + 0x9c], 0x591c150d
xor eax, eax
mov dword [esp + 0xa0], 0x171c0b38
mov word [esp + 0xa4], 0x18
xor byte [esp + eax + 0x99], cl
inc eax
cmp eax, 0xc
jae 0x10031d98
mov cl, byte [esp + 0x98]
jmp 0x10031d82
lea eax, [esp + 0x99]
mov byte [esp + 0xa5], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x100a0a60]
xor ecx, ecx
movups xmmword [esp + 0x208], xmm0
mov dword [esp + 0x218], 0x50214
nop dword [eax]
nop word [eax + eax]
mov al, byte [esp + 0x208]
xor byte [esp + ecx + 0x209], al
inc ecx
cmp ecx, 0x12
jb 0x10031de0
lea eax, [esp + 0x209]
mov byte [esp + 0x21b], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x100a15f0]
xor ecx, ecx
movups xmmword [esp + 0x2f8], xmm0
mov byte [esp + 0x308], 0
nop dword [eax]
mov al, byte [esp + 0x2f8]
xor byte [esp + ecx + 0x2f9], al
inc ecx
cmp ecx, 0xf
jb 0x10031e30
lea eax, [esp + 0x2f9]
mov byte [esp + 0x308], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, 0x76
mov dword [esp + 0xb8], 0x14193176
mov dword [esp + 0xbc], 0x56181f1a
xor eax, eax
mov dword [esp + 0xc0], 0x5130327
mov word [esp + 0xc4], 2
xor byte [esp + eax + 0xb9], cl
inc eax
cmp eax, 0xc
jae 0x10031ea8
mov cl, byte [esp + 0xb8]
jmp 0x10031e92
lea eax, [esp + 0xb9]
mov byte [esp + 0xc5], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [esp + 0x40], 2
mov al, 0x41
xor al, byte [esp + 0x40]
mov cl, 0x63
xor cl, byte [esp + 0x40]
mov ah, 0x22
mov byte [esp + 0x41], al
mov bl, 0x67
mov byte [esp + 0x42], cl
mov ch, 0x53
mov cl, byte [esp + 0x40]
mov dl, 0x72
mov byte [esp + 0xf], 0x71
xor ah, cl
mov al, byte [esp + 0xf]
xor ch, cl
xor al, cl
mov byte [esp + 0xe], 0x76
mov byte [esp + 0x49], al
mov dh, 0x77
mov al, byte [esp + 0xe]
mov bh, bl
xor al, cl
mov byte [esp + 0x45], ah
mov byte [esp + 0x4a], al
xor dl, cl
xor bl, cl
mov byte [esp + 0x46], ch
xor dh, cl
mov byte [esp + 0x4b], 0
xor bh, cl
mov byte [esp + 0x43], dl
lea eax, [esp + 0x41]
mov byte [esp + 0x44], bl
push eax
mov ecx, esi
mov byte [esp + 0x4b], dh
mov byte [esp + 0x4c], bh
mov byte [esp + 0x4f], 0
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x100a15d0]
xor ecx, ecx
movups xmmword [esp + 0x244], xmm0
mov word [esp + 0x254], 0x70
nop dword [eax + eax]
mov al, byte [esp + 0x244]
xor byte [esp + ecx + 0x245], al
inc ecx
cmp ecx, 0x10
jb 0x10031f70
lea eax, [esp + 0x245]
mov byte [esp + 0x255], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, 0x7d
mov dword [esp + 0xa8], 0xd1c337d
mov dword [esp + 0xac], 0x5d0e1814
xor eax, eax
mov dword [esp + 0xb0], 0x1a0f123a
mov word [esp + 0xb4], 0x18
xor byte [esp + eax + 0xa9], cl
inc eax
cmp eax, 0xc
jae 0x10031fe8
mov cl, byte [esp + 0xa8]
jmp 0x10031fd2
lea eax, [esp + 0xa9]
mov byte [esp + 0xb5], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x100a15b0]
xor ecx, ecx
movups xmmword [esp + 0x30c], xmm0
mov byte [esp + 0x31c], 0
mov al, byte [esp + 0x30c]
xor byte [esp + ecx + 0x30d], al
inc ecx
cmp ecx, 0xf
jb 0x10032020
lea eax, [esp + 0x30d]
mov byte [esp + 0x31c], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [str.4z_QPG]
xor ecx, ecx
movups xmmword [esp + 0x358], xmm0
nop dword [eax]
nop dword [eax + eax]
mov al, byte [esp + 0x358]
xor byte [esp + ecx + 0x359], al
inc ecx
cmp ecx, 0xe
jb 0x10032070
lea eax, [esp + 0x359]
mov byte [esp + 0x367], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x100a0990]
xor ecx, ecx
movups xmmword [esp + 0x368], xmm0
nop dword [eax]
nop dword [eax + eax]
mov al, byte [esp + 0x368]
xor byte [esp + ecx + 0x369], al
inc ecx
cmp ecx, 0xe
jb 0x100320c0
lea eax, [esp + 0x369]
mov byte [esp + 0x377], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, 0x57
mov dword [esp + 0x68], 0x25381a57
mov dword [esp + 0x6c], 0x39383336
xor eax, eax
mov dword [esp + 0x70], 0x25360077
mov byte [esp + 0x74], 0
xor byte [esp + eax + 0x69], cl
inc eax
cmp eax, 0xb
jae 0x10032124
mov cl, byte [esp + 0x68]
jmp 0x10032114
lea eax, [esp + 0x69]
mov byte [esp + 0x74], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dh, 0x4a
mov byte [esp + 0x17f], 0
mov al, 5
mov byte [esp + 0x178], dh
mov ah, 0x2e
mov byte [esp + 0x17f], 0
xor al, dh
xor ah, dh
mov cl, 0x38
mov byte [esp + 0x179], al
mov ch, 0x39
mov byte [esp + 0x17d], ah
xor cl, dh
lea eax, [esp + 0x179]
xor ch, dh
mov byte [esp + 0x17a], cl
mov dl, 0x2f
mov byte [esp + 0x17e], ch
mov bl, 0x2b
xor dl, dh
xor bl, dh
mov byte [esp + 0x17b], dl
push eax
mov ecx, esi
mov byte [esp + 0x180], bl
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [esp + 0x4c], 0x70
mov al, 0x23
xor al, byte [esp + 0x4c]
mov ah, 0x50
mov byte [esp + 0x4d], al
mov cl, 0x1e
mov al, byte [esp + 0x4c]
mov dl, 0x1f
xor ah, al
mov byte [esp + 0x55], 0
mov ch, 0x27
mov byte [esp + 0x51], ah
mov dh, 0x11
mov byte [esp + 0x55], 0
xor cl, al
xor ch, al
mov bl, 7
mov byte [esp + 0x4e], cl
mov bh, 2
mov byte [esp + 0x52], ch
xor dl, al
xor bl, al
xor dh, al
mov byte [esp + 0x4f], dl
xor bh, al
mov byte [esp + 0x50], bl
lea eax, [esp + 0x4d]
mov byte [esp + 0x53], dh
push eax
mov ecx, esi
mov byte [esp + 0x58], bh
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, 0x73
mov dword [esp + 0x78], 0x1f1c3073
mov dword [esp + 0x7c], 0x530a1d1c
xor eax, eax
mov dword [esp + 0x80], 0x161d1c29
mov byte [esp + 0x84], 0
nop
xor byte [esp + eax + 0x79], cl
inc eax
cmp eax, 0xb
jae 0x10032250
mov cl, byte [esp + 0x78]
jmp 0x10032240
lea eax, [esp + 0x79]
mov byte [esp + 0x84], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov bh, 0x16
mov byte [esp + 0x1a4], 0
mov al, 0x57
mov byte [esp + 0x19c], bh
mov cl, 0x64
mov byte [esp + 0x1a4], 0
mov ah, 0x73
mov bl, cl
xor al, bh
xor ah, bh
mov ch, 0x77
mov byte [esp + 0x19d], al
xor cl, bh
mov byte [esp + 0x1a1], ah
xor ch, bh
mov byte [esp + 0x19e], cl
mov dl, 0x72
mov byte [esp + 0x1a2], ch
mov dh, 0x7b
lea eax, [esp + 0x19d]
xor dl, bh
xor bl, bh
xor dh, bh
mov byte [esp + 0x19f], dl
push eax
mov ecx, esi
mov byte [esp + 0x1a4], bl
mov byte [esp + 0x1a7], dh
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x100a13b0]
xor ecx, ecx
movups xmmword [esp + 0x258], xmm0
mov word [esp + 0x268], 0x71
nop dword [eax]
nop dword [eax + eax]
mov al, byte [esp + 0x258]
xor byte [esp + ecx + 0x259], al
inc ecx
cmp ecx, 0x10
jb 0x10032310
lea eax, [esp + 0x259]
mov byte [esp + 0x269], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, 0x11
mov dword [esp + 0x128], 0x7e635a11
mov dword [esp + 0x12c], 0x316b7066
xor eax, eax
mov dword [esp + 0x130], 0x787c7e55
mov word [esp + 0x134], 0x7f7e
mov byte [esp + 0x136], 0
nop word [eax + eax]
xor byte [esp + eax + 0x129], cl
inc eax
cmp eax, 0xd
jae 0x10032396
mov cl, byte [esp + 0x128]
jmp 0x10032380
lea eax, [esp + 0x129]
mov byte [esp + 0x136], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, 0x1c
mov dword [esp + 0x118], 0x7572571c
mov dword [esp + 0x11c], 0x3c68747b
xor eax, eax
mov dword [esp + 0x120], 0x7d65734e
mov word [esp + 0x124], 0x7970
mov byte [esp + 0x126], 0
nop dword [eax]
xor byte [esp + eax + 0x119], cl
inc eax
cmp eax, 0xd
jae 0x10032406
mov cl, byte [esp + 0x118]
jmp 0x100323f0
lea eax, [esp + 0x119]
mov byte [esp + 0x126], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x100a1650]
xor ecx, ecx
movups xmmword [esp + 0x26c], xmm0
mov word [esp + 0x27c], 0x71
mov al, byte [esp + 0x26c]
xor byte [esp + ecx + 0x26d], al
inc ecx
cmp ecx, 0x10
jb 0x10032440
lea eax, [esp + 0x26d]
mov byte [esp + 0x27d], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x100a10a0]
xor ecx, ecx
movups xmmword [esp + 0x1f0], xmm0
mov dword [esp + 0x200], 0x46496408
mov word [esp + 0x204], 0x4c
nop dword [eax]
mov al, byte [esp + 0x1f0]
xor byte [esp + ecx + 0x1f1], al
inc ecx
cmp ecx, 0x14
jb 0x100324a0
lea eax, [esp + 0x1f1]
mov byte [esp + 0x205], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, 0x22
mov dword [esp + 0x108], 0x4c4d6f22
mov dword [esp + 0x10c], 0x50475651
xor eax, eax
mov dword [esp + 0x110], 0x4d567102
mov word [esp + 0x114], 0x474c
mov byte [esp + 0x116], 0
nop word [eax + eax]
xor byte [esp + eax + 0x109], cl
inc eax
cmp eax, 0xd
jae 0x10032526
mov cl, byte [esp + 0x108]
jmp 0x10032510
lea eax, [esp + 0x109]
mov byte [esp + 0x116], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, 0x4b
mov dword [esp + 0xf8], 0x2524064b
mov dword [esp + 0xfc], 0x392e3f38
xor eax, eax
mov dword [esp + 0x100], 0x243f186b
mov word [esp + 0x104], 0x2e25
mov byte [esp + 0x106], 0
nop dword [eax]
xor byte [esp + eax + 0xf9], cl
inc eax
cmp eax, 0xd
jae 0x10032596
mov cl, byte [esp + 0xf8]
jmp 0x10032580
lea eax, [esp + 0xf9]
mov byte [esp + 0x106], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, 4
mov dword [esp + 0xe8], 0x6a6b4904
mov dword [esp + 0xec], 0x76617077
xor eax, eax
mov dword [esp + 0xf0], 0x6b705724
mov word [esp + 0xf4], 0x616a
mov byte [esp + 0xf6], 0
nop dword [eax]
xor byte [esp + eax + 0xe9], cl
inc eax
cmp eax, 0xd
jae 0x10032606
mov cl, byte [esp + 0xe8]
jmp 0x100325f0
lea eax, [esp + 0xe9]
mov byte [esp + 0xf6], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x100a13d0]
xor ecx, ecx
movups xmmword [esp + 0x21c], xmm0
mov dword [esp + 0x22c], 0x3a291f
mov al, byte [esp + 0x21c]
xor byte [esp + ecx + 0x21d], al
inc ecx
cmp ecx, 0x12
jb 0x10032641
lea eax, [esp + 0x21d]
mov byte [esp + 0x22f], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [str.Xe097x]
xor ecx, ecx
movups xmmword [esp + 0x378], xmm0
nop word [eax + eax]
mov al, byte [esp + 0x378]
xor byte [esp + ecx + 0x379], al
inc ecx
cmp ecx, 0xe
jb 0x10032690
lea eax, [esp + 0x379]
mov byte [esp + 0x387], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x100a13c0]
xor ecx, ecx
movups xmmword [esp + 0x280], xmm0
mov word [esp + 0x290], 0x6e
nop
mov al, byte [esp + 0x280]
xor byte [esp + ecx + 0x281], al
inc ecx
cmp ecx, 0x10
jb 0x100326e0
lea eax, [esp + 0x281]
mov byte [esp + 0x291], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movaps xmm0, xmmword [0x100a0a70]
xor ecx, ecx
movups xmmword [esp + 0x320], xmm0
mov byte [esp + 0x330], 0
nop dword [eax]
mov al, byte [esp + 0x320]
xor byte [esp + ecx + 0x321], al
inc ecx
cmp ecx, 0xf
jb 0x10032730
lea eax, [esp + 0x321]
mov byte [esp + 0x330], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, 0x7e
mov dword [esp + 0x88], 0x1a12317e
mov dword [esp + 0x8c], 0xc11335e
xor eax, eax
mov dword [esp + 0x90], 0x10111a1f
mov byte [esp + 0x94], 0
xor byte [esp + eax + 0x89], cl
inc eax
cmp eax, 0xb
jae 0x100327a6
mov cl, byte [esp + 0x88]
jmp 0x10032790
lea eax, [esp + 0x89]
mov byte [esp + 0x94], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dh, 0x3a
mov byte [esp + 0x187], 0
mov al, 0x6a
mov byte [esp + 0x180], dh
mov ah, 0x55
mov byte [esp + 0x187], 0
xor al, dh
xor ah, dh
mov cl, 0x48
mov byte [esp + 0x181], al
mov ch, 0x54
mov byte [esp + 0x185], ah
xor cl, dh
lea eax, [esp + 0x181]
xor ch, dh
mov byte [esp + 0x182], cl
mov dl, 0x53
mov byte [esp + 0x186], ch
mov bl, 0x49
xor dl, dh
xor bl, dh
mov byte [esp + 0x183], dl
push eax
mov ecx, esi
mov byte [esp + 0x188], bl
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, 0x4d
mov dword [esp + 0xd8], 0x243e044d
mov dword [esp + 0xdc], 0x22242121
xor eax, eax
mov dword [esp + 0xe0], 0x2c016d23
mov word [esp + 0xe4], 0x3f24
mov byte [esp + 0xe6], 0
nop
xor byte [esp + eax + 0xd9], cl
inc eax
cmp eax, 0xd
jae 0x10032886
mov cl, byte [esp + 0xd8]
jmp 0x10032870
lea eax, [esp + 0xd9]
mov byte [esp + 0xe6], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov cl, 0x17
mov dword [esp + 0xc8], 0x7b725117
mov dword [esp + 0xcc], 0x787c7976
xor eax, eax
mov dword [esp + 0xd0], 0x765b3765
mov word [esp + 0xd4], 0x657e
mov byte [esp + 0xd6], 0
nop dword [eax]
xor byte [esp + eax + 0xc9], cl
inc eax
cmp eax, 0xd
jae 0x100328f6
mov cl, byte [esp + 0xc8]
jmp 0x100328e0
lea eax, [esp + 0xc9]
mov byte [esp + 0xd6], 0
push eax
mov ecx, esi
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov bh, 4
mov byte [esp + 0x198], 0
mov cl, 0x6a
mov byte [esp + 0x190], bh
mov bl, cl
mov byte [esp + 0x198], 0
mov al, 0x51
mov ah, 0x6b
xor al, bh
xor ah, bh
mov ch, 0x73
mov byte [esp + 0x191], al
mov dh, bl
mov byte [esp + 0x195], ah
xor cl, bh
lea eax, [esp + 0x191]
xor ch, bh
mov byte [esp + 0x192], cl
mov dl, 0x6f
mov byte [esp + 0x196], ch
xor dl, bh
xor bl, bh
xor dh, bh
mov byte [esp + 0x193], dl
push eax
mov ecx, esi
mov byte [esp + 0x198], bl
mov byte [esp + 0x19b], dh
call fcn.10004980
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret