Function at 0x100500e0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x60
mov eax, dword [0x1006e60c]
mov ecx, dword [0x1006e610]
mov edx, ecx
not edx
and edx, eax
not eax
or eax, ecx
add eax, edx
add eax, 0xb
cmp dword [0x10071d6c], eax
mov esi, dword [0x10071d70]
setl al
setge ah
mov edx, esi
or edx, 1
add edx, esi
mov edi, esi
not edi
add edi, edx
lea edx, [esi + edi]
add edx, 0xffffffff
imul edx, esi
mov esi, dword [0x1006e614]
mov ecx, dword [0x1006e618]
mov ebx, esi
not ebx
and ebx, ecx
add ebx, ebx
mov edi, ecx
not edi
or edi, esi
and esi, ecx
sub ecx, ebx
sub ecx, edi
not esi
add esi, ecx
and edx, 1
cmp edx, esi
sete cl
and ah, cl
add ah, cl
mov edx, eax
or dl, cl
add dl, ah
and al, cl
not al
add al, dl
mov ebx, dword [ebp + 8]
test al, 1
jne 0x100504b8
push eax
mov dword [ebp - 0x34], esp
push eax
mov dword [ebp - 0x60], esp
push eax
mov ecx, esp
push eax
mov edx, esp
push eax
mov esi, esp
push eax
mov eax, esp
mov dword [eax], ebx
mov dword [ebp - 0x6c], eax
mov eax, dword [eax]
mov eax, dword [eax]
mov dword [ebp - 0x5c], esi
mov dword [esi], eax
lea eax, [ebx + 4]
mov dword [edx], eax
mov dword [ebp - 0x64], edx
mov eax, dword [edx]
mov eax, dword [eax]
mov dword [ebp - 0x68], ecx
mov dword [ecx], eax
mov edx, dword [0x1006e5f4]
mov ecx, dword [0x1006e5f8]
mov esi, ecx
not esi
mov dword [ebp - 0x30], esi
mov eax, edx
not eax
mov ebx, esi
sub ebx, ecx
lea edi, [esi + esi]
mov dword [ebp - 0x14], edi
sub ebx, edi
lea edi, [ebx + ecx]
add edi, 0xffffffff
add ebx, ecx
mov esi, eax
or esi, edi
add esi, ebx
add esi, 0xffffffff
mov ebx, eax
xor ebx, edi
not ebx
add ebx, esi
add ebx, edx
or edi, edx
add edi, edi
sub ebx, edi
not ebx
add ebx, ebx
or eax, edx
and eax, 0x309f5fd8
mov edi, edx
and edi, 0xcf60a027
or eax, edi
sub eax, edx
sub edx, ebx
mov esi, eax
not esi
and esi, edi
mov ebx, eax
or ebx, edi
add ebx, esi
and eax, edi
not edi
add edi, ebx
add eax, edi
add eax, 1
mov edi, dword [ebp - 0x30]
lea esi, [ecx + edi*2]
add esi, 1
and esi, 0x309f5fd8
and ecx, 0xcf60a027
or ecx, esi
xor ecx, eax
not ecx
mov eax, edx
or eax, ecx
sub eax, ecx
mov esi, edx
xor esi, ecx
not esi
add esi, eax
not edx
or edx, ecx
sub esi, edx
mov eax, dword [ebp - 0x14]
sub eax, edi
add eax, esi
imul eax, eax, 0xceeaab59
mov ecx, eax
neg ecx
lea edx, [ecx + ecx]
or ecx, 0xc3af4084
sub edx, ecx
add eax, 0xffffffff
or eax, 0x3c50bf7b
add eax, edx
imul eax, eax, 0x606b1317
add eax, 0x7bd442cf
mov ecx, eax
or ecx, 0xdb497dc
or eax, 0xf24b6823
add eax, ecx
add eax, 0xf24b6825
cmp dword [ebp + 0xc], eax
mov eax, dword [ebp - 0x60]
sete byte [eax]
push eax
mov dword [ebp - 0x30], esp
mov edx, dword [0x1006e5fc]
mov ebx, edx
not ebx
mov dword [ebp - 0x14], ebx
mov ecx, ebx
and ecx, 0xfc2f4d4e
mov esi, edx
xor esi, 0xfc2f4d4e
add esi, ecx
mov edi, ebx
or edi, 0x3d0b2b1
sub esi, edi
add esi, ebx
sub esi, ecx
mov eax, dword [0x1006e600]
and edx, 0x3d0b2b1
lea edx, [ebx + edx*2]
sub edx, edi
or edx, esi
mov esi, edx
not esi
and esi, 0x3d0b2b1
mov edi, edx
xor edi, 0x3d0b2b1
add edi, edi
sub edi, esi
mov esi, edx
xor esi, 0xfc2f4d4e
add esi, edi
or edx, 0xfc2f4d4e
sub esi, edx
not esi
mov edi, eax
not edi
or esi, edi
not esi
add esi, 0x5621b05c
mov edx, esi
or edx, 0xa9de4fa4
mov ebx, esi
sub ebx, edx
not edx
add edx, edx
sub ebx, edx
mov edx, esi
xor esi, 0x5621b05b
add esi, ebx
not edx
or edx, 0x5621b05b
add edx, esi
mov esi, edi
and esi, 0x8c4340ad
mov ebx, edi
and ebx, 0x73bcbf52
sub esi, ebx
or edi, 0x8c4340ad
add esi, edi
add esi, 0x73bcbf53
and eax, 0x73bcbf52
mov edi, esi
or edi, eax
mov ebx, esi
not esi
or esi, eax
mov ecx, eax
not eax
and ebx, eax
sub ecx, ebx
add edi, ecx
add edi, eax
sub edi, esi
mov eax, edi
xor eax, 0x73bcbf52
xor edi, 0xc4340ad
lea eax, [eax + edi*2]
add eax, 1
and eax, dword [ebp - 0x14]
mov ecx, eax
not ecx
mov edi, ecx
sub edi, ecx
sub edi, ecx
sub edi, eax
add edi, ecx
lea eax, [edx + edi]
add eax, 0xa9de4fa3
mov ecx, eax
and ecx, 0xf28fd141
sub ecx, eax
mov edx, eax
or edx, 0xf28fd141
add edx, ecx
add edx, eax
imul eax, edx, 0x501362b3
lea ecx, [eax - 0x11ef86a5]
mov edx, ecx
and edx, 0xfc6613f
add edx, edx
add eax, eax
add eax, 0xdc20f2b6
sub eax, edx
xor ecx, 0xf0399ec0
add ecx, eax
imul eax, ecx, 0xda8c1c7b
lea ecx, [eax - 0x14188c80]
not ecx
mov edx, ecx
and edx, 0xe7fc78
add eax, edx
add eax, 0xebe77380
mov edx, ecx
and edx, 0xff180387
add edx, eax
sub edx, ecx
add edx, 0xff180388
mov eax, dword [ebp - 0x30]
mov dword [eax], edx
push eax
mov dword [ebp - 0x38], esp
push eax
mov dword [ebp - 0x48], esp
push eax
mov dword [ebp - 0x44], esp
push eax
mov dword [ebp - 0x40], esp
push eax
mov dword [ebp - 0x58], esp
push eax
mov dword [ebp - 0x14], esp
mov eax, dword [0x1006e624]
mov ecx, dword [0x1006e628]
mov edx, eax
xor edx, ecx
mov edi, eax
or edi, ecx
sub edi, edx
sub edi, edx
mov esi, dword [0x100720a4]
add edi, edx
and eax, ecx
not eax
add eax, edi
add eax, 0xb
cmp dword [0x100720a8], eax
setl al
lea ecx, [esi + 1]
imul ecx, esi
mov esi, dword [str.kT3x]
mov edx, dword [0x1006e630]
mov edi, esi
and edi, edx
lea edi, [edi + edi*2]
lea ebx, [esi + esi]
sub ebx, edi
mov edi, esi
xor edi, edx
not edi
lea edi, [ebx + edi*2]
mov ebx, dword [ebp + 8]
not edx
sub edi, edx
or edx, esi
sub edi, edx
and ecx, 1
cmp ecx, edi
mov ecx, dword [0x1006e61c]
mov edx, ecx
not edx
lea ecx, [ecx + edx - 0x5a2c3c81]
mov edx, dword [ebp - 0x14]
mov dword [edx], ecx
sete cl
or cl, al
add cl, 1
test cl, 1
je 0x10052950
push eax
push eax
mov dword [ebp - 0x14], esp
push eax
mov eax, esp
push eax
mov ecx, esp
push eax
mov edx, esp
push eax
mov esi, esp
mov dword [esi], ebx
mov esi, dword [esi]
mov esi, dword [esi]
mov dword [edx], esi
lea edx, [ebx + 4]
mov dword [ecx], edx
mov ecx, dword [ecx]
mov ecx, dword [ecx]
mov dword [eax], ecx
mov edi, dword [0x1006e5f4]
mov eax, dword [0x1006e5f8]
mov esi, edi
not esi
mov edx, esi
or edx, eax
not edx
add edx, edx
mov ebx, edx
neg ebx
mov ecx, ebx
and ecx, 0x5ce9ef66
sub ecx, edx
or ebx, 0xa3161099
sub ecx, ebx
lea ebx, [ecx + edi]
add ebx, 0x462c2132
add ecx, edi
mov edx, ebx
not edx
and edx, 0x5ce9ef66
lea ecx, [edx + ecx*2]
add ecx, 0x8c584264
or ebx, 0x5ce9ef66
sub ecx, ebx
mov dword [ebp - 0x30], ecx
lea esi, [esi + edi*2]
mov ecx, 0xfffffffe
sub ecx, esi
mov edx, edi
and edx, 0xcf60a027
mov ebx, edi
or ebx, 0xcf60a027
mov esi, edx
sub esi, ebx
not ebx
add ebx, ebx
sub esi, ebx
xor edi, 0x309f5fd8
add edi, esi
not edx
add edx, edi
and ecx, 0x309f5fd8
or edx, ecx
mov dword [ebp - 0x38], edx
mov ebx, eax
not ebx
mov edi, ebx
and edi, 0x309f5fd8
mov ecx, ebx
and ecx, 0xcf60a027
sub edi, ecx
mov ecx, eax
sub ecx, eax
sub ecx, eax
add ecx, eax
or ecx, ebx
or ebx, 0x309f5fd8
lea esi, [edi + ebx]
add esi, 0xcf60a028
mov edi, eax
and edi, 0xcf60a027
mov ebx, esi
or ebx, edi
mov edx, esi
not esi
or esi, edi
mov eax, edi
not edi
and edx, edi
sub eax, edx
add ebx, eax
add ebx, edi
sub ebx, esi
mov eax, dword [ebp - 0x38]
xor eax, ebx
lea eax, [eax + ebx*2]
not ebx
lea edx, [eax + ebx*2]
lea eax, [eax + ebx*2]
add eax, 2
not eax
add edx, eax
add edx, 2
add edx, eax
not edx
mov esi, dword [ebp - 0x30]
lea eax, [esi + edx]
add edx, esi
add edx, 0x5ce9ef67
lea esi, [ecx - 1]
and esi, edx
add esi, esi
add eax, eax
add eax, 0xb9d3dece
sub eax, esi
mov esi, ecx
neg esi
xor esi, edx
add eax, ecx
add esi, eax
lea eax, [ecx + esi]
add eax, 0xffffffff
imul eax, eax, 0xceeaab59
mov ecx, 0x311554a7
sub ecx, eax
mov edx, ecx
sub edx, eax
add eax, 0xceeaab58
and eax, 0xc3af4084
add eax, edx
or ecx, 0xc3af4084
sub eax, ecx
imul eax, eax, 0x606b1317
add eax, 1
cmp dword [ebp + 0xc], eax
mov eax, dword [ebp - 0x14]
sete byte [eax]
push eax
mov dword [ebp - 0x14], esp
mov edx, dword [0x1006e5fc]
mov ecx, edx
not ecx
mov esi, ecx
and esi, 0xfc2f4d4e
mov edi, ecx
or edi, 0x3d0b2b1
add edi, edx
add edi, 1
xor edx, 0x3d0b2b1
mov ebx, esi
sub ebx, edx
mov edx, ecx
or edx, 0xfc2f4d4e
add edx, ebx
sub edx, esi
mov esi, edx
or esi, edi
add esi, esi
mov ebx, edx
and edx, edi
not edi
add edi, esi
not ebx
add ebx, edi
add edx, ebx
add edx, 2
mov esi, edx
not esi
mov edi, esi
and edi, 0x3d0b2b1
add edi, edi
mov ebx, edx
xor ebx, 0x3d0b2b1
sub ebx, edi
or edx, 0xfc2f4d4e
sub ebx, edx
mov edx, dword [0x1006e600]
or esi, 0xfc2f4d4e
add ebx, esi
add ebx, 0x3d0b2b1
mov esi, edx
not esi
lea edi, [esi + esi]
sub edi, esi
not ebx
mov eax, ebx
and eax, edi
mov esi, ebx
or esi, edi
add eax, esi
not esi
add esi, eax
xor ebx, edi
add esi, ebx
add esi, 1
mov ebx, esi
not ebx
mov eax, esi
xor eax, 0x29de4fa3
add eax, eax
sub ebx, eax
xor esi, 0x5621b05c
add esi, esi
sub ebx, esi
lea eax, [ebx + 0x5621b05a]
xor eax, 0x5621b05b
lea esi, [ebx + eax]
add esi, 0x5621b05a
sub esi, ebx
mov eax, 0xa9de4fa5
sub eax, ebx
add eax, eax
or eax, 0x53bc9f48
sub esi, eax
mov eax, edi
not eax
mov ebx, edi
and ebx, 0xc4340ad
and eax, 0x73bcbf52
lea eax, [eax + ebx*2]
xor edi, 0x8c4340ad
lea ebx, [edi + eax]
add ebx, 1
and edx, 0x73bcbf52
mov eax, ebx
and eax, edx
mov edi, ebx
or edi, edx
add edi, eax
not ebx
add edi, ebx
or ebx, edx
sub edi, ebx
mov edx, edi
not edx
mov eax, edx
and eax, 0x73bcbf52
mov ebx, edi
xor ebx, 0x73bcbf52
add ebx, eax
or edi, 0x73bcbf52
sub edi, ebx
mov ebx, dword [ebp + 8]
add edi, edx
and edi, ecx
mov ecx, edi
not ecx
lea edx, [esi + 0x67476445]
mov eax, edx
not eax
and eax, ecx
add eax, esi
add eax, 0x67476445
add eax, ecx
add eax, edi
and edx, ecx
lea ecx, [eax + edx]
add eax, edx
add eax, 1
mov edx, eax
and edx, 0x96538aa8
add edx, ecx
add edx, 1
mov ecx, eax
xor ecx, 0x96538aa8
add ecx, edx
or eax, 0x96538aa8
sub ecx, eax
add ecx, 0x89cb5862
mov edx, ecx
not edx
mov eax, edx
and eax, 0xe7fc78
lea eax, [eax + eax*2]
mov esi, ecx
sub esi, eax
xor ecx, 0xff180387
lea eax, [ecx + ecx*2]
sub esi, eax
or edx, 0xe7fc78
lea eax, [edx + edx*2]
add eax, esi
add eax, 0xff180388
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
push eax
push eax
push eax
push eax
push eax
push eax
mov eax, esp
mov ecx, dword [0x1006e86c]
mov edx, dword [0x1006e870]
mov esi, ecx
xor esi, edx
or ecx, edx
mov edx, ecx
sub edx, esi
not ecx
add ecx, edx
add ecx, esi
add ecx, 0xa5d3c37f
mov dword [eax], ecx
jmp 0x10050172
mov ecx, dword [0x1006e664]
mov edx, dword [0x1006e668]
mov eax, ecx
xor eax, edx
not eax
add eax, edx
not ecx
add eax, ecx
or ecx, edx
add ecx, ecx
sub eax, ecx
add eax, 0xa
cmp dword [0x10072094], eax
mov edx, dword [0x10072098]
setl al
lea ecx, [edx + 1]
imul ecx, edx
and ecx, 1
mov edx, dword [0x1006e66c]
mov esi, dword [0x1006e670]
mov edi, edx
xor edi, edx
not edi
and edi, esi
xor edi, edx
xor edx, esi
sub edx, edi
cmp ecx, edx
sete cl
mov edx, eax
and dl, cl
mov ah, al
or ah, cl
add dl, ah
not ah
add ah, dl
xor al, cl
not al
add al, ah
test al, 1
je 0x10050830
jmp 0x100528d0
mov eax, dword [ebx]
mov ecx, dword [0x1006e6fc]
mov edx, dword [0x1006e700]
mov esi, ecx
or esi, edx
sub esi, edx
not ecx
or ecx, edx
add ecx, esi
add ecx, 0x86f2db2
cmp eax, ecx
mov ecx, 0x1166621e
mov eax, 0x1b8c684d
cmove ecx, eax
mov esi, dword [0x10072168]
cmp dword [0x10072164], 0xa
setl byte [ebp - 0x10]
lea edx, [esi - 1]
imul edx, esi
mov ebx, dword [0x1006e70c]
mov edi, dword [0x1006e710]
mov eax, ebx
and eax, edi
mov esi, ebx
not esi
and esi, edi
lea eax, [esi + eax*2]
mov esi, ebx
or esi, edi
sub eax, esi
xor ebx, edi
add ebx, eax
sub ebx, edi
and edx, 1
cmp edx, ebx
mov ebx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x14]
mov dword [eax], ecx
sete al
setne cl
mov dl, byte [ebp - 0x10]
add cl, dl
and al, dl
not al
add al, cl
test al, 1
jne 0x100528d0
mov eax, dword [ebx]
cmp eax, 0x86f2db1
mov eax, 0x1166621e
mov ecx, 0x1b8c684d
cmove eax, ecx
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
jmp 0x100508b0
mov eax, dword [ebx]
mov edx, dword [0x1006e74c]
mov esi, dword [0x1006e750]
mov ecx, edx
or ecx, esi
not ecx
add ecx, edx
not esi
or esi, edx
sub ecx, esi
add ecx, 0xb165f1f4
cmp eax, ecx
mov eax, 0x1166621e
mov ecx, 0xf87e76bb
cmove eax, ecx
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
mov ecx, dword [str.LnB]
mov edx, dword [0x1006e758]
mov eax, ecx
or eax, edx
not eax
add eax, edx
not ecx
or ecx, edx
sub eax, ecx
add eax, 0xa
cmp dword [0x1007207c], eax
mov ecx, dword [0x10072080]
setl al
lea edx, [ecx + 1]
imul edx, ecx
test dl, 1
sete cl
mov edx, eax
xor dl, cl
and al, cl
not dl
not al
add al, dl
test al, 1
jne 0x100528d0
mov eax, dword [ebx]
mov ecx, dword [0x1006e89c]
mov esi, dword [0x1006e8a0]
mov edx, ecx
xor edx, esi
not edx
add edx, esi
mov edi, ecx
not edi
or edi, esi
sub edx, edi
and ecx, esi
not ecx
add ecx, edx
add ecx, 0xb165f1f5
cmp eax, ecx
mov eax, 0x1166621e
mov ecx, 0xf87e76bb
cmove eax, ecx
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
jmp 0x10050960
mov edx, dword [0x10072170]
cmp dword [0x1007216c], 0xa
setl al
lea ecx, [edx - 1]
imul ecx, edx
mov edx, dword [0x1006e694]
mov esi, dword [0x1006e698]
mov edi, edx
or edi, esi
sub edi, esi
not edx
or edx, esi
add edx, edi
add edx, 1
and ecx, 1
cmp ecx, edx
mov ecx, dword [ebp - 0x30]
mov ecx, dword [ecx]
mov dword [ebx], ecx
sete cl
or cl, al
mov eax, dword [ebp - 0x14]
mov dword [eax], 0x5326e9d9
jne 0x100528d0
mov eax, dword [ebp - 0x30]
mov eax, dword [eax]
mov dword [ebx], eax
mov eax, dword [ebp - 0x14]
mov dword [eax], 0x5326e9d9
jmp 0x10050a30
mov eax, dword [ebx]
cmp eax, 0xf28fd141
mov eax, 0xbafb13a
mov ecx, 0x461e2dee
cmovl eax, ecx
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
mov eax, dword [0x1007208c]
cmp dword [0x10072090], 0xa
setl cl
lea edx, [eax - 0x5f8aa75d]
imul edx, eax
test dl, 1
sete al
or al, cl
jne 0x100528d0
mov eax, dword [ebx]
mov ecx, dword [0x1006e87c]
mov edx, dword [0x1006e880]
mov edi, ecx
or edi, edx
sub edi, ecx
mov esi, ecx
xor esi, edx
not esi
add esi, edi
not ecx
or ecx, edx
sub esi, ecx
add esi, 0xf28fd141
cmp eax, esi
mov eax, 0xbafb13a
mov ecx, 0x461e2dee
cmovl eax, ecx
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
jmp 0x10050aa0
mov eax, dword [ebx]
mov ecx, dword [0x1006e6d4]
mov edx, dword [0x1006e6d8]
mov esi, ecx
xor esi, edx
or ecx, edx
mov edx, ecx
sub edx, esi
not ecx
add ecx, edx
add ecx, esi
add ecx, 0x86f2db2
cmp eax, ecx
mov eax, 0xaa0084bc
mov ecx, 0x7b41579c
cmovl eax, ecx
cmp dword [0x1007225c], 0xa
mov esi, dword [0x10072260]
setl cl
lea edx, [esi + 1]
imul edx, esi
mov esi, dword [0x1006e6e8]
mov edi, esi
not edi
mov ebx, dword [0x1006e6e4]
and edi, ebx
add edi, esi
or ebx, esi
sub edi, ebx
mov ebx, dword [ebp - 0x34]
and edx, 1
cmp edx, edi
mov edx, dword [ebp - 0x14]
mov dword [edx], eax
sete al
or al, cl
jne 0x100528d0
mov eax, dword [ebx]
mov ecx, dword [0x1006e884]
mov edx, dword [0x1006e888]
mov esi, edx
not esi
and esi, ecx
add esi, edx
or ecx, edx
not ecx
add ecx, esi
add ecx, 0x86f2db2
cmp eax, ecx
mov eax, 0xaa0084bc
mov ecx, 0x7b41579c
cmovl eax, ecx
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
jmp 0x10050b20
mov eax, dword [ebx]
cmp eax, 0xf28fd141
mov eax, 0x1166621e
mov ecx, 0x7707d6c1
cmove eax, ecx
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
mov eax, dword [0x1006e72c]
mov edx, dword [0x1006e730]
mov ecx, eax
xor ecx, edx
not ecx
mov esi, edx
not esi
or esi, eax
sub ecx, esi
mov esi, dword [0x10072088]
add ecx, eax
and eax, edx
not eax
add eax, ecx
add eax, 0xb
cmp dword [0x10072084], eax
setl cl
setge dl
mov eax, esi
and eax, 1
add eax, esi
mov edi, esi
not edi
add eax, edi
or edi, 1
sub eax, edi
add eax, 1
imul eax, esi
test al, 1
sete ch
and dl, ch
mov dh, cl
xor dh, ch
add dl, dh
or ch, cl
add ch, dl
not dh
add dh, ch
or al, cl
add al, dh
test al, 1
jne 0x100528d0
mov eax, dword [ebx]
cmp eax, 0xf28fd141
mov eax, 0x1166621e
mov ecx, 0x7707d6c1
cmove eax, ecx
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
jmp 0x10050be0
mov ecx, dword [0x1006e774]
mov edx, dword [0x1006e778]
mov esi, ecx
mov eax, edx
not ecx
or ecx, edx
not edx
and esi, edx
sub eax, esi
add eax, edx
sub eax, ecx
add eax, 0xb88abca5
mov esi, dword [0x100721e8]
mov ecx, dword [0x1006e780]
mov edx, ecx
not edx
add edx, edx
lea ecx, [edx + ecx*2]
add ecx, 0xc
cmp dword [0x100721e4], ecx
setl cl
lea edx, [esi + 1]
imul edx, esi
mov edi, dword [0x1006e784]
mov dword [ebp - 0x10], edi
not edi
mov ebx, dword [0x1006e788]
and edi, ebx
add edi, edi
mov esi, dword [ebp - 0x10]
xor esi, ebx
sub esi, edi
add esi, ebx
sub esi, dword [ebp - 0x10]
and edx, 1
cmp edx, esi
mov edx, dword [ebp - 0x14]
mov dword [edx], eax
setne al
sete dl
xor dl, cl
add dl, al
or cl, al
add cl, dl
test cl, 1
jne 0x100528d0
mov eax, dword [ebp - 0x14]
mov dword [eax], 0xb88abca5
jmp 0x10050c90
mov esi, dword [0x10072190]
cmp dword [0x1007218c], 0xa
setge ch
setl cl
lea edx, [esi + 1]
imul edx, esi
mov esi, dword [0x1006e7ac]
mov edi, dword [0x1006e7b0]
mov ebx, esi
not ebx
mov eax, ebx
and eax, edi
xor esi, edi
sub esi, eax
or ebx, edi
lea eax, [esi + ebx]
add eax, 1
and edx, 1
cmp edx, eax
sete al
setne dl
mov ah, cl
and ah, dl
add ah, al
or al, cl
add al, ah
or cl, dl
add cl, al
add cl, ch
mov eax, dword [ebp - 0x14]
mov dword [eax], 0x812cc960
test cl, 1
jne 0x100528d0
mov eax, dword [ebp - 0x14]
mov dword [eax], 0x812cc960
jmp 0x10050d30
mov eax, dword [ebp - 0x60]
cmp byte [eax], 0
mov eax, 0x86f2db1
mov ecx, 0xb165f1f4
cmovne eax, ecx
mov ecx, dword [ebp - 0x30]
mov dword [ecx], eax
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x38]
mov dword [ecx], eax
mov eax, dword [0x1006e604]
mov esi, dword [0x1006e608]
mov ecx, eax
mov dword [ebp - 0x10], eax
not ecx
mov dword [ebp - 0x1c], ecx
lea edx, [esi + esi*2]
lea edi, [esi + esi]
sub edi, edx
mov edx, esi
not edx
add edx, edi
lea edi, [ecx + ecx]
add edi, eax
add edi, 1
not edi
lea edx, [edx + esi*2]
sub edx, esi
or edx, edi
not edx
lea edi, [edx + edx]
sub edx, edi
lea edi, [edx + edx]
sub edx, edi
mov ebx, eax
xor ebx, esi
mov edi, ebx
not edi
mov ecx, eax
and ecx, esi
lea eax, [ebx + edi]
add eax, ecx
add eax, 1
add ecx, ebx
or esi, dword [ebp - 0x10]
not esi
add esi, ecx
sub esi, edi
or esi, eax
mov edi, esi
not edi
add edi, edi
mov ecx, edi
sub ecx, esi
sub ecx, esi
sub ecx, edi
lea eax, [ecx + esi]
add eax, 0xffffffff
sub edi, edi
or edi, eax
mov eax, edx
neg eax
mov ebx, edi
neg ebx
and eax, ebx
sub eax, edx
not edi
add edi, eax
lea esi, [edx + edi]
add esi, 0xffffffff
add edx, 0xffffffff
or edx, ebx
sub esi, edx
mov ecx, dword [ebp - 0x1c]
and ecx, 0x61a7e206
mov edx, dword [ebp - 0x10]
and edx, 0x9e581df9
lea eax, [ecx + edx]
mov ebx, edx
mov edi, ecx
mov edx, eax
sub edx, ebx
mov ecx, esi
not ecx
add edx, eax
sub edx, edi
xor edx, 0x9e581df9
and esi, edx
add esi, ecx
sub esi, edx
sub esi, edx
and edx, ecx
add edx, esi
mov eax, dword [ebp - 0x48]
mov dword [eax], edx
mov ecx, dword [ebp - 0x68]
mov eax, dword [ecx]
mov edx, dword [ebp - 0x44]
mov dword [edx], eax
mov eax, dword [ecx]
mov ecx, dword [ebp - 0x40]
mov dword [ecx], eax
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
mov dword [ebp - 0x10], eax
mov edx, dword [str.51mEVJ_]
mov esi, dword [0x1006e7c8]
mov ecx, edx
and ecx, esi
not edx
add ecx, edx
or edx, esi
sub ecx, edx
add ecx, 0x812cc960
mov edx, dword [0x1006e7cc]
mov esi, dword [0x1006e7d0]
mov edi, edx
xor edi, esi
or edx, esi
mov esi, edx
sub esi, edi
not edx
add edx, esi
mov ebx, dword [0x10072074]
add edx, edi
add edx, 0xb
cmp dword [0x10072078], edx
setl byte [ebp - 0x1c]
lea esi, [ebx + 1]
imul esi, ebx
mov eax, dword [0x1006e7d4]
mov ebx, dword [0x1006e7d8]
mov edx, eax
or edx, ebx
sub edx, eax
mov edi, eax
xor edi, ebx
not edi
add edi, edx
not eax
or eax, ebx
sub edi, eax
and esi, 1
cmp esi, edi
mov eax, dword [ebp - 0x58]
mov edx, dword [ebp - 0x10]
mov dword [eax], edx
mov eax, dword [ebp - 0x14]
mov dword [eax], ecx
sete al
setne cl
and cl, byte [ebp - 0x1c]
add cl, al
test cl, 1
jne 0x100528d0
mov eax, dword [ebp - 0x60]
cmp byte [eax], 0
mov eax, 0x86f2db1
mov ecx, 0xb165f1f4
cmovne eax, ecx
mov ecx, dword [ebp - 0x30]
mov dword [ecx], eax
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x38]
mov dword [ecx], eax
mov eax, dword [0x1006e604]
mov edx, dword [0x1006e608]
mov ecx, edx
not ecx
or ecx, eax
add ecx, ecx
sub ecx, eax
mov esi, eax
or esi, edx
lea edi, [ecx + esi]
lea ebx, [ecx + esi]
add ebx, 1
mov ecx, eax
not ecx
not ebx
lea esi, [ebx + edi]
add esi, 1
add esi, ebx
mov edi, eax
and edi, edx
mov ebx, eax
xor ebx, edx
add ebx, edi
add ebx, ecx
or edx, ecx
sub ebx, edx
mov edx, ebx
not edx
and edx, edi
not esi
add edx, ebx
mov edi, edx
not edi
add edi, edx
sub edx, edi
mov edi, esi
and edi, edx
or edx, esi
add edx, edi
mov esi, eax
and esi, 0x9e581df9
mov edi, ecx
and edi, 0x1e581df9
add edi, edi
sub esi, edi
xor eax, 0x9e581df9
add eax, esi
add eax, ecx
add eax, 0x9e581dfa
and ecx, 0x61a7e206
mov esi, ecx
xor esi, eax
not eax
sub esi, eax
or eax, ecx
add eax, esi
xor eax, 0x9e581df9
lea ecx, [eax + eax]
sub eax, ecx
sub eax, edx
mov ecx, dword [ebp - 0x48]
mov dword [ecx], eax
mov ecx, dword [ebp - 0x68]
mov eax, dword [ecx]
mov edx, dword [ebp - 0x44]
mov dword [edx], eax
mov eax, dword [ecx]
mov ecx, dword [ebp - 0x40]
mov dword [ecx], eax
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x58]
mov dword [ecx], eax
mov eax, dword [0x1006e8b4]
mov ecx, dword [0x1006e8b8]
mov edx, eax
not edx
and edx, ecx
not ecx
or ecx, eax
lea eax, [edx + ecx]
add eax, 0x812cc961
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
jmp 0x10050db0
mov eax, dword [ebp - 0x38]
mov edx, dword [eax]
mov dword [ebp - 0x18], edx
mov ecx, edx
not ecx
lea eax, [ecx + ecx]
mov edi, ecx
or eax, 0xfffffffc
mov ecx, edx
or ecx, 0xfffffffe
mov dword [ebp - 0x10], ecx
lea edx, [eax + ecx]
add edx, 3
mov esi, edx
not esi
mov eax, esi
or eax, 0x4e520f2f
sub esi, eax
sub esi, edx
or edx, 0xb1adf0d0
lea ecx, [esi + edx]
add ecx, 0x4e520f2f
mov ebx, edi
mov esi, edi
or ebx, 1
mov dword [ebp - 0x1c], ebx
not ebx
mov edi, ebx
neg edi
mov eax, ecx
not eax
and eax, edi
mov edx, ecx
sub edx, eax
add edx, ebx
xor edi, ecx
add edx, edi
not edi
add edi, edx
add ebx, 0xffffffff
or ebx, ecx
sub edi, ebx
mov ecx, dword [ebp - 0x18]
mov ebx, ecx
and ebx, 0xfffffffe
sub ebx, ecx
sub ebx, ecx
mov edx, ecx
mov eax, ecx
xor edx, 1
add ebx, edx
add ebx, dword [ebp - 0x10]
add edi, ecx
lea ecx, [esi + ecx*2]
mov dword [ebp - 0x10], ecx
lea ecx, [eax + esi*2]
and eax, 1
not ecx
add ecx, esi
sub ebx, esi
and esi, 1
sub eax, esi
imul esi, dword [ebp - 0x10], 0x5cf9b403
add esi, 0xb9f36806
or ecx, esi
lea esi, [edi + edi]
sub edi, esi
add ecx, 0x5f0192fc
not ecx
add ecx, 0xb713f3d8
or ecx, 0xfffffffe
lea esi, [ecx + edi]
add ecx, edi
add ecx, 1
add esi, esi
add esi, 2
sub ecx, esi
add eax, edx
mov edx, dword [ebp - 0x1c]
add eax, edx
add eax, 1
add ebx, 1
or ebx, eax
mov eax, ebx
neg eax
lea edx, [ecx + 0x22c41c32]
lea esi, [ebx - 1]
and esi, edx
add esi, esi
add ecx, ecx
add ecx, 0x45883864
sub ecx, esi
sub ecx, ebx
xor eax, edx
add eax, ecx
add eax, ebx
mov ecx, eax
not ecx
and ecx, 0xdd3be3cf
add ecx, eax
or eax, 0x22c41c30
add eax, ecx
imul eax, eax, 0x914752b9
mov ecx, 0xf20fbeb0
sub ecx, eax
mov eax, ecx
not eax
lea edx, [eax + ecx*2]
lea eax, [eax + ecx*2]
add eax, 0xd0f7706b
lea ecx, [edx + edx*2]
add ecx, 0x72e65141
not eax
add ecx, eax
add ecx, eax
mov eax, 0xfffffffe
sub eax, ecx
imul ecx, eax, 0x9eb91389
mov edx, ecx
and edx, 0x3200c560
lea edx, [edx + edx*2]
imul eax, eax, 0xdc2b3a9b
sub eax, edx
mov edx, ecx
xor edx, 0x4dff3a9f
lea eax, [eax + edx*2]
or ecx, 0xcdff3a9f
sub eax, ecx
add eax, 0xda5d06bb
mov ecx, eax
not ecx
mov edx, eax
xor edx, 0x3200c560
mov esi, eax
sub esi, edx
or eax, 0x3200c560
add eax, esi
or ecx, 0xcdff3a9f
lea edx, [eax + ecx]
add eax, ecx
add eax, 0x3200c561
mov ecx, eax
not ecx
lea esi, [ecx + ecx]
sub esi, ecx
mov edi, esi
and edi, 0xffffff00
mov ebx, esi
or ebx, 0xffffff00
add edi, ebx
not ebx
add ebx, edi
xor esi, 0xffffff00
lea edi, [esi + ebx]
add edi, 1
mov esi, edi
not esi
mov ebx, edi
xor ebx, 0x1c1fb751
add ebx, ebx
sub esi, ebx
xor edi, 0x63e048ae
add edi, edi
sub esi, edi
lea edi, [esi - 0x1c1fb754]
xor edi, 0x1c1fb751
add edi, esi
add edi, 0xe3e048ac
mov ebx, 0x1c1fb753
sub ebx, esi
sub edi, esi
add ebx, ebx
or ebx, 0xc7c0915c
sub edi, ebx
lea ebx, [edi + edx]
add ebx, 0x3200c561
lea esi, [edi + edx + 0x4e207cb4]
add edx, edi
add edx, 0x4e207cb5
not esi
mov edi, esi
and edi, 0xa10ea891
add edi, ebx
add edi, 0x1c1fb754
and ecx, 0x5112f82d
mov ebx, eax
and ebx, 0xaeed07d2
or ebx, ecx
mov ecx, ebx
xor ecx, 0xaeed07d2
or ebx, 0xaeed07d2
add ebx, ecx
or eax, 0xaeed07d2
add eax, ebx
and esi, 0x5ef1576e
add esi, edi
add esi, edx
lea ecx, [esi + eax]
add eax, esi
add eax, 0xf221a0bf
mov edx, eax
not edx
and edx, 0xa10ea891
add ecx, edx
add ecx, 0xf221a0bf
and eax, 0xa10ea891
lea edx, [ecx + eax]
add eax, ecx
add eax, 0x613fdb5a
mov ecx, eax
and ecx, 0xa35d2c7a
add ecx, edx
add ecx, 0x613fdb5a
not eax
or eax, 0x5ca2d385
add ecx, eax
add ecx, 0x724ae664
mov eax, ecx
and eax, 0x3588ae36
mov esi, ecx
sub esi, eax
sub esi, eax
mov edx, ecx
not edx
mov edi, edx
and edi, 0x3588ae36
sub esi, edi
mov edi, dword [ebp - 0x44]
mov ebx, dword [edi]
or ecx, 0x3588ae36
add ecx, esi
or edx, 0x3588ae36
add edx, ecx
lea ecx, [eax + edx]
add ecx, 0x3588ae37
mov eax, ecx
not eax
mov edx, eax
and edx, 0xea57ed22
lea edx, [edx + edx*2]
mov esi, ecx
sub esi, edx
xor ecx, 0x15a812dd
lea ecx, [ecx + ecx*2]
sub esi, ecx
or eax, 0xea57ed22
lea eax, [eax + eax*2]
lea ecx, [esi + eax]
add eax, esi
add eax, 0xea57ed22
mov edx, eax
and edx, 0x3588ae36
add ecx, edx
add ecx, 0xea57ed22
not eax
add ecx, eax
or eax, 0x3588ae36
sub ecx, eax
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp + 8]
movzx esi, byte [eax + ecx - 0x3588ae2e]
mov dword [ebp - 0x18], esi
mov eax, ebx
neg eax
mov ecx, esi
neg ecx
or eax, ecx
lea edi, [ebx - 1]
or edi, ecx
sub eax, ebx
add edi, eax
mov dword [ebp - 0x20], edi
mov ecx, ebx
not ecx
mov dword [ebp - 0x2c], ecx
lea eax, [ecx + ebx*2]
add eax, ecx
sub eax, ebx
lea ecx, [eax + 1]
mov edx, ecx
and edx, esi
add eax, edx
add eax, 1
or ecx, esi
sub eax, ecx
mov ecx, esi
not ecx
sub eax, ecx
not edx
add edx, eax
mov edi, ebx
mov eax, ebx
mov dword [ebp - 0x28], ebx
and edi, ecx
mov esi, ecx
mov dword [ebp - 0x10], ecx
mov ecx, edx
or ecx, edi
mov ebx, edi
add ecx, ecx
sub ecx, edx
mov edi, eax
xor edi, esi
add edi, ebx
mov eax, ebx
not eax
or eax, edx
add eax, ecx
add eax, eax
mov esi, 0x14a631d3
mov ecx, dword [ebp - 0x20]
sub esi, ecx
mov edx, eax
or edx, esi
or edx, 1
add edx, ecx
mov ebx, esi
sub ebx, eax
xor eax, 0xfffffffe
mov ecx, esi
xor ecx, eax
not ecx
add ecx, ebx
sub ecx, edx
and eax, esi
sub ecx, eax
lea eax, [ecx + 0x14a631d1]
mov edx, eax
and edx, 0xeb59ce2c
add ecx, edx
add ecx, 0x14a631d1
not eax
add ecx, eax
or eax, 0xeb59ce2c
sub ecx, eax
mov ebx, dword [ebp - 0x2c]
lea edx, [ebx + ebx]
mov dword [ebp - 0x20], edx
sub edx, ebx
mov esi, edx
mov eax, dword [ebp - 0x10]
and esi, eax
not edx
lea esi, [edx + esi*2]
or edx, eax
sub esi, edx
lea edx, [esi + esi]
sub edx, esi
not edx
lea esi, [edx + edx]
sub esi, edx
add esi, 1
add ecx, 0xf76c31f2
mov edx, ecx
and edx, esi
or ecx, esi
add ecx, edx
mov esi, dword [ebp - 0x28]
mov edx, esi
or edx, eax
sub edi, edx
mov eax, dword [ebp - 0x20]
lea edx, [esi + eax]
add edx, 1
mov eax, dword [ebp - 0x18]
sub edi, eax
or esi, eax
add esi, edi
and ebx, eax
or esi, ebx
xor esi, 0xa3afc722
xor esi, 0x5c5038dd
sub ecx, esi
mov esi, dword [ebp - 0x10]
or eax, esi
xor eax, esi
and eax, edx
xor eax, esi
mov edx, eax
not edx
mov edi, edx
sub edi, eax
sub edi, eax
add edi, eax
add eax, edi
lea esi, [eax + eax*2]
lea ebx, [eax + eax]
sub ebx, esi
sub edx, edi
add edx, ebx
mov esi, eax
and esi, 0x8d64c7bb
mov edi, eax
xor edi, 0x8d64c7bb
mov ebx, esi
sub ebx, edi
lea edx, [edx + eax*2]
sub edx, eax
or eax, 0x8d64c7bb
add eax, ebx
sub eax, esi
and edx, 0x729b3844
mov esi, eax
not esi
and esi, edx
mov edi, edx
or edi, eax
add edi, esi
not edx
or edx, eax
lea eax, [edx + edi]
add eax, 1
mov edx, eax
xor edx, 0x8d64c7bb
mov esi, eax
or esi, 0x8d64c7bb
add esi, edx
mov edx, eax
not edx
add edx, esi
and eax, 0x8d64c7bb
lea esi, [edx + eax]
add eax, edx
add eax, 0x729b3846
lea edx, [esi + esi]
add edx, 0xe536708c
sub edx, eax
lea esi, [ecx + edx]
lea eax, [ecx + edx]
add eax, 0xf3ed9c3a
mov ecx, eax
and ecx, 0xb309afc6
add ecx, esi
add ecx, 0xf3ed9c3a
mov edx, eax
not edx
and edx, 0x4cf65039
add edx, ecx
xor eax, 0xb309afc6
add eax, edx
imul eax, eax, 0x95df9e73
lea ecx, [eax + eax]
mov edx, eax
xor edx, 0x3934111f
add edx, edx
sub ecx, edx
mov edx, eax
xor edx, 0x46cbeee0
add edx, edx
sub ecx, edx
not eax
lea edx, [ecx + eax]
add eax, ecx
add eax, 0x3934111e
xor eax, 0xbc7f1737
add eax, edx
add eax, 0x3934111e
sub eax, edx
mov ecx, 0xc6cbeee1
sub ecx, edx
add ecx, ecx
or ecx, 0x8701d190
sub eax, ecx
imul eax, eax, 0x5b1936bb
lea ecx, [eax - 0x43bfa31a]
mov edx, ecx
and edx, 0x53cc3a18
add eax, edx
add eax, 0xbc405ce6
mov edx, ecx
not edx
and edx, 0xac33c5e7
add edx, eax
xor ecx, 0x53cc3a18
add ecx, edx
add ecx, 0xac33c5e9
mov dword [ebp - 0x10], ecx
mov ebx, ecx
xor ebx, 0xff
movzx esi, cl
xor ecx, 0xffffff00
and ecx, esi
mov edi, esi
or edi, ebx
add edi, ecx
lea ecx, [esi - 1]
mov edx, esi
not esi
or esi, ebx
lea eax, [edi + esi]
mov dword [ebp - 0x2c], eax
add edi, esi
add edi, 1
neg edx
mov esi, edx
and esi, edi
mov eax, edx
sub eax, esi
sub eax, esi
mov ebx, ecx
and ebx, edi
sub eax, ebx
mov ebx, dword [ebp - 0x2c]
add eax, ebx
add eax, 1
or edx, edi
add edx, eax
or ecx, edi
add ecx, edx
mov edi, dword [ebp - 0x10]
not edi
add ecx, esi
add ecx, 1
mov esi, edi
and esi, 0xffffff00
mov edx, esi
not edx
and edi, 0x9f32e200
xor esi, 0x60cd1dbb
add esi, edi
mov eax, edx
or eax, 0x9f32e244
sub esi, eax
not edi
lea eax, [esi + edi]
add eax, 0x9f32e245
and edx, 0x60cd1dbb
or edx, eax
mov ebx, edx
xor ebx, 0x60cd1dbb
or edx, 0x60cd1dbb
add edx, ebx
not eax
or eax, 0x60cd1dbb
lea esi, [edx + eax]
add edx, eax
add edx, 0x9f32e246
lea edi, [ecx + ecx*2]
add edi, ecx
not ecx
lea ecx, [ecx + ecx*2]
lea eax, [edi + ecx]
add eax, 3
add edi, ecx
lea ecx, [esi + edi*2]
add ecx, 0x9f32e24c
mov edi, eax
or edi, edx
sub ecx, edi
add ecx, esi
add ecx, 0x9f32e246
and eax, edx
not eax
add eax, ecx
not eax
mov ecx, eax
or ecx, 0x28e487b5
or eax, 0xd71b784a
add eax, ecx
add eax, 0xd71b784c
lea ecx, [eax + eax]
not eax
add eax, ecx
imul eax, eax, 0x8b7aa361
lea ecx, [eax - 0xbbe556b]
mov edx, ecx
and edx, 0xa03d64fe
add eax, edx
add eax, 0xf441aa95
not ecx
add eax, ecx
or ecx, 0xa03d64fe
sub eax, ecx
add eax, 0x728e40f8
mov ecx, eax
not ecx
and ecx, 0xa03d64fe
mov edx, eax
sub edx, ecx
mov ecx, eax
xor ecx, 0xa03d64fe
add ecx, edx
mov edx, eax
xor edx, 0x5fc29b01
add edx, ecx
or eax, 0x5fc29b01
sub edx, eax
imul eax, edx, 0xc36740a1
mov ecx, 0x3c0e03be
sub ecx, eax
mov edx, ecx
and edx, 0x949127c5
sub edx, eax
mov eax, dword [ebp + 8]
add eax, 8
or ecx, 0x6b6ed83a
sub edx, ecx
mov dword [ebp - 0x50], edx
sub eax, edx
mov dword [ebp - 0x54], eax
movzx ebx, byte [eax - 0x12ebb432]
mov ecx, ebx
not cl
mov byte [ebp - 0x2c], cl
mov edi, dword [ebp - 0x18]
mov eax, edi
mov edx, eax
not dl
mov byte [ebp - 0x20], dl
mov eax, ecx
or al, dl
not al
movzx ecx, al
lea eax, [ecx + ecx*2]
neg eax
lea ecx, [ecx + ecx*8]
neg ecx
not al
add al, al
add al, cl
mov ch, 0xfe
sub ch, al
mov byte [ebp - 0x4c], ch
lea edx, [ebx + ebx*2]
mov cl, dl
neg cl
mov byte [ebp - 0x10], cl
add al, 1
and al, cl
add al, al
mov cl, ch
sub cl, al
mov eax, edx
add al, dl
sub cl, al
add dl, 0xff
or dl, ch
sub cl, dl
mov byte [ebp - 0x22], cl
mov eax, ebx
mov esi, ebx
add al, bl
mov ah, byte [ebp - 0x2c]
sub ah, al
mov dl, byte [ebp - 0x20]
mov al, dl
add al, dl
mov ecx, edx
sub cl, al
mov byte [ebp - 0x28], cl
mov ebx, edi
mov ecx, ebx
sub cl, dl
mov al, bl
add al, bl
sub cl, al
add cl, dl
mov al, cl
add al, 0xff
mov edx, eax
and dl, 0xad
xor al, 0x52
add al, dl
sub al, cl
neg cl
add cl, cl
or cl, 0x5a
sub al, cl
mov edx, dword [ebp - 0x48]
mov edx, dword [edx]
mov dword [ebp - 0x3c], edx
mov edx, dword [ebp - 0x1c]
mov edi, dword [ebp + 8]
mov ecx, esi
mov byte [edi + edx - 0x3588ae2e], cl
mov edx, dword [ebp - 0x54]
mov byte [edx - 0x12ebb432], bl
mov edx, esi
add ah, dl
add ah, dl
mov edi, esi
and ah, bl
sub byte [ebp - 0x28], bl
add al, 0xad
mov ecx, ebx
mov byte [ebp - 0x54], bl
and bl, 0x52
mov ecx, eax
xor cl, al
not cl
and cl, bl
xor cl, al
mov edx, eax
xor dl, bl
sub dl, cl
or bl, al
add bl, dl
mov dh, bl
not dh
mov al, bl
and al, 0x52
xor bl, 0x52
add al, bl
and dh, 0xad
add dh, al
add dh, bl
mov al, byte [ebp - 0x10]
and al, byte [ebp - 0x4c]
mov byte [ebp - 0x10], al
add dh, 1
mov ch, byte [ebp - 0x2c]
mov cl, ch
and cl, dh
mov ebx, esi
mov al, bl
xor al, dh
add al, cl
mov cl, bl
and cl, dh
mov dl, ch
or dl, dh
mov byte [ebp - 0x18], dl
or dh, bl
sub al, dh
add cl, cl
add cl, ch
sub al, ch
mov dl, byte [ebp - 0x10]
not dl
add dl, byte [ebp - 0x22]
mov ch, dl
mov edi, 0xed144bce
sub edi, dword [ebp - 0x50]
mov dword [ebp - 0x10], edi
mov dl, byte [ebp - 0x54]
sub dl, ch
mov ch, bl
mov bl, byte [ebp - 0x20]
and ch, bl
mov dh, ch
not dh
and dh, ah
add dh, dh
mov bh, ah
sub bh, dh
mov dh, ah
or dh, ch
add dh, bh
xor ah, ch
add ah, dh
sub ah, ch
mov ch, ah
not ch
mov dh, ch
add dh, ch
mov bh, ch
and bh, 0x80
add bh, dh
and ah, 0x7f
add ah, bh
or ch, 0x7f
sub ah, ch
mov ch, ah
add ch, ah
mov dh, ah
sub dh, ch
add dh, ah
add dh, ah
add dh, dh
add dl, 0x16
mov ah, dl
add ah, dh
mov ch, dl
xor ch, dh
sub ah, ch
mov ch, dl
or ch, dh
add ch, ah
and dl, dh
sub ch, dl
mov ah, ch
and ah, 0x16
mov dh, ch
add dh, ch
sub dh, ah
not ch
or ch, 0x16
add ch, dh
mov dl, byte [ebp - 0x28]
add dl, bl
sub ch, dl
sub cl, byte [ebp - 0x18]
mov edx, eax
add dl, 0xff
mov ah, cl
not ah
and ah, dl
add ah, ah
mov dh, cl
or dh, dl
sub dh, ah
neg al
add al, al
sub dh, al
and dl, cl
not dl
add dl, dl
add dl, dh
sub ch, dl
add ch, 0xa7
mov al, ch
or al, 0xbb
add al, ch
not ch
or ch, 0xbb
add ch, al
movzx eax, ch
imul ecx, eax, 0xffffffdb
add cl, 0xe9
mov eax, ecx
not al
mov byte [ebp - 0x2c], al
and al, 0xd6
add al, cl
mov byte [ebp - 0x20], al
mov edx, dword [ebp - 0x3c]
lea ecx, [edx + 0x2f543708]
mov esi, ecx
not esi
and esi, 0x2f543707
lea edi, [esi + edx*2]
add edi, 0x5ea86e10
or ecx, 0x2f543707
sub edi, ecx
mov esi, edx
not esi
mov dword [ebp - 0x18], esi
mov ebx, edx
and ebx, 0xfffffffe
and esi, 1
lea eax, [esi + ebx]
add eax, eax
sub eax, esi
sub eax, ebx
lea ecx, [eax + eax]
sub ecx, eax
lea eax, [edi - 0x2f543708]
add edi, edi
add edi, 0xa15791f0
sub edi, eax
not eax
lea eax, [edi + eax*2]
lea edi, [ecx + eax]
add edi, 1
add ecx, eax
lea eax, [ecx + ecx]
add eax, 2
sub edi, eax
mov dword [ebp - 0x28], edi
mov edi, edx
mov ebx, edx
xor edi, 1
add esi, esi
sub edi, esi
mov cl, byte [ebp - 0x2c]
mov eax, ecx
and al, 0x29
add al, byte [ebp - 0x20]
sub al, cl
add al, 0xee
mov ecx, eax
not cl
and cl, 0xd6
add cl, al
and al, 0xd6
add al, cl
movzx eax, al
imul eax, eax, 0x53
add al, 0x74
movzx eax, al
mov ecx, dword [ebp + 8]
mov al, byte [ecx + eax + 8]
mov ecx, eax
not cl
mov edx, dword [ebp + 0x10]
mov ah, byte [edx + ebx]
mov ch, cl
and ch, ah
mov edx, ecx
xor dl, ah
sub ch, dl
mov dh, cl
or dh, ah
add ch, dh
not dh
add dh, ch
add dh, dl
not ah
mov dl, al
and dl, ah
sub dl, al
mov ch, al
or ch, ah
add ch, dl
xor al, ah
not al
add al, ch
or ah, cl
sub al, ah
add dh, 1
mov ecx, eax
not cl
and cl, dh
add cl, al
or al, dh
add cl, al
not al
add al, cl
add al, 0x32
mov ecx, eax
and cl, 0x43
add cl, cl
add cl, al
mov edx, eax
not dl
and dl, 0x43
add dl, cl
mov ecx, eax
or cl, 0x43
sub dl, cl
xor al, 0x43
add al, dl
add al, 0x7a
mov ecx, eax
add cl, al
mov edx, eax
or al, 0xcf
sub cl, al
not dl
or dl, 0x30
add dl, cl
add dl, 0xe2
mov eax, dword [ebp + 0x14]
mov byte [eax + ebx], dl
mov eax, ebx
or ebx, 0xfffffffe
sub edi, ebx
and eax, 1
sub edi, eax
mov ecx, eax
xor ecx, edi
mov edx, eax
sub edx, ecx
or edi, eax
add edi, edx
add edi, ecx
not eax
add eax, edi
add eax, dword [ebp - 0x28]
mov esi, dword [ebp - 0x18]
add esi, 0x18a6f480
or esi, 0xfffffffe
mov ecx, esi
not ecx
and esi, 0x14948c9
lea edx, [ecx + esi*2]
lea ecx, [ecx + esi*2]
add ecx, 0x7eb6b737
lea esi, [edx + edx]
add esi, 0xfd6d6e6e
mov edi, ecx
sub edi, esi
add edx, edi
add edx, 0x7eb6b737
add edx, ecx
mov ecx, eax
not ecx
xor edx, 0x7eb6b736
mov esi, edx
neg esi
mov edi, ecx
and edi, esi
add ecx, ecx
sub ecx, edi
sub ecx, edx
or esi, eax
add esi, ecx
mov eax, esi
and eax, 0xfc60147e
sub eax, esi
not esi
and esi, 0xfc60147e
add eax, esi
add eax, 0x73fd704
mov ecx, eax
and ecx, 0x39feb81
mov edx, eax
xor edx, 0xfc60147e
add edx, ecx
mov ecx, eax
and ecx, 0xfc60147e
xor eax, 0x39feb81
add eax, edx
lea edx, [eax + ecx]
add eax, ecx
add eax, 0x22763e8e
lea ecx, [edx + edx]
add ecx, 0x44ec7d1c
mov edx, eax
xor edx, 0x3d14dad9
add edx, edx
sub ecx, edx
mov edx, eax
xor edx, 0x42eb2526
add edx, edx
sub ecx, edx
not eax
lea edx, [ecx + eax]
add eax, ecx
add eax, 0xbd14dad8
xor eax, 0x1cd4fb17
add eax, edx
add eax, 0xbd14dad8
mov ecx, 0x42eb2527
sub ecx, edx
sub eax, edx
add ecx, ecx
or ecx, 0xc65609d0
sub eax, ecx
add eax, 0x42eb2527
cmp eax, dword [ebp + 0xc]
mov edx, 0x86f2db1
mov ecx, 0xb165f1f4
cmove edx, ecx
mov dword [ebp - 0x18], edx
mov esi, dword [0x1006e7ec]
mov edi, esi
not edi
mov ebx, dword [0x1006e7f0]
mov ecx, edi
and ecx, ebx
or esi, ebx
sub ecx, esi
sub ecx, edi
mov esi, dword [0x1006e7f4]
mov edi, esi
not edi
mov ebx, dword [0x1006e7f8]
and edi, ebx
and esi, ebx
not ebx
add ebx, ebx
lea edi, [ebx + edi*2]
not esi
add esi, esi
sub esi, edi
add ecx, 0x812cc95f
add esi, 0xa
cmp dword [0x1007206c], esi
setl bl
mov esi, dword [0x10072070]
lea edx, [esi - 1]
imul edx, esi
test dl, 1
sete dl
or dl, bl
mov edx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x18]
mov dword [edx], esi
mov edx, dword [ebp - 0x48]
mov dword [edx], eax
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x10]
mov dword [eax], edx
mov eax, dword [ebp - 0x40]
mov dword [eax], edx
mov eax, dword [ebp - 0x1c]
lea eax, [eax - 0x3588ae36]
mov edx, dword [ebp - 0x38]
mov dword [edx], eax
mov edx, dword [ebp - 0x58]
mov dword [edx], eax
mov eax, dword [ebp - 0x14]
mov dword [eax], ecx
jne 0x100528d0
mov eax, dword [ebp - 0x38]
mov eax, dword [eax]
mov ecx, eax
not ecx
mov edx, eax
mov dword [ebp - 0x10], eax
and edx, 0xfffffffe
add edx, ecx
mov esi, edx
not esi
mov edi, esi
sub edi, edx
sub edi, edx
add edi, edx
add edx, edi
sub edi, esi
mov esi, edx
and esi, 0x4e520f2f
lea esi, [esi + esi*2]
mov ebx, edx
sub ebx, esi
mov esi, edx
xor esi, 0x31adf0d0
lea esi, [ebx + esi*2]
add esi, edi
not edx
or edx, 0x4e520f2f
sub esi, edx
mov edi, ecx
or edi, 1
add edi, edi
add edi, eax
and ecx, 1
lea edx, [ecx + edi]
add edx, 1
add edi, ecx
not edi
lea ebx, [edi + edi]
sub edi, ebx
sub edi, edx
sub edi, edx
mov edx, edi
neg edx
lea eax, [esi - 0x635be1a2]
mov ebx, eax
and ebx, edx
add esi, ebx
add esi, 0x9ca41e5e
add esi, edi
mov edi, eax
or edi, edx
not edi
add edi, esi
xor edx, eax
add edx, edi
mov eax, edx
not eax
mov ebx, dword [ebp - 0x10]
mov esi, ebx
neg esi
xor esi, eax
lea edi, [eax + eax]
sub edi, ebx
sub edi, esi
sub edi, esi
not esi
add esi, esi
sub edi, esi
mov esi, ebx
and esi, 1
add edi, edx
mov eax, ecx
sub eax, edi
neg edi
add ecx, edi
add ecx, 0xb947c1d6
mov edx, ecx
and edx, 0xb947c1d3
add eax, edx
add eax, 0xb947c1d6
not ecx
or ecx, 0x46b83e2c
lea edx, [eax + ecx]
mov dword [ebp - 0x1c], edx
lea edx, [ecx + eax]
add edx, 0x46b83e2d
mov edi, ebx
xor edi, 1
mov ebx, esi
and ebx, edi
mov ecx, esi
not ecx
mov eax, ecx
and eax, edi
lea eax, [eax + ebx*2]
or esi, edi
add esi, esi
sub esi, eax
or ecx, edi
add ecx, esi
add ecx, ebx
mov eax, edx
and eax, 0xdd3be3cf
mov esi, dword [ebp - 0x1c]
add eax, esi
add eax, 0x46b83e2d
not edx
add eax, edx
or edx, 0xdd3be3cf
sub eax, edx
add eax, 0x22c41c31
mov edx, eax
sub edx, ecx
not ecx
mov esi, eax
xor esi, ecx
sub edx, esi
or ecx, eax
add edx, ecx
not ecx
add ecx, edx
add ecx, esi
imul eax, ecx, 0x914752b9
add eax, 0x7ca8ee97
not eax
imul eax, eax, 0x6146ec77
lea ecx, [eax + 0x2f462717]
mov edx, ecx
or edx, 0x3200c560
add eax, edx
add eax, 0x2f462717
not ecx
or ecx, 0x3200c560
lea esi, [eax + ecx]
add eax, ecx
add eax, 1
mov edx, eax
not edx
lea edi, [edx + edx]
mov dword [ebp - 0x10], edi
or edi, 0xfffffe00
sub edi, edx
mov ebx, edx
or ebx, 0xff
add ebx, edi
add ebx, 1
not ebx
mov edi, ebx
and edi, 0xe3e048ae
add edi, ebx
or ebx, 0x1c1fb751
sub edi, ebx
mov ecx, 0xe3e048af
sub ecx, edi
mov ebx, ecx
and ebx, esi
sub edi, ebx
lea edi, [edi + esi*2]
add edi, 2
not esi
or esi, ecx
add esi, edi
add esi, 0x1c1fb751
and edx, 0x5112f82d
mov ecx, eax
xor ecx, 0x2eed07d2
lea ecx, [edx + ecx*2]
mov edi, dword [ebp - 0x10]
or edi, 0xa225f05a
sub edi, ecx
and eax, 0xaeed07d2
mov ecx, edi
or ecx, eax
not ecx
add ecx, ecx
mov edx, edi
xor edx, eax
not edx
sub edx, ecx
mov ecx, dword [ebp - 0x44]
mov ebx, dword [ecx]
and eax, edi
not eax
add eax, edx
xor eax, 0xaeed07d2
mov ecx, esi
and ecx, 0xa10ea891
or esi, 0xa10ea891
add esi, ecx
add esi, eax
mov eax, esi
and eax, 0xa10ea891
not esi
or esi, 0xa10ea891
sub eax, esi
add eax, 0x24e83e9
mov ecx, eax
not ecx
mov edx, ecx
and edx, 1
add edx, edx
mov esi, eax
sub esi, edx
xor eax, 1
add eax, esi
lea edx, [eax + ecx]
add eax, ecx
add eax, 3
mov ecx, eax
xor ecx, 0x5ca2d385
add ecx, edx
add ecx, 3
mov edx, eax
or edx, 0x5ca2d385
sub ecx, edx
or eax, 0xa35d2c7a
add eax, ecx
imul ecx, eax, 0x473c44c3
add ecx, 0xd4012961
mov eax, ecx
not eax
mov edx, eax
and edx, 0x5deea8e6
add edx, edx
mov esi, ecx
sub esi, edx
or ecx, 0x22115719
sub esi, ecx
or eax, 0x22115719
add eax, esi
imul ecx, eax, 0x2dd8beb
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp + 8]
movzx edi, byte [eax + ecx - 0x15a812d6]
mov dword [ebp - 0x1c], edi
mov ecx, ebx
mov eax, ebx
neg eax
mov edx, edi
neg edx
lea esi, [edi - 1]
or esi, edx
and esi, eax
sub esi, ebx
lea ecx, [ebx - 1]
mov dword [ebp - 0x20], ebx
and ecx, edx
add ecx, esi
or edx, eax
sub ecx, edi
sub ecx, edx
mov esi, ebx
not esi
mov edx, esi
and edx, edi
mov dword [ebp - 0x28], edx
lea eax, [esi + esi]
add edx, edx
sub eax, edx
mov edx, esi
mov ebx, esi
mov dword [ebp - 0x18], esi
xor edx, edi
not edx
lea eax, [eax + edx*2]
mov edx, edi
mov esi, edi
not esi
sub eax, esi
mov edx, ebx
or edx, esi
mov ebx, esi
sub eax, edx
mov edi, dword [ebp - 0x20]
mov esi, edi
mov edx, ebx
mov dword [ebp - 0x10], ebx
and esi, ebx
mov ebx, edi
xor ebx, edx
mov edx, esi
sub edx, ebx
mov ebx, edi
or ebx, dword [ebp - 0x10]
add edx, ebx
sub edx, esi
mov esi, edx
not esi
and esi, eax
mov edi, eax
or edi, edx
add edi, esi
not eax
or eax, edx
add eax, edi
mov edx, ecx
neg edx
add ecx, 0xffffffff
mov esi, ecx
and esi, 0x6b59ce2c
add esi, esi
mov edi, edx
sub edi, esi
or edx, 0x14a631d3
sub edi, edx
or ecx, 0x14a631d3
add ecx, edi
add eax, eax
xor eax, 0xfffffffe
mov edx, ecx
not edx
and edx, eax
add edx, ecx
and ecx, eax
lea eax, [edx + ecx]
mov dword [ebp - 0x3c], eax
add edx, ecx
add edx, 0xeb59ce2c
mov esi, dword [ebp - 0x18]
and esi, dword [ebp - 0x10]
mov edi, esi
not edi
add edi, edi
mov ecx, edi
sub ecx, esi
sub ecx, esi
sub ecx, edi
add ecx, esi
mov esi, edx
not esi
mov eax, esi
and eax, 0xc1263c6
mov edi, dword [ebp - 0x3c]
add eax, edi
add eax, 0xeb59ce2c
or edx, 0xc1263c6
sub eax, edx
sub eax, esi
mov edx, 0xf3ed9c3a
sub edx, eax
and edx, ecx
add edx, edx
neg edx
add edx, eax
add edx, 0xc1263c5
add eax, 0xc1263c5
add edx, ecx
and eax, ecx
neg ecx
add ecx, ecx
sub edx, ecx
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x3c], ecx
mov edi, dword [ebp - 0x18]
or ecx, edi
mov esi, dword [ebp - 0x10]
and ecx, esi
not ebx
add ebx, ecx
sub ebx, edi
mov ecx, dword [ebp - 0x28]
add esi, ecx
mov dword [ebp - 0x10], esi
mov esi, dword [ebp - 0x1c]
sub ecx, esi
or edi, esi
add edi, ecx
mov ecx, dword [ebp - 0x3c]
or ecx, esi
add ecx, edi
add ecx, 1
or ebx, ecx
mov ecx, ebx
not ecx
lea ecx, [ebx + ecx*2]
add ecx, 1
and ecx, 0xa3afc722
and ebx, 0x5c5038dd
or ebx, ecx
not eax
lea ecx, [edx + eax*2]
lea eax, [edx + eax*2]
add eax, 0xf3ed9c3b
xor ebx, 0x5c5038dd
mov edx, 0xc1263c4
sub edx, ecx
mov esi, eax
and esi, ebx
lea esi, [esi + esi*2]
add esi, ecx
mov ecx, ebx
sub ecx, esi
xor edx, ebx
not edx
lea edx, [edx + edx*2]
sub ecx, edx
or ebx, eax
lea eax, [ebx + ebx*2]
add eax, ecx
mov esi, dword [ebp - 0x10]
mov ecx, esi
not ecx
mov edx, ecx
and edx, 0x8d64c7bb
or ecx, 0x8d64c7bb
add ecx, edx
mov edx, esi
or esi, 0x8d64c7bb
add ecx, esi
add ecx, 0x729b3846
and edx, 0x729b3844
or ecx, edx
mov edx, ecx
xor edx, 0x8d64c7bb
xor ecx, 0x729b3844
add edx, edx
add edx, ecx
sub edx, eax
add edx, 0xf3ed9c3d
mov eax, edx
or eax, 0xb309afc6
or edx, 0x4cf65039
add eax, edx
add eax, 0x4cf6503b
lea ecx, [eax + eax]
not eax
add eax, ecx
imul eax, eax, 0x95df9e73
lea ecx, [eax - 0x3cafd60e]
mov edx, ecx
and edx, 0x3934111f
add eax, edx
add eax, 0xc35029f2
not ecx
add eax, ecx
or ecx, 0x3934111f
sub eax, ecx
add eax, 0x7cb4f9e7
mov ecx, eax
not ecx
and ecx, 0x3934111f
mov edx, eax
sub edx, ecx
mov ecx, eax
xor ecx, 0x3934111f
add ecx, edx
mov edx, eax
xor edx, 0xc6cbeee0
add edx, ecx
or eax, 0xc6cbeee0
sub edx, eax
imul eax, edx, 0x5b1936bb
lea ecx, [eax - 0x75ac0ba5]
mov edx, ecx
and edx, 0x53cc3a18
add eax, edx
add eax, 0x8a53f45b
not ecx
add eax, ecx
or ecx, 0x53cc3a18
sub eax, ecx
add eax, 0xac33c5e8
mov edx, eax
not edx
movzx ecx, dl
add ecx, ecx
mov esi, eax
xor esi, 0xff
mov dword [ebp - 0x10], esi
add esi, esi
sub esi, ecx
add esi, edx
add esi, 0x100
and edx, 0xffffff00
mov ecx, eax
and ecx, 0xffffff00
sub edx, ecx
mov edi, eax
xor edi, 0xffffff00
movzx ebx, al
sub edi, ebx
sub edi, ebx
mov ecx, eax
or ecx, 0xff
add ecx, edi
mov edi, ebx
xor edi, esi
not esi
sub edi, esi
or esi, ebx
add esi, edi
not ecx
lea edi, [ecx + ecx]
sub ecx, edi
add ecx, esi
add edx, dword [ebp - 0x10]
or eax, 0xffffff00
lea esi, [edx + eax]
add eax, edx
add eax, 1
lea esi, [esi + esi + 2]
mov edi, eax
not edi
mov edx, edi
sub edx, esi
add edx, eax
sub edx, edi
mov ebx, edx
neg ebx
mov edi, ebx
and edi, 0x9f32e244
lea eax, [edx - 1]
mov esi, eax
or esi, ebx
and ebx, 0x60cd1dbb
add ebx, ebx
sub edi, ebx
sub edi, edx
mov edx, eax
xor edx, 0x60cd1dbb
add edx, edi
add edx, 0x60cd1dbc
and esi, 0x60cd1dbb
or eax, 0x9f32e244
add esi, eax
add esi, 1
mov eax, edx
not eax
mov edi, eax
and edi, esi
or edx, esi
add edi, edx
not edx
add edx, edi
sub edx, eax
mov esi, edx
not esi
and esi, 0x60cd1dbb
add esi, edx
mov eax, edx
xor eax, 0x60cd1dbb
add eax, esi
or edx, 0x60cd1dbb
sub eax, edx
lea edx, [ecx + ecx]
not edx
add edx, ecx
not edx
mov ecx, edx
and ecx, eax
lea ecx, [ecx + ecx*2]
lea esi, [edx + edx*2]
sub esi, ecx
add esi, eax
mov ecx, edx
xor ecx, eax
not ecx
lea ecx, [esi + ecx*2]
add ecx, eax
not eax
or eax, edx
sub ecx, eax
mov eax, ecx
not eax
mov edx, eax
and edx, 0x28e487b5
add eax, eax
sub eax, edx
or ecx, 0x28e487b5
add ecx, eax
add ecx, 0xd71b784b
mov eax, ecx
not eax
mov edx, eax
and edx, 0x28e487b5
add edx, edx
mov esi, ecx
sub esi, edx
or ecx, 0xd71b784a
sub esi, ecx
or eax, 0xd71b784a
add eax, esi
imul eax, eax, 0x8b7aa361
add eax, 0x88c0ba28
mov ecx, eax
and ecx, 0x2daf2405
mov edx, eax
xor edx, 0xd250dbfa
add edx, ecx
mov ecx, eax
and ecx, 0xd250dbfa
xor eax, 0x2daf2405
add eax, edx
lea edx, [eax + ecx]
add eax, ecx
add eax, 0xd250dbfb
mov ecx, eax
and ecx, 0xa03d64fe
add ecx, edx
add ecx, 0xd250dbfb
mov edx, eax
not edx
and edx, 0x5fc29b01
add edx, ecx
xor eax, 0xa03d64fe
add eax, edx
imul eax, eax, 0xc36740a1
mov ecx, 0xe4159b57
sub ecx, eax
lea eax, [ecx + ecx*2]
not ecx
lea edi, [eax + ecx*2]
mov ebx, dword [ebp - 0x1c]
mov ecx, ebx
not cl
movzx eax, cl
mov byte [ebp - 0x20], cl
lea edx, [eax + eax*2]
neg edx
add dl, cl
lea eax, [ebx + ebx*2]
neg eax
add al, dl
mov esi, 0xfffffffe
sub esi, edi
mov dword [ebp - 0x3c], esi
mov edx, dword [ebp + 8]
movzx edx, byte [edx + esi + 8]
mov ecx, edx
not cl
mov byte [ebp - 0x50], cl
add al, 0xfd
mov ch, dl
and ch, al
add ch, ch
add ch, cl
or al, cl
sub ch, al
mov byte [ebp - 0x22], ch
mov eax, edx
mov esi, edx
mov dword [ebp - 0x10], edx
and al, bl
mov byte [ebp - 0x54], al
movzx eax, al
lea eax, [eax + eax*2]
neg eax
add al, 0x73
mov edx, eax
or dl, 0x8d
add dl, al
not al
or al, 0x8d
add al, dl
lea edx, [esi + esi*2]
mov ebx, edx
add dl, 0xff
and dl, al
not al
neg bl
and bl, al
sub dl, bl
add dl, 0x76
mov eax, edx
mov cl, byte [ebp - 0x20]
and al, cl
mov byte [ebp - 0x18], al
mov ebx, dword [ebp - 0x1c]
mov eax, ebx
add al, bl
add al, cl
add al, cl
mov byte [ebp - 0x28], al
mov eax, ecx
mov ah, bl
mov ecx, ebx
and ah, 0x52
mov byte [ebp - 0x21], al
and al, 0x52
sub ah, al
mov bh, cl
xor bh, 0x52
add bh, ah
mov eax, ecx
xor cl, 0xad
add cl, bh
neg edi
mov dword [ebp - 0x4c], edi
mov esi, dword [ebp - 0x48]
mov esi, dword [esi]
mov dword [ebp - 0x20], esi
mov esi, dword [ebp - 0x2c]
mov edi, dword [ebp + 8]
mov ebx, dword [ebp - 0x10]
mov byte [edi + esi - 0x15a812d6], bl
mov esi, dword [ebp - 0x4c]
mov byte [edi + esi + 6], al
mov esi, edi
mov ch, byte [ebp - 0x18]
add ch, dl
add ch, al
mov byte [ebp - 0x18], ch
not dl
or dl, al
mov ch, byte [ebp - 0x50]
mov bl, ch
and ch, al
mov byte [ebp - 0x50], ch
or bl, al
mov byte [ebp - 0x4c], bl
mov ebx, dword [ebp - 0x10]
or bl, al
sub byte [ebp - 0x28], al
or al, 0xad
sub cl, al
mov al, byte [ebp - 0x21]
and al, 0xad
or cl, al
mov bh, cl
and bh, 0x52
mov eax, ecx
xor al, 0x52
add al, bh
not cl
add al, cl
or cl, 0x52
sub al, cl
mov ecx, dword [ebp - 0x10]
and cl, al
mov byte [ebp - 0x1c], cl
mov ecx, dword [ebp - 0x10]
xor cl, al
add cl, byte [ebp - 0x10]
mov byte [ebp - 0x21], cl
mov ecx, dword [ebp - 0x10]
or cl, al
not al
or al, byte [ebp - 0x10]
add dl, byte [ebp - 0x18]
mov ah, byte [ebp - 0x54]
mov bh, byte [ebp - 0x50]
or ah, bh
mov ch, byte [ebp - 0x4c]
sub ch, ah
add bl, ch
add bl, bh
add bl, 1
mov bh, bl
mov ch, byte [ebp - 0x22]
xor bh, ch
or ch, bl
mov ah, ch
add ah, ch
sub ah, bh
not ch
add ch, ah
add ch, bh
add ch, 1
not ch
add ch, ch
add dl, 0xa2
mov ah, dl
or ah, ch
add ah, dl
not dl
or dl, ch
add dl, ah
mov ch, byte [ebp - 0x28]
add ch, 1
mov ah, ch
add ah, ch
not ch
add ch, ah
sub dl, ch
not cl
add cl, byte [ebp - 0x21]
sub cl, al
mov ah, byte [ebp - 0x1c]
mov al, ah
or al, cl
not ah
or ah, cl
add cl, al
not al
add al, cl
sub al, ah
add dl, 0xa5
mov ecx, edx
sub cl, al
neg al
mov ah, dl
or ah, al
sub cl, ah
not ah
add ah, ah
sub cl, ah
mov ah, dl
xor ah, al
not ah
add ah, cl
and al, dl
not al
add al, ah
movzx eax, al
imul eax, eax, 0xffffffdb
add al, 7
mov ecx, eax
and cl, 0xd6
or al, 0xd6
add al, cl
add al, 0x18
mov ecx, eax
and cl, 0xd6
not al
or al, 0xd6
sub cl, al
movzx eax, cl
imul ecx, eax, 0x53
mov dl, 0xb5
sub dl, cl
add cl, 0x4a
mov eax, ecx
and al, 0x48
add al, al
mov ah, dl
sub ah, al
xor dl, 0xc8
add dl, ah
mov eax, dword [ebp + 0x10]
mov edi, dword [ebp - 0x20]
mov al, byte [eax + edi]
add dl, cl
mov cl, 0x6f
sub cl, dl
movzx ecx, cl
mov cl, byte [esi + ecx + 8]
mov edx, eax
not dl
mov ah, dl
or ah, al
and ah, cl
mov ch, cl
add ch, cl
sub ah, ch
add ah, dl
mov edx, ecx
not dl
or cl, al
add cl, ah
sub cl, dl
and dl, al
or cl, dl
movzx eax, cl
imul eax, eax, 0x2f
mov ecx, eax
not cl
mov edx, ecx
and dl, 0x4f
add dl, al
mov eax, ecx
and al, 0xb0
add al, dl
sub al, cl
add al, 0x4f
mov ecx, eax
add cl, al
sub cl, al
movzx eax, cl
imul ecx, eax, 0xffffffcf
add cl, 0xd
mov eax, ecx
and al, 0xcf
movzx eax, al
lea edx, [eax + eax*2]
neg edx
movzx eax, cl
lea eax, [eax + eax*2]
add al, dl
mov ebx, ecx
xor bl, 0x30
add bl, bl
add bl, al
or cl, 0x30
sub bl, cl
mov edx, edi
mov eax, edi
xor eax, 0x2f543708
add eax, eax
mov ecx, edi
sub ecx, eax
mov eax, edi
xor eax, 0x50abc8f7
add eax, eax
sub ecx, eax
lea eax, [ecx + 0x2f543706]
xor eax, 0x2f543707
lea esi, [ecx + eax]
add esi, 0x2f543706
sub esi, ecx
mov eax, 0xd0abc8f9
sub eax, ecx
add eax, eax
or eax, 0xa15791f0
sub esi, eax
mov dword [ebp - 0x18], esi
mov eax, edi
mov ecx, edi
not ecx
mov edx, ecx
mov edi, ecx
mov dword [ebp - 0x1c], ecx
and edx, 1
mov dword [ebp - 0x10], edx
mov ecx, eax
or ecx, 1
lea edx, [eax + edx*2]
sub edx, ecx
mov esi, eax
or esi, edi
and esi, 0xfffffffe
mov ecx, eax
or ecx, 0xfffffffe
sub esi, ecx
sub esi, edi
mov eax, edx
not eax
lea edi, [esi - 1]
and eax, edi
add eax, eax
mov ecx, edx
or ecx, edi
sub ecx, eax
neg esi
add esi, esi
sub ecx, esi
and edx, edi
not edx
lea eax, [ecx + edx*2]
mov esi, dword [ebp - 0x18]
lea ecx, [esi + 0x72035ae9]
mov edx, ecx
not edx
or edx, eax
sub edx, esi
or ecx, eax
add ecx, edx
mov edi, dword [ebp - 0x20]
mov esi, edi
xor esi, 1
add esi, dword [ebp - 0x10]
add bl, 0xe2
mov eax, dword [ebp + 0x14]
mov byte [eax + edi], bl
mov eax, dword [ebp - 0x1c]
lea edx, [eax + edi*2]
lea eax, [edi + edi]
sub eax, edi
and edi, 1
add esi, edi
add esi, 0xffffffff
mov ebx, edi
and ebx, esi
xor edi, esi
add edi, ebx
sub ecx, edi
mov esi, 0xfffffffe
sub esi, edx
mov edx, eax
and edx, 0xfffffffe
lea edx, [edx + edx*2]
mov edi, esi
or edi, 0xfffffffe
sub edi, edx
xor esi, 1
lea edx, [esi + esi*2]
sub edi, edx
or eax, 0xfffffffe
lea edx, [eax + eax*2]
add edx, edi
not edx
mov esi, edx
and esi, 0x7eb6b736
mov eax, esi
sub eax, edx
add eax, 0x814948c9
or eax, esi
mov esi, eax
xor esi, 0x7eb6b736
mov edx, eax
xor edx, 0x814948c9
add edx, esi
not eax
mov esi, eax
or esi, 0x7eb6b736
sub edx, esi
or eax, 0x814948c9
lea esi, [edx + eax]
add eax, edx
add eax, 0x7eb6b737
lea edx, [esi + esi]
add edx, 0xfd6d6e6e
sub eax, edx
add eax, ecx
add eax, 0x8dfca516
mov ecx, eax
not ecx
lea edx, [ecx + ecx]
or ecx, 0xfc60147e
sub edx, ecx
or eax, 0x39feb81
add eax, edx
imul eax, eax, 0x5168c693
lea ecx, [eax + 0xf06c580]
and ecx, 0x4565809b
add eax, ecx
add eax, 0xf06c580
not ecx
add ecx, eax
imul ecx, ecx, 0x78af479b
lea eax, [ecx - 0x4465933e]
mov edx, eax
xor edx, 0x1cd4fb17
add ecx, edx
add ecx, 0xbb9a6cc2
mov edx, eax
or edx, 0x1cd4fb17
sub ecx, edx
not eax
sub ecx, eax
or eax, 0x1cd4fb17
lea edx, [ecx + eax]
add ecx, eax
add ecx, 0xe32b04e8
mov eax, ecx
and eax, 0xbd14dad9
add eax, edx
add eax, 0xe32b04e8
not ecx
add eax, ecx
or ecx, 0xbd14dad9
sub eax, ecx
add eax, 0xd9e9d5f1
cmp eax, dword [ebp + 0xc]
mov ecx, 0x86f2db1
mov edx, 0xb165f1f4
cmove ecx, edx
mov edx, dword [ebp - 0x30]
mov dword [edx], ecx
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x15a812de]
mov edx, dword [ebp - 0x38]
mov dword [edx], ecx
mov edx, dword [ebp - 0x48]
mov dword [edx], eax
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 0x3c]
mov dword [eax], edx
mov eax, dword [ebp - 0x40]
mov dword [eax], edx
mov eax, dword [ebp - 0x58]
mov dword [eax], ecx
mov ecx, dword [0x1006e8bc]
mov edx, dword [0x1006e8c0]
mov eax, ecx
or eax, edx
not eax
add eax, ecx
not edx
or edx, ecx
sub eax, edx
add eax, 0x812cc960
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
jmp 0x10051060
mov edx, dword [0x1006e834]
mov esi, dword [0x1006e838]
mov eax, edx
and eax, esi
mov ecx, edx
not ecx
mov edi, ecx
and edi, esi
lea edi, [edi + eax*2]
or edx, esi
sub edx, edi
or ecx, esi
add ecx, edx
mov edi, dword [0x1006e83c]
mov edx, dword [0x1006e840]
mov esi, edi
not esi
mov ebx, esi
and ebx, edx
lea ebx, [ebx + ebx*2]
xor edi, edx
not edi
lea edi, [edi + edi*2]
add edi, ebx
or esi, edx
mov ebx, dword [0x100721a0]
lea edx, [esi + esi*2]
sub edx, edi
add edx, 0xa
cmp dword [0x1007219c], edx
lea edx, [ebx + ebx]
mov esi, ebx
not esi
lea esi, [esi + edx + 0x28c41000]
setl byte [ebp - 0x10]
imul esi, ebx
mov edi, dword [0x1006e844]
mov ebx, dword [0x1006e848]
mov edx, edi
xor edx, ebx
or edi, ebx
mov ebx, edi
sub ebx, edx
not edi
add edi, ebx
add edx, edi
add edx, 1
and esi, 1
cmp esi, edx
lea eax, [eax + ecx - 0x5a2c3c81]
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
sete al
or al, byte [ebp - 0x10]
cmp al, 1
jne 0x1005291d
nop dword [eax + eax]
mov eax, dword [0x10072178]
mov ecx, dword [0x1006e85c]
mov esi, dword [0x1006e860]
mov edx, ecx
xor edx, esi
not edx
add edx, esi
mov edi, ecx
not edi
or edi, esi
sub edx, edi
and ecx, esi
not ecx
add ecx, edx
add ecx, 0xb
cmp dword [0x10072174], ecx
setge cl
lea edx, [eax - 1]
imul edx, eax
test dl, 1
sete al
or cl, al
add cl, al
add cl, 1
test cl, 1
je 0x100528d0
jmp 0x10052950
mov ecx, dword [str.__nIQ]
mov edx, dword [0x1006e8c8]
mov eax, ecx
or eax, edx
not eax
add eax, edx
not ecx
or ecx, edx
sub eax, ecx
add eax, 0xa5d3c37e
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
jmp 0x10052820
mov ebx, dword [ebp - 0x14]
mov edx, dword [0x100720a0]
mov eax, dword [0x1006e644]
mov ecx, dword [0x1006e648]
mov esi, eax
not esi
and esi, ecx
sub esi, ecx
and eax, ecx
add eax, esi
add eax, 0xa
cmp dword [0x1007209c], eax
setl cl
lea eax, [edx + 1]
imul eax, edx
mov edx, dword [0x1006e64c]
mov esi, dword [0x1006e650]
mov edi, edx
and edi, esi
xor edx, esi
mov esi, edx
sub esi, edi
not edx
add edx, esi
add edx, edi
add edx, 1
and eax, 1
cmp eax, edx
sete al
mov edx, ecx
and dl, al
mov ah, cl
or ah, al
add dl, ah
not ah
add ah, dl
xor cl, al
not cl
add cl, ah
mov eax, dword [ebx]
test cl, 1
je 0x10052953
cmp eax, 0x1166621d
jle 0x10052a50
cmp eax, 0x5326e9d8
jg 0x10052ac0
cmp eax, 0x1166621e
je 0x10052bd0
cmp eax, 0x1b8c684d
je 0x10052c16
cmp eax, 0x461e2dee
jne 0x10050830
mov edx, dword [0x10071c7c]
cmp dword [0x10071c80], 0xa
setl al
lea ecx, [edx + edx]
mov esi, edx
not esi
add ecx, esi
add ecx, 0x8427fd30
imul ecx, edx
and ecx, 1
mov edx, dword [0x1006e744]
mov esi, dword [0x1006e748]
mov edi, esi
not edi
and edi, edx
add edi, esi
or edx, esi
sub edi, edx
cmp ecx, edi
sete cl
or cl, al
cmp cl, 1
mov ebx, dword [ebp - 0x34]
je 0x10050960
jmp 0x100509e2
cmp eax, 0xb88abca4
jg 0x10052b38
cmp eax, 0x812cc960
je 0x10052c67
cmp eax, 0xa5d3c37e
je 0x10052cad
cmp eax, 0xaa0084bc
jne 0x10050830
mov eax, dword [0x10071e88]
cmp dword [0x10071e84], 0xa
setl cl
lea edx, [eax + eax]
mov esi, eax
not esi
add edx, esi
add edx, 2
imul edx, eax
test dl, 1
sete al
or al, cl
cmp al, 1
mov ebx, dword [ebp - 0x34]
je 0x100508b0
jmp 0x10050941
cmp eax, 0x5326e9d9
je 0x10052d05
cmp eax, 0x7707d6c1
je 0x10052d77
cmp eax, 0x7b41579c
jne 0x10050830
cmp dword [0x10071de4], 0xa
mov edx, dword [0x10071de8]
setl al
lea ecx, [edx - 1]
imul ecx, edx
and ecx, 1
mov edx, dword [0x1006e71c]
mov esi, dword [0x1006e720]
mov edi, edx
or edi, esi
sub edi, edx
not esi
or esi, edx
lea edx, [edi + esi]
add edx, 1
cmp ecx, edx
sete cl
mov edx, eax
and dl, cl
or al, cl
add al, dl
not dl
add dl, al
test dl, 1
mov ebx, dword [ebp - 0x34]
je 0x10050be0
jmp 0x10050c68
cmp eax, 0xb88abca5
je 0x10052db0
cmp eax, 0xbafb13a
jne 0x10052df2
mov esi, dword [0x10071e60]
cmp dword [0x10071e5c], 0xa
setge ch
setl cl
mov edi, esi
and edi, 1
add edi, edi
mov edx, esi
sub edx, edi
mov edi, esi
not edi
mov ebx, edi
and ebx, 1
sub edx, ebx
sub edx, edi
add edx, 3
imul edx, esi
mov ebx, dword [0x1006e6cc]
mov esi, dword [0x1006e6d0]
mov eax, ebx
not eax
mov edi, eax
and edi, esi
lea edi, [edi + edi*2]
xor ebx, esi
not ebx
lea ebx, [ebx + ebx*2]
add ebx, edi
or eax, esi
lea eax, [eax + eax*2]
sub eax, ebx
mov ebx, dword [ebp - 0x34]
and edx, 1
cmp edx, eax
sete al
mov edx, ecx
and dl, al
or cl, al
add cl, dl
add cl, ch
or ch, al
add ch, cl
add ch, 1
test ch, 1
je 0x10050b20
jmp 0x10050b99
cmp dword [0x10071e74], 0xa
mov edx, dword [0x10071e78]
setl al
lea ecx, [edx - 1]
imul ecx, edx
and ecx, 1
mov edx, dword [0x1006e76c]
mov esi, dword [0x1006e770]
mov edi, esi
not edi
and edi, edx
or edx, esi
sub edx, edi
sub edx, esi
cmp ecx, edx
sete cl
or cl, al
cmp cl, 1
je 0x10050c90
jmp 0x10050d1c
cmp dword [0x10071cb0], 0xa
mov edx, dword [0x10071cac]
setl al
lea ecx, [edx + 1]
imul ecx, edx
mov edx, dword [0x1006e7e4]
mov edi, dword [0x1006e7e8]
mov esi, edx
xor esi, edi
not esi
add esi, edi
mov ebx, edx
not ebx
or ebx, edi
sub esi, ebx
and edx, edi
sub esi, edx
and ecx, 1
cmp ecx, esi
sete cl
or cl, al
add cl, 1
test cl, 1
je 0x10051060
jmp 0x10051c64
mov eax, dword [0x10071ee8]
mov ecx, dword [0x1006e824]
mov edx, dword [0x1006e828]
mov esi, edx
not esi
and esi, ecx
not ecx
or ecx, edx
add ecx, esi
add ecx, 0xb
cmp dword [0x10071ee4], ecx
setl cl
lea edx, [eax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
add al, 1
test al, 1
je 0x10052820
jmp 0x1005291d
mov edx, dword [0x10071e44]
cmp dword [0x10071e48], 0xa
setl al
lea ecx, [edx + edx]
mov esi, edx
not esi
add ecx, esi
add ecx, 0x2e793fb0
imul ecx, edx
and ecx, 1
mov edx, dword [0x1006e67c]
mov esi, dword [0x1006e680]
mov edi, edx
not edi
and edi, esi
or esi, edx
sub edi, esi
add edi, edx
cmp ecx, edi
sete cl
or cl, al
add cl, 1
test cl, 1
mov ebx, dword [ebp - 0x34]
je 0x10050a30
jmp 0x10050a81
mov eax, dword [0x1006e69c]
mov ecx, dword [0x1006e6a0]
mov edx, eax
not edx
mov esi, edx
and esi, ecx
or eax, ecx
not eax
add eax, esi
sub eax, edx
add eax, 0xa
cmp dword [0x10071d30], eax
mov edx, dword [0x10071d2c]
setl al
lea ecx, [edx + 1]
imul ecx, edx
and ecx, 1
mov edx, dword [0x1006e6a4]
mov esi, dword [0x1006e6a8]
mov edi, edx
not edi
and edi, esi
and edx, esi
not esi
add esi, edi
add edx, esi
add edx, 1
cmp ecx, edx
sete cl
mov edx, eax
and dl, cl
xor al, cl
add al, dl
add al, 1
test al, 1
mov ebx, dword [ebp - 0x34]
je 0x10050aa0
jmp 0x10050adf
mov edx, dword [0x10071cf8]
cmp dword [0x10071cf4], 0xa
setl al
lea ecx, [edx + 1]
imul ecx, edx
test cl, 1
sete dl
mov ah, al
or ah, dl
add ah, al
xor al, dl
not al
add al, ah
add al, cl
add al, 1
test al, 1
je 0x10050db0
jmp 0x10050f55
mov ecx, dword [0x10071ea4]
cmp dword [0x10071ea8], 0xa
setl al
mov edx, ecx
not edx
mov esi, edx
and esi, 1
add esi, esi
mov edi, ecx
sub edi, esi
sub edi, ecx
add edx, edi
add edx, 0x4f35e0e
imul edx, ecx
test dl, 1
sete cl
or cl, al
cmp cl, 1
je 0x10050d30
jmp 0x10050d96
cmp eax, 0xf87e76bb
jne 0x10050830
mov edx, dword [0x10071f10]
mov eax, dword [0x1006e804]
mov ecx, dword [0x1006e808]
mov esi, eax
or esi, ecx
sub esi, ecx
not eax
or eax, ecx
add eax, esi
add eax, 0xb
cmp dword [0x10071f0c], eax
setl al
lea ecx, [edx + 1]
imul ecx, edx
mov edx, dword [0x1006e80c]
mov esi, dword [0x1006e810]
mov edi, edx
not edi
mov ebx, edi
and ebx, esi
or edx, esi
not edx
add edx, ebx
sub edx, edi
and ecx, 1
cmp ecx, edx
sete cl
or cl, al
cmp cl, 1
mov edi, dword [ebp - 0x6c]
mov ebx, dword [ebp - 0x40]
mov esi, dword [ebp - 0x58]
jne 0x10052eb8
mov eax, dword [esi]
mov ecx, dword [ebx]
mov edx, dword [edi]
mov dword [edx], eax
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov dword [eax], ecx
mov eax, dword [0x1006e814]
mov ecx, dword [0x1006e818]
mov edx, eax
not edx
and edx, ecx
and eax, ecx
not ecx
add ecx, edx
mov edx, dword [0x10072200]
add eax, ecx
add eax, 0xb
cmp dword [0x100721fc], eax
setl al
mov ebx, edx
not ebx
add ebx, edx
add ebx, edx
imul ebx, edx
test bl, 1
mov ebx, dword [ebp - 0x40]
sete cl
or cl, al
add cl, 1
test cl, 1
je 0x10052ec9
mov eax, dword [esi]
mov ecx, dword [ebx]
mov edx, dword [edi]
mov dword [edx], eax
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov dword [eax], ecx
jmp 0x10052e60
xor eax, eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret