Function at 0x10027fa0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x20
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x10], eax
mov eax, dword [0x10280cd4]
mov edx, dword [0x10280cd8]
mov ecx, eax
xor ecx, edx
xor edx, 0xffffffff
and eax, edx
shl eax, 1
sub eax, ecx
add eax, 0x45c540b1
add eax, 0x84c1fa4b
sub eax, 0x45c540b1
and eax, 0x9a900f46
and eax, 0xdc717f25
cmp eax, 0x98db2cd8
jae 0x10028437
mov esi, dword [ebp - 0x10]
mov eax, dword [0x10280cdc]
mov ecx, dword [0x10280ce0]
not eax
not ecx
or eax, ecx
not eax
mov ecx, 0x99bb0273
mul ecx
shr edx, 0x1f
imul eax, edx, 0x99229c3b
mov edx, eax
not edx
and edx, 0xf2625e0a
mov ecx, eax
and ecx, 0xd9da1f5
imul ecx, edx
mov edx, eax
and edx, 0xf2625e0a
or eax, 0xf2625e0a
imul eax, edx
add eax, ecx
push eax
mov ecx, esp
push eax
mov edx, esp
mov dword [ebp - 0x1c], edx
push eax
mov ebx, esp
push eax
mov edx, esp
mov dword [ebp - 0x20], edx
push eax
mov edi, esp
push eax
mov edx, esp
mov dword [ebp - 0x18], edx
mov edx, dword [ebp - 0x14]
mov dword [ecx], edx
mov edx, dword [ebp - 0x1c]
mov dword [edx], esi
mov ecx, dword [ecx]
mov edx, dword [ecx]
mov esi, edx
and esi, 0x23
shl esi, 1
xor edx, 0x23
add edx, esi
mov esi, dword [ebp - 0x20]
mov dword [ecx], edx
mov edx, dword [ebp - 0x1c]
mov ecx, dword [edx]
mov ecx, dword [ecx]
mov dword [ebx], ecx
mov ecx, dword [ebp - 0x18]
mov ebx, dword [ebx]
mov ebx, dword [ebx - 4]
mov dword [esi], ebx
mov dword [edi], 4
mov edx, dword [edx]
mov edx, dword [edx]
sub edx, dword [esi]
mov dword [ecx], edx
cmp eax, 0xc93b13b6
je 0x10027ff1
jmp 0x100280a9
mov eax, dword [str.y_r_t]
mov edx, dword [0x10280ce8]
xor ecx, ecx
sub ecx, edx
add eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x7226a95
add eax, ecx
add eax, 1
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x5b58c6f1
mov edx, 0xffffffff
xor edx, 0x5b58c6f1
and eax, edx
sub eax, ecx
sub eax, 0x70b5c935
cmp eax, 0xf82bfb48
jae 0x10028492
mov ecx, dword [ebp - 0x18]
mov edx, dword [0x10280cec]
mov esi, dword [0x10280cf0]
mov eax, edx
and eax, esi
or edx, esi
add eax, edx
mov edi, 0xffffffff
xor edi, 0x9b4fac22
mov esi, eax
and esi, edi
mov edx, eax
or edx, edi
xor edx, 0xffffffff
imul edx, esi
mov esi, eax
and esi, 0x9b4fac22
or eax, 0x9b4fac22
imul eax, esi
add eax, edx
sub eax, 0xaaaa125b
mov edx, eax
add edx, 1
xor eax, 0xffffffff
or eax, 0x891fc7b
add eax, edx
cmp dword [ecx], 4
setae cl
mov byte [ebp - 0x21], cl
cmp eax, 0x19c50d8b
ja 0x100280f4
mov al, byte [ebp - 0x21]
test al, 1
jne 0x1002816e
jmp 0x10028248
mov eax, dword [0x10280cf4]
mov esi, dword [0x10280cf8]
mov edi, esi
xor edi, 0xffffffff
mov edx, eax
and edx, edi
mov ecx, eax
or ecx, edi
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, esi
or eax, esi
imul eax, edx
add eax, ecx
imul ecx, eax, 0x8176df97
sub ecx, 0x55dd89b7
add ecx, 0x4917de83
add ecx, 0x55dd89b7
mov edx, 0xffffffff
xor edx, 0x810e446f
mov eax, ecx
xor eax, edx
and eax, ecx
cmp eax, 0xe68e66f5
je 0x10028497
mov ecx, dword [ebp - 0x18]
mov eax, dword [0x10280cfc]
mov edi, dword [0x10280d00]
mov esi, edi
xor esi, 0xffffffff
mov edx, eax
and edx, esi
mov esi, eax
xor esi, edi
add eax, esi
sub eax, edx
add eax, 0x6a4f9119
mov edi, 0xffffffff
xor edi, 0xaf976810
mov esi, eax
and esi, edi
mov edx, eax
or edx, edi
xor edx, 0xffffffff
imul edx, esi
mov esi, eax
and esi, 0xaf976810
or eax, 0xaf976810
imul eax, esi
add eax, edx
and eax, 0x21ecc422
cmp dword [ecx], 0x23
setbe cl
mov byte [ebp - 0x22], cl
cmp eax, 0x36a5955b
je 0x100281cb
mov al, byte [ebp - 0x22]
test al, 1
jne 0x10028243
jmp 0x10028248
jmp 0x10028252
jmp 0x1002824d
call fcn.10201d22
mov eax, dword [0x10280d04]
mov esi, dword [0x10280d08]
mov ecx, eax
and ecx, ecx
xor ecx, 0xffffffff
and ecx, esi
xor ecx, 0xffffffff
mov edx, esi
xor edx, 0xffffffff
xor esi, 0xffffffff
or edx, esi
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
and ecx, eax
xor ecx, 0xffffffff
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
and eax, 0x596944f2
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x596944f2
mov esi, 0xffffffff
xor esi, 0x596944f2
or edx, esi
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, eax
xor ecx, 0x6adc0c66
xor ecx, 0xffffffff
and ecx, 0x6adc0c66
shl ecx, 1
sub ecx, 0x6adc0c66
sub eax, ecx
mov ecx, 0x80258cdd
xor edx, edx
div ecx
cmp eax, 0x457531c4
ja 0x1002849c
mov ecx, dword [0x10280d0c]
and ecx, dword [0x10280d10]
mov edx, 0xffffffff
xor edx, 0x72536d7b
mov eax, ecx
xor eax, edx
and eax, ecx
xor eax, 0xf3e3e95
sub eax, 0x4957d290
cmp eax, 0x118597c6
je 0x1002849c
jmp 0x1002831f
mov eax, dword [0x10280d14]
mov ecx, dword [0x10280d18]
add eax, 0x43fac79
sub eax, ecx
sub eax, 0x43fac79
imul eax, eax, 0x8168ea95
mov edx, eax
xor edx, 0xffffffff
and edx, 0x30e8ce70
mov esi, 0xffffffff
xor esi, 0x30e8ce70
mov ecx, eax
and ecx, esi
imul ecx, edx
mov edx, eax
and edx, 0x30e8ce70
or eax, 0x30e8ce70
imul eax, edx
add eax, ecx
imul eax, eax, 0xc9c0f6a
cmp eax, 0x7da27795
jbe 0x100284a1
mov eax, dword [0x10280d1c]
mov edx, dword [0x10280d20]
mov esi, eax
xor esi, 0xffffffff
mov dword [ebp - 0x28], esi
mov ebx, edx
xor ebx, 0xffffffff
mov edi, 0xffffffff
xor edi, 0x2cf5209a
and esi, 0x2cf5209a
and eax, edi
mov ecx, ebx
and ecx, 0x2cf5209a
and edx, edi
or esi, eax
mov eax, dword [ebp - 0x28]
or ecx, edx
mov edx, dword [ebp - 0x20]
xor esi, ecx
mov ecx, dword [ebp - 0x1c]
or eax, ebx
xor eax, 0xffffffff
or edi, 0x2cf5209a
and eax, edi
or esi, eax
mov eax, 0xffffffff
xor eax, 0x17d14889
xor edi, edi
sub edi, 1
sub eax, edi
sub esi, eax
mov eax, esi
or eax, 0x11cb0e96
xor eax, 0xffffffff
xor esi, 0xffffffff
mov edi, 0xffffffff
xor edi, 0x11cb0e96
and esi, edi
xor eax, 0xffffffff
xor esi, 0xffffffff
and eax, esi
mov esi, eax
xor esi, 0xffffffff
and esi, 0x7599969b
mov edi, 0xffffffff
xor edi, 0x7599969b
and eax, edi
sub eax, esi
mov edx, dword [edx]
mov ecx, dword [ecx]
mov dword [ecx], edx
cmp eax, 0x5b71f5d3
jb 0x100284a1
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push eax
mov eax, esp
push eax
mov ecx, esp
push eax
mov edi, esp
push eax
mov edx, esp
push eax
mov esi, esp
push eax
mov ebx, esp
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x14]
mov dword [eax], ebx
mov ebx, dword [ebp - 0x10]
mov dword [ecx], ebx
mov ebx, dword [eax]
mov eax, dword [ebx]
add eax, 0x193742fa
add eax, 0x23
sub eax, 0x193742fa
mov dword [ebx], eax
mov eax, dword [ebp - 0x2c]
mov ebx, dword [ecx]
mov ebx, dword [ebx]
mov dword [edi], ebx
mov edi, dword [edi]
mov edi, dword [edi - 4]
mov dword [edx], edi
mov dword [esi], 4
mov ecx, dword [ecx]
mov ecx, dword [ecx]
mov esi, dword [edx]
xor edx, edx
sub edx, esi
add ecx, edx
mov dword [eax], ecx
jmp 0x10027ff1
jmp 0x100280f4
jmp 0x100281cb
jmp 0x100282e8
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ecx]
mov eax, dword [eax]
mov dword [eax], ecx
jmp 0x1002837c