Function at 0x10013c00
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x28
cmp dword [0x10070b08], 0xa
mov edx, dword [0x10070b04]
setl al
lea ecx, [edx - 1]
imul ecx, edx
mov edx, dword [0x10067030]
mov esi, dword [0x10067034]
mov edi, edx
not edi
and edi, esi
not esi
or esi, edx
lea edx, [edi + esi]
add edx, 1
and ecx, 1
cmp ecx, edx
mov esi, dword [ebp + 0xc]
sete cl
mov edx, eax
and dl, cl
xor al, cl
add al, dl
test al, 1
je 0x10013db4
push eax
mov dword [ebp - 0x18], esp
push eax
mov eax, esp
cmp dword [ebp + 8], esi
mov dword [ebp - 0x2c], eax
setg byte [eax]
push eax
mov dword [ebp - 0x1c], esp
mov esi, dword [0x10067008]
mov ecx, dword [0x1006700c]
mov eax, ecx
not eax
mov edx, esi
and edx, ecx
mov edi, esi
not edi
mov ebx, edi
and ebx, eax
or ebx, edx
lea edx, [ebx + esi]
or ebx, esi
sub edx, ebx
mov dword [ebp - 0x14], edx
mov ebx, esi
xor ebx, eax
lea ebx, [esi + ebx*2]
mov edx, esi
or edx, eax
sub ebx, edx
or edi, eax
add edi, ebx
and esi, eax
lea edx, [esi + edi]
add edx, 1
mov esi, edx
not esi
mov ebx, esi
sub ebx, esi
sub ebx, esi
sub ebx, edx
add ebx, esi
mov esi, dword [ebp - 0x14]
lea edx, [esi + ebx]
add esi, ebx
add esi, 0xfffffffe
mov edi, 1
sub edi, edx
and esi, 0x45f96dc0
lea edx, [esi + edi*2]
or edi, 0x45f96dc0
sub edx, edi
add edx, 0xba06923f
mov esi, edx
and esi, ecx
lea edi, [edx + edx*2]
sub edi, esi
add edi, ecx
or ecx, edx
not ecx
lea ecx, [edi + ecx*2]
mov esi, dword [ebp - 0x1c]
sub ecx, eax
or edx, eax
sub ecx, edx
imul eax, ecx, 0xa49ce051
add eax, 0x22ea68c9
mov ecx, eax
or ecx, 0xa273512e
mov edx, eax
sub edx, ecx
not ecx
add ecx, ecx
sub edx, ecx
mov ecx, eax
xor eax, 0x5d8caed1
add eax, edx
not ecx
or ecx, 0x5d8caed1
add ecx, eax
imul eax, ecx, 0xbbe868b1
add eax, 0x843e03f4
mov dword [esi], eax
push eax
mov edi, esp
push eax
mov ebx, esp
mov eax, dword [0x10067038]
mov ecx, dword [0x1006703c]
mov edx, ecx
not edx
or edx, ecx
and edx, eax
sub edx, eax
add edx, 0xe58cb894
mov dword [ebx], edx
mov eax, dword [0x10067040]
mov ecx, dword [0x10067044]
mov edx, ecx
not edx
lea esi, [ecx + edx*2]
or edx, eax
sub esi, edx
and eax, ecx
add eax, esi
add eax, 0xb
mov esi, dword [ebp + 0xc]
mov ecx, dword [0x10070b00]
cmp dword [0x10070afc], eax
setl al
lea edx, [ecx - 1]
imul edx, ecx
test dl, 1
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
jne 0x10013f48
push eax
push eax
mov eax, esp
cmp dword [ebp + 8], esi
setg byte [eax]
push eax
mov dword [ebp - 0x14], esp
mov ebx, dword [0x10067008]
mov edi, dword [0x1006700c]
mov dword [ebp - 0x18], edi
not edi
mov esi, ebx
xor esi, edi
and esi, ebx
not esi
lea edx, [esi + esi]
sub edx, esi
not ebx
lea esi, [ebx + ebx]
sub esi, ebx
not esi
or esi, edi
mov edi, edx
not edi
mov ebx, edi
mov ecx, edi
mov eax, edi
or edi, esi
not esi
and ebx, esi
sub ecx, ebx
add ecx, esi
xor eax, esi
add eax, ecx
add edi, eax
or esi, edx
add esi, edi
lea eax, [esi + ebx]
lea edx, [ebx + esi]
add edx, 2
add eax, eax
add eax, 4
sub edx, eax
mov esi, edx
or esi, 0xba06923f
lea eax, [edx + esi]
not esi
add esi, eax
mov eax, edx
or eax, 0x45f96dc0
sub esi, eax
and edx, 0xba06923f
add edx, esi
mov eax, edx
mov esi, dword [ebp - 0x18]
and eax, esi
add eax, edx
add eax, esi
mov ecx, edx
or ecx, esi
not ecx
add ecx, eax
xor edx, esi
lea eax, [edx + ecx]
add eax, 0x45f96dc2
mov ecx, eax
not ecx
and ecx, 0x9925e8f0
mov edx, eax
sub edx, ecx
or eax, 0x66da170f
sub edx, eax
lea eax, [edx + 0x66da170f]
mov ecx, 0x9925e8f0
sub ecx, edx
and ecx, 0x99ef4ed3
lea ecx, [ecx + edx*2]
add ecx, 0xcdb42e1e
or eax, 0x99ef4ed3
sub ecx, eax
imul eax, ecx, 0xa49ce051
lea ecx, [eax + 0x602f42dc]
mov edx, ecx
and edx, 0xd3c4c034
add eax, edx
add eax, 0x602f42dc
mov edx, ecx
xor edx, 0xd3c4c034
add edx, eax
not ecx
or ecx, 0xd3c4c034
lea eax, [edx + ecx]
add edx, ecx
add edx, 0x58767f99
mov ecx, edx
and ecx, 0x2273512e
lea eax, [eax + ecx*2]
add eax, 0x58767f99
mov ecx, edx
xor ecx, 0xa273512e
add ecx, eax
sub ecx, edx
mov eax, ecx
and eax, 0xd3c4c034
mov edx, ecx
xor edx, 0xd3c4c034
add edx, eax
or ecx, 0x2c3b3fcb
add ecx, edx
imul eax, ecx, 0xbbe868b1
add eax, 0xe9c09bd7
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
push eax
push eax
mov eax, esp
mov ecx, dword [0x10067380]
mov edx, dword [0x10067384]
mov esi, ecx
and esi, edx
add esi, esi
mov edi, ecx
or edi, edx
sub edi, esi
mov esi, ecx
xor esi, edx
not esi
add esi, edi
not edx
sub esi, edx
or edx, ecx
lea ecx, [esi + edx]
add ecx, 0xe58cb895
mov esi, dword [ebp + 0xc]
mov dword [eax], ecx
jmp 0x10013c56
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x14], ebx
nop
mov eax, dword [0x10067060]
mov ecx, dword [0x10067064]
mov edx, ecx
not edx
and edx, eax
mov esi, eax
not esi
add esi, esi
lea edx, [esi + edx*2]
and eax, ecx
not eax
add eax, eax
sub eax, edx
mov ecx, dword [0x10070af8]
add eax, 0xa
cmp dword [0x10070af4], eax
setl al
lea edx, [ecx + 1]
imul edx, ecx
test dl, 1
sete cl
mov edx, eax
add dl, cl
mov ch, al
or ch, cl
add dl, ch
not ch
add ch, dl
and al, cl
sub ch, al
mov eax, dword [ebx]
test ch, 1
jne 0x10013f50
cmp eax, 0xf6917223
jg 0x10014060
cmp eax, 0xc8d852a8
jle 0x100140ef
cmp eax, 0xe3504dcd
jle 0x100141d4
cmp eax, 0xe3504dce
je 0x10014387
cmp eax, 0xe58cb894
je 0x100143de
cmp eax, 0xebf7e281
jne 0x10014710
mov eax, dword [0x10070af0]
mov ecx, dword [0x100671f8]
mov edx, dword [0x100671fc]
mov esi, ecx
mov edi, ecx
or edi, edx
not ecx
or ecx, edx
not edx
and esi, edx
add esi, esi
sub edi, esi
add edi, edx
sub edi, ecx
add edi, 0xa
cmp dword [0x10070aec], edi
setl cl
lea edx, [eax + 1]
imul edx, eax
mov eax, dword [0x10067200]
mov esi, dword [0x10067204]
mov edi, eax
and edi, esi
mov ebx, eax
or ebx, esi
not ebx
add ebx, edi
xor eax, esi
add eax, ebx
add eax, 1
mov ebx, dword [ebp - 0x14]
and edx, 1
cmp edx, eax
sete al
or al, cl
add al, 1
test al, 1
je 0x10014d07
jmp 0x10014d93
cmp eax, 0x2c7e6524
jg 0x10014161
cmp eax, 0x1c384c6e
jg 0x1001425c
cmp eax, 0xf6917224
je 0x10014436
cmp eax, 0xbc8a37c
jne 0x100146f7
mov eax, dword [0x100671d0]
mov ecx, eax
not ecx
add eax, ecx
add eax, 0xb
cmp dword [0x10070ae8], eax
mov edx, dword [0x10070ae4]
setl al
lea ecx, [edx - 1]
imul ecx, edx
mov edx, dword [0x100671d8]
mov esi, dword [0x100671dc]
mov edi, edx
or edi, esi
mov ebx, edi
not ebx
lea edi, [edi + ebx*2]
mov ebx, edx
xor ebx, esi
not ebx
sub ebx, edi
and edx, esi
not edx
add edx, ebx
mov ebx, dword [ebp - 0x14]
and ecx, 1
cmp ecx, edx
sete cl
or cl, al
cmp cl, 1
je 0x100151e6
jmp 0x10015261
cmp eax, 0x9a59cc4d
jg 0x100142c8
cmp eax, 0x866953ba
je 0x100144b1
cmp eax, 0x94f06f69
jne 0x10014710
cmp dword [0x10070ae0], 0xa
mov edx, dword [0x10070adc]
setl al
mov ecx, edx
not ecx
add ecx, edx
add ecx, edx
imul ecx, edx
mov edx, dword [0x100672a0]
mov edi, dword [0x100672a4]
mov esi, edx
not esi
mov ebx, esi
and ebx, edi
xor edx, edi
not edx
add edx, ebx
or esi, edi
sub edx, esi
and ecx, 1
cmp ecx, edx
sete cl
or cl, al
cmp cl, 1
je 0x1001478c
jmp 0x100149b2
cmp eax, 0x6684622f
jg 0x10014313
cmp eax, 0x2c7e6525
je 0x1001451f
cmp eax, 0x660ecbb7
jne 0x10014710
mov edx, dword [0x10070ad8]
mov ecx, edx
not ecx
cmp dword [0x10070ad4], 0xa
setl al
mov esi, edx
and esi, 0x7ffffffe
and ecx, 0xfffffffe
lea ecx, [ecx + esi*2]
mov esi, edx
and esi, 1
add ecx, esi
add ecx, 3
imul ecx, edx
test cl, 1
sete dl
or dl, al
or cl, al
add al, dl
not dl
add dl, al
add cl, dl
add cl, 1
test cl, 1
je 0x10014e08
jmp 0x10014e8f
cmp eax, 0xc8d852a9
je 0x1001459a
cmp eax, 0xcfefd4ff
jne 0x10014710
mov edx, dword [0x10070ad0]
mov eax, dword [0x100670b8]
xor eax, dword [0x100670bc]
mov ecx, eax
not ecx
add eax, ecx
add eax, 0xb
cmp dword [0x10070acc], eax
setl al
lea ecx, [edx + 1]
imul ecx, edx
and ecx, 1
mov edx, dword [str._0_nu_f_]
mov esi, dword [0x100670c4]
mov edi, esi
not edi
and edi, edx
or edx, esi
sub edi, edx
add edi, esi
cmp ecx, edi
setne dl
sete cl
mov ah, al
or ah, cl
mov ch, ah
xor ch, 1
add ch, ah
xor cl, al
not cl
add cl, ch
add cl, dl
or al, dl
add al, cl
add al, 1
test al, 1
je 0x10014c6c
jmp 0x10014cc8
cmp eax, 0x1c384c6f
je 0x100145db
cmp eax, 0x22f50b84
jne 0x10014710
mov edx, dword [0x10070ac8]
cmp dword [0x10070ac4], 0xa
setl al
lea ecx, [edx + 1]
imul ecx, edx
and ecx, 1
mov edx, dword [0x100671b0]
mov esi, dword [0x100671b4]
mov edi, edx
or edi, esi
not edi
add edi, edx
not esi
or esi, edx
sub edi, esi
cmp ecx, edi
setne cl
sete dl
mov ah, al
and ah, dl
or dl, al
add dl, ah
add dl, cl
or al, cl
add al, dl
test al, 1
jne 0x10014db1
jmp 0x10014ded
cmp eax, 0x9a59cc4e
je 0x1001464f
cmp eax, 0xb52f5565
jne 0x10014710
mov eax, dword [0x10070ac0]
cmp dword [0x10070abc], 0xa
setl cl
mov edx, eax
not edx
add edx, eax
add edx, eax
add edx, 0x96cf6640
imul edx, eax
test dl, 1
sete al
or al, cl
cmp al, 1
je 0x10014bb1
jmp 0x10014c4e
cmp eax, 0x66846230
je 0x100146a3
cmp eax, 0x6dd20c77
jne 0x10014710
mov esi, dword [0x10070ab8]
cmp dword [0x10070ab4], 0xa
setge ch
setl cl
lea edx, [esi - 1]
imul edx, esi
mov eax, dword [0x10067188]
mov edi, dword [0x1006718c]
mov ebx, eax
xor ebx, edi
lea ebx, [eax + ebx*2]
mov esi, eax
or esi, edi
add esi, esi
sub ebx, esi
mov esi, eax
not esi
or esi, edi
add esi, ebx
mov ebx, dword [ebp - 0x14]
and eax, edi
add eax, esi
add eax, 1
and edx, 1
cmp edx, eax
setne al
or al, cl
add al, ch
test al, 1
jne 0x100150fa
jmp 0x100151a7
mov eax, dword [0x10070ab0]
mov ecx, dword [0x10067270]
mov edx, dword [0x10067274]
mov esi, edx
not esi
mov edi, ecx
and edi, esi
xor edx, ecx
sub edx, edi
or esi, ecx
lea ecx, [edx + esi]
add ecx, 0xb
cmp dword [0x10070aac], ecx
setl cl
mov edx, eax
xor edx, 1
add edx, eax
mov esi, eax
xor esi, 0xfe
add edx, esi
add edx, 2
imul edx, eax
and cl, dl
add cl, dl
test cl, 1
je 0x10015335
jmp 0x100153ad
cmp dword [0x10070aa8], 0xa
mov edx, dword [0x10070aa4]
setl al
lea ecx, [edx - 1]
imul ecx, edx
and ecx, 1
mov esi, dword [0x10067098]
mov edx, dword [0x1006709c]
mov edi, esi
not edi
and edi, edx
not edx
or edx, esi
not edx
sub edx, edi
cmp ecx, edx
setne cl
sete dl
or dl, al
or cl, al
add al, dl
not dl
add dl, al
add cl, dl
add cl, 1
test cl, 1
je 0x10014e9a
jmp 0x10014f34
mov edx, dword [0x10067338]
mov eax, dword [0x1006733c]
mov ecx, edx
not ecx
mov edi, ecx
and edi, eax
mov esi, edx
or esi, eax
not esi
add esi, edi
or ecx, eax
not eax
sub esi, eax
or eax, edx
add eax, esi
sub eax, ecx
add eax, 0xa
cmp dword [0x10070aa0], eax
mov edx, dword [0x10070a9c]
setl al
mov esi, edx
not esi
mov ecx, esi
and ecx, 0xfffffffe
add ecx, edx
or esi, 1
sub ecx, esi
add ecx, 2
imul ecx, edx
test cl, 1
sete dl
mov ah, al
and ah, dl
mov dh, ah
add dh, al
mov ebx, eax
xor bl, dl
add bl, dh
or al, dl
add al, bl
mov ebx, dword [ebp - 0x14]
add al, cl
sub al, ah
test al, 1
je 0x10015ab0
jmp 0x10015b45
mov ecx, dword [0x10070a98]
mov eax, dword [0x10067108]
mov edx, dword [0x1006710c]
mov esi, eax
and esi, edx
mov edi, eax
xor edi, edx
add edi, esi
or eax, edx
sub eax, edi
add eax, 0xa
cmp dword [0x10070a94], eax
setl al
lea edx, [ecx + 1]
imul edx, ecx
and edx, 1
mov ecx, dword [0x10067110]
mov esi, dword [0x10067114]
mov edi, ecx
not edi
and edi, esi
or esi, ecx
sub edi, esi
add edi, ecx
cmp edx, edi
setne cl
sete dl
or dl, al
or cl, al
add al, dl
not dl
add dl, al
add cl, dl
test cl, 1
jne 0x10014fa0
jmp 0x1001502e
mov ecx, dword [0x10070a90]
mov eax, dword [0x10067158]
mov edx, dword [0x1006715c]
mov esi, eax
and esi, edx
mov edi, eax
or edi, edx
not edi
add edi, esi
xor eax, edx
add eax, edi
add eax, 0xb
cmp dword [0x10070a8c], eax
setl al
mov edx, ecx
not edx
add edx, ecx
add edx, ecx
add edx, 0x23a11a7e
imul edx, ecx
and edx, 1
mov ecx, dword [0x10067160]
mov esi, dword [0x10067164]
mov edi, ecx
or edi, esi
not edi
add edi, ecx
not esi
or esi, ecx
sub edi, esi
cmp edx, edi
sete cl
mov edx, eax
add dl, cl
mov ah, al
xor ah, cl
add ah, dl
or al, cl
add al, ah
test al, 1
jne 0x1001505b
jmp 0x100150be
mov edx, dword [0x10070a88]
cmp dword [0x10070a84], 0xa
setge cl
setl al
lea ebx, [edx + 1]
imul ebx, edx
test bl, 1
sete dl
and bl, al
and cl, dl
or cl, bl
mov ah, al
or ah, dl
add cl, ah
not ah
add ah, cl
and al, dl
sub ah, al
test ah, 1
je 0x100153d0
jmp 0x100154c0
mov ecx, dword [0x10070a80]
mov eax, dword [0x100670e0]
mov edx, dword [0x100670e4]
mov esi, eax
not esi
or esi, eax
and esi, edx
add esi, edx
not edx
lea eax, [esi + edx*2]
add eax, 0xc
cmp dword [0x10070a7c], eax
setge dl
setl al
mov esi, ecx
not esi
mov edi, esi
and edi, 1
add edi, ecx
mov ebx, ecx
xor ebx, 0xfffffffe
add ebx, edi
or esi, 1
sub ebx, esi
add ebx, 1
imul ebx, ecx
test bl, 1
sete cl
and bl, al
and dl, cl
or dl, bl
mov ebx, dword [ebp - 0x14]
mov ah, al
xor ah, cl
add ah, dl
or al, cl
add al, ah
add al, 1
test al, 1
je 0x10014f49
jmp 0x10014f85
mov eax, dword [0x10070a78]
mov ecx, dword [0x100672f0]
mov edx, dword [0x100672f4]
mov esi, ecx
and esi, edx
mov edi, ecx
or edi, edx
not edi
add edi, esi
xor ecx, edx
add ecx, edi
add ecx, 0xb
cmp dword [0x10070a74], ecx
setl dl
setge dh
lea ecx, [eax + 1]
imul ecx, eax
test cl, 1
sete al
and dh, al
or al, dl
add al, dh
or cl, dl
add cl, al
test cl, 1
je 0x100155a8
jmp 0x1001587b
mov eax, dword [0x10070a70]
mov ecx, dword [0x10067248]
mov edx, dword [0x1006724c]
mov esi, ecx
and esi, edx
mov edi, ecx
or edi, edx
not edi
add edi, esi
xor ecx, edx
add ecx, edi
add ecx, 0xb
cmp dword [0x10070a6c], ecx
setl dl
setge dh
lea ecx, [eax + 1]
imul ecx, eax
test cl, 1
sete al
and dh, al
or al, dl
add al, dh
or cl, dl
add cl, al
test cl, 1
je 0x1001529c
jmp 0x1001532a
cmp eax, 0x68ba9d9
je 0x10015b50
nop word cs:[eax + eax]
nop dword [eax]
mov edx, dword [0x10070a68]
mov eax, dword [0x10067080]
mov ecx, dword [0x10067084]
mov esi, eax
not esi
or esi, eax
and esi, ecx
sub esi, ecx
add esi, 0xa
cmp dword [0x10070a64], esi
setl al
lea ecx, [edx - 1]
imul ecx, edx
mov edx, dword [0x10067088]
mov esi, dword [0x1006708c]
mov ebx, edx
or ebx, esi
mov edi, ebx
not edi
add edi, ebx
mov ebx, esi
not ebx
add edi, ebx
or ebx, edx
sub edi, ebx
mov ebx, dword [ebp - 0x14]
and edx, esi
add edx, edi
add edx, 1
and ecx, 1
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 0x10014710
jmp 0x10015b10
mov esi, dword [0x10067010]
mov eax, esi
not eax
lea edi, [eax + eax]
sub edi, eax
mov dword [ebp - 0x10], eax
lea edx, [edi + edi]
lea ecx, [edx + esi*2]
neg edx
or edx, esi
not edx
add edx, ecx
mov ecx, dword [0x10067014]
add edi, edi
add edi, 0xffffffff
or edi, esi
sub edx, edi
mov edi, eax
sub edi, esi
lea edi, [edi + esi*2]
sub edi, esi
lea esi, [esi + eax*2]
sub esi, eax
add esi, 1
or esi, edi
mov edi, esi
and edi, ecx
xor esi, ecx
or esi, edi
mov edi, edx
and edi, 0xee0093e
add edi, edx
mov ebx, edx
xor ebx, 0xee0093e
add ebx, edi
or edx, 0xee0093e
sub ebx, edx
lea edx, [ebx + 0xee0093e]
lea edi, [esi - 1]
and edi, edx
add ebx, edi
add ebx, 0xee0093e
mov eax, esi
neg eax
mov edi, edx
not edi
and edi, eax
add edi, ebx
sub edi, esi
not ecx
xor eax, edx
sub edi, eax
mov eax, edi
and eax, 0xf11ff6c1
add eax, edi
mov edx, edi
not edx
and edx, 0xee0093e
add edx, eax
xor edi, 0xee0093e
sub edx, edi
add edx, 0xf11ff6c2
lea esi, [ecx + ecx]
sub esi, ecx
mov edi, dword [ebp - 0x10]
mov ecx, edi
or ecx, esi
lea eax, [edi + ecx]
not ecx
add ecx, eax
not esi
or esi, edi
sub ecx, esi
mov eax, ecx
not eax
lea esi, [ecx + eax*2]
lea eax, [ecx + eax*2]
add eax, 1
lea ecx, [esi + esi]
add ecx, 2
sub ecx, eax
mov esi, ecx
not esi
and esi, 0xa14ef488
mov eax, ecx
and eax, 0x5eb10b77
or ecx, 0xa14ef488
mov edi, eax
sub edi, ecx
add eax, edi
add eax, 0xa14ef488
or eax, esi
xor eax, 0x5eb10b77
mov esi, edx
not esi
mov ecx, esi
and ecx, 0x3dc171e6
add ecx, ecx
mov edi, edx
sub edi, ecx
mov ebx, edx
or ebx, 0xbdc171e6
add ebx, edi
mov ecx, eax
neg ecx
or edx, 0x423e8e19
sub ebx, edx
lea edi, [ebx + esi]
add esi, ebx
add esi, 0x423e8e1a
mov edx, esi
not edx
mov ebx, edx
and ebx, ecx
add ebx, edi
add ebx, 0x423e8e1a
sub ebx, eax
mov edi, esi
or edi, ecx
not edi
add edi, ebx
mov ebx, dword [ebp - 0x14]
add eax, 0xffffffff
sub edi, eax
or eax, esi
add eax, edi
or edx, ecx
sub eax, edx
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0x423e8e19
add edx, eax
or ecx, 0xbdc171e6
sub edx, ecx
imul eax, edx, 0x8e98a927
add eax, 0xa2726014
mov ecx, eax
and ecx, 0x58561477
xor eax, 0x58561477
add eax, ecx
add ecx, eax
add ecx, 0xc939d20f
imul edx, ecx, 0xbd4a3697
mov eax, edx
neg eax
mov esi, eax
and esi, 0xb73d3d0a
imul ecx, ecx, 0xc8215c3b
sub ecx, esi
add edx, 0xffffffff
and edx, 0x48c2c2f5
lea ecx, [ecx + edx*2]
or eax, 0x48c2c2f5
sub eax, ecx
add eax, 0x918585eb
cmp dword [ebp + 8], eax
mov eax, 0xe430b32c
mov ecx, 0x878b5556
cmovg eax, ecx
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov ecx, dword [0x10070a60]
cmp dword [0x10070a5c], 0xa
setl al
mov edx, ecx
not edx
add edx, 2
imul edx, ecx
test dl, 1
sete cl
mov edx, eax
xor dl, cl
and al, cl
not dl
not al
add al, dl
mov ecx, dword [ebp - 0x28]
mov dword [ecx], 0
mov dword [ebx], 0xf6917224
test al, 1
jne 0x10015b10
mov eax, dword [0x10067010]
mov edi, dword [0x10067014]
lea ecx, [eax + eax*2]
lea edx, [eax + eax]
sub edx, ecx
lea ecx, [eax + edx*2]
mov dword [ebp - 0x10], ecx
mov ecx, eax
not ecx
mov dword [ebp - 0x24], ecx
lea esi, [eax + edx*2 - 2]
lea ecx, [eax + ecx*2 + 1]
mov eax, edi
not edi
mov ebx, eax
mov edx, eax
mov dword [ebp - 0x20], eax
or ebx, edi
and ebx, ecx
mov eax, ecx
not eax
and eax, edx
mov edx, ecx
xor ecx, dword [ebp - 0x20]
or ebx, eax
sub ebx, ecx
and edx, edi
or eax, edx
mov ecx, eax
not ecx
and ecx, ebx
mov edx, esi
xor edx, 0xee0093e
mov ebx, dword [ebp - 0x10]
add edx, ebx
add edx, 0xfffffffe
mov ebx, esi
not ebx
and ebx, 0xf11ff6c1
add ebx, edx
and esi, 0xee0093e
lea edx, [ebx + esi]
mov dword [ebp - 0x10], edx
lea edx, [esi + ebx]
add edx, 0xee0093f
mov esi, dword [ebp - 0x10]
lea ebx, [esi + esi]
add ebx, 0x1dc0127e
lea esi, [ecx + eax]
sub ebx, esi
neg esi
or esi, edx
not esi
add esi, ebx
add eax, ecx
add eax, 0xffffffff
or eax, edx
sub esi, eax
mov eax, esi
not eax
and eax, 0xee0093e
add eax, eax
lea eax, [eax + esi*2]
xor esi, 0xee0093e
sub eax, esi
mov dword [ebp - 0x10], eax
or edi, dword [ebp - 0x24]
mov eax, edi
not eax
mov esi, eax
sub esi, edi
sub esi, eax
mov ecx, esi
neg ecx
lea eax, [ecx + ecx*2]
add eax, esi
add eax, 0xffffffff
lea edi, [eax + esi]
add eax, esi
add eax, 1
mov ebx, eax
and ebx, 0xa14ef488
mov edx, 0xfffffffe
sub edx, edi
and edx, 0x214ef488
add edx, edx
sub ebx, edx
mov edx, eax
or edx, 0xa14ef488
add edx, ebx
or eax, 0x5eb10b77
sub edx, eax
add esi, 0xffffffff
sub edx, edi
mov eax, esi
or eax, ecx
and eax, 0x5eb10b77
mov edi, ecx
and edi, 0xa14ef488
or edi, eax
add edx, 0xfffffffe
or esi, 0xa14ef488
add esi, edi
or ecx, 0x5eb10b77
sub esi, ecx
lea eax, [esi + 0x5eb10b78]
mov ecx, edx
or ecx, eax
add esi, ecx
add esi, 0x5eb10b78
not ecx
add ecx, esi
not edx
or edx, eax
sub ecx, edx
xor ecx, 0x5eb10b77
mov edx, dword [ebp - 0x10]
sub edx, ecx
lea eax, [edx + 0x247e7b9e]
not eax
mov ecx, eax
and ecx, 0x423e8e19
add ecx, edx
add ecx, 0x247e7b9e
or eax, 0xbdc171e6
sub ecx, eax
add ecx, 0x7b82e3cc
imul eax, ecx, 0x8e98a927
mov edx, eax
not edx
mov esi, eax
and esi, 0x58561477
imul ecx, ecx, 0xabc9fb75
sub ecx, esi
and edx, 0x27a9eb88
lea ecx, [ecx + edx*2]
or eax, 0xa7a9eb88
sub ecx, eax
imul eax, ecx, 0xbd4a3697
add eax, 0xc5c762c8
cmp dword [ebp + 8], eax
mov eax, 0xe430b32c
mov ecx, 0x878b5556
cmovg eax, ecx
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov eax, dword [0x100673f0]
mov ecx, dword [0x100673f4]
mov edx, eax
or edx, ecx
mov esi, edx
not esi
lea edx, [edx + esi*2]
mov esi, eax
xor esi, ecx
not esi
sub esi, edx
and eax, ecx
not eax
add eax, esi
mov ecx, dword [ebp - 0x28]
mov dword [ecx], eax
mov eax, dword [ebp - 0x14]
mov dword [eax], 0xf6917224
jmp 0x1001478c
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [0x10067140]
mov edx, dword [0x10067144]
mov esi, ecx
not esi
and esi, edx
not edx
or edx, ecx
lea ecx, [esi + edx]
add ecx, 0x6610b12d
cmp eax, ecx
mov eax, 0x660ecbb7
mov ecx, 0xe3504dce
cmove eax, ecx
mov ecx, dword [0x10067148]
mov edx, dword [0x1006714c]
mov esi, ecx
and esi, edx
mov edi, ecx
xor edi, edx
add edi, esi
or ecx, edx
sub edi, ecx
add edi, 0xa
cmp dword [0x10070a58], edi
mov esi, dword [0x10070a54]
setl cl
lea edx, [esi - 1]
imul edx, esi
mov esi, dword [0x10067150]
mov edi, esi
xor edi, esi
not edi
mov ebx, dword [0x10067154]
and edi, ebx
xor edi, esi
xor esi, ebx
mov ebx, dword [ebp - 0x14]
sub edi, esi
and edx, 1
cmp edx, edi
mov dword [ebx], eax
sete al
mov edx, ecx
and dl, al
add dl, cl
add dl, al
test dl, 1
jne 0x10015b10
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
cmp eax, 0x6610b12c
mov eax, 0x660ecbb7
mov ecx, 0xe3504dce
cmove eax, ecx
mov dword [ebx], eax
jmp 0x10014bb1
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
cmp eax, 0x2ca4914a
mov eax, 0x1c384c6f
mov ecx, 0x22f50b84
cmovl eax, ecx
mov dword [ebx], eax
mov edx, dword [0x100670d0]
mov eax, dword [0x100670d4]
mov ecx, edx
not ecx
mov esi, ecx
and esi, eax
sub esi, edx
not eax
or eax, edx
add eax, esi
sub eax, ecx
mov ecx, dword [0x10070a50]
add eax, 0xa
cmp dword [0x10070a4c], eax
setl al
lea edx, [ecx + 1]
imul edx, ecx
test dl, 1
sete cl
or cl, al
jne 0x10015b10
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov esi, dword [0x10067390]
mov ecx, dword [0x10067394]
mov edx, esi
not edx
mov edi, edx
and edi, ecx
sub edi, esi
not ecx
or ecx, esi
add ecx, edi
sub ecx, edx
add ecx, 0x2ca4914a
cmp eax, ecx
mov eax, 0x1c384c6f
mov ecx, 0x22f50b84
cmovl eax, ecx
mov dword [ebx], eax
jmp 0x10014c6c
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [0x10067208]
mov edx, dword [0x1006720c]
mov esi, edx
not esi
and esi, ecx
mov edi, ecx
or edi, edx
add edi, esi
xor edx, ecx
not edx
add edx, edi
not ecx
add ecx, edx
add ecx, 0x878b5558
cmp eax, ecx
mov eax, 0x660ecbb7
mov ecx, 0xc8d852a9
cmove eax, ecx
cmp dword [0x10070a48], 0xa
mov esi, dword [0x10070a44]
setl byte [ebp - 0x10]
lea edx, [esi + 1]
imul edx, esi
mov edi, dword [0x1006721c]
mov ebx, edi
not ebx
mov ecx, dword [0x10067218]
and ebx, ecx
mov esi, ecx
not esi
add esi, esi
lea esi, [esi + ebx*2]
mov ebx, dword [ebp - 0x14]
and ecx, edi
not ecx
add ecx, ecx
sub ecx, esi
and edx, 1
cmp edx, ecx
mov dword [ebx], eax
sete al
or al, byte [ebp - 0x10]
jne 0x10015b10
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
cmp eax, 0x878b5556
mov eax, 0x660ecbb7
mov ecx, 0xc8d852a9
cmove eax, ecx
mov dword [ebx], eax
jmp 0x10014d07
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
cmp eax, 0xe430b32c
mov eax, 0xbc8a37c
mov ecx, 0xebf7e281
cmovl eax, ecx
mov dword [ebx], eax
mov eax, dword [0x10070a40]
cmp dword [0x10070a3c], 0xa
setl cl
lea edx, [eax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
jne 0x10015b10
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
cmp eax, 0xe430b32c
mov eax, 0xbc8a37c
mov ecx, 0xebf7e281
cmovl eax, ecx
mov dword [ebx], eax
jmp 0x10014db1
mov eax, dword [0x10067238]
mov edx, dword [0x1006723c]
mov ecx, eax
and ecx, edx
mov esi, eax
xor esi, edx
sub esi, ecx
mov edi, edx
not edi
or edi, eax
add edi, esi
not eax
or eax, edx
add eax, edi
add eax, ecx
add eax, 0xc
cmp dword [0x10070a38], eax
mov edx, dword [0x10070a34]
setl al
mov ecx, edx
not ecx
add ecx, edx
add ecx, edx
imul ecx, edx
mov edx, dword [0x10067240]
mov esi, dword [0x10067244]
mov edi, edx
or edx, esi
not esi
and edi, esi
not edx
add edx, edi
sub edx, esi
and ecx, 1
cmp ecx, edx
setne cl
sete dl
mov ah, al
or ah, dl
not ah
add ah, cl
or cl, al
add cl, ah
and al, dl
not al
add al, cl
mov dword [ebx], 0x66846230
test al, 1
jne 0x10015b10
mov dword [ebx], 0x66846230
jmp 0x10014e08
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x18]
mov dword [ecx], eax
mov ecx, dword [0x100670a8]
mov eax, dword [0x100670ac]
mov edx, eax
not edx
mov esi, ecx
and esi, edx
lea edi, [eax + esi*2]
mov esi, ecx
xor esi, eax
sub edi, esi
mov esi, dword [0x10070a30]
or eax, ecx
not eax
add eax, edi
or edx, ecx
sub eax, edx
add eax, 0xa
cmp dword [0x10070a2c], eax
setl al
lea ecx, [esi - 1]
imul ecx, esi
mov edx, dword [0x100670b0]
mov esi, dword [0x100670b4]
mov edi, edx
and edi, esi
mov ebx, edx
xor ebx, esi
lea edi, [ebx + edi*2]
mov ebx, dword [ebp - 0x14]
not esi
add esi, edi
not edx
add edx, esi
add edx, 2
and ecx, 1
cmp ecx, edx
sete cl
setne dl
mov ah, al
and ah, dl
mov ch, al
or ch, cl
add ch, ah
xor cl, al
not cl
add cl, ch
or al, dl
add al, cl
mov dword [ebx], 0xcfefd4ff
test al, 1
jne 0x10015b10
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x18]
mov dword [ecx], eax
mov dword [ebx], 0xcfefd4ff
jmp 0x10014e9a
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
cmp eax, 0x63e5c84d
mov eax, 0x866953ba
mov ecx, 0x6dd20c77
cmovl eax, ecx
mov dword [ebx], eax
mov eax, dword [0x10070a28]
cmp dword [0x10070a24], 0xa
setl cl
lea edx, [eax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
jne 0x10015b10
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
cmp eax, 0x63e5c84d
mov eax, 0x866953ba
mov ecx, 0x6dd20c77
cmovl eax, ecx
mov dword [ebx], eax
jmp 0x10014f49
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
cmp eax, 0x6610b12c
mov eax, 0xb52f5565
mov ecx, 0x2c7e6525
cmovl eax, ecx
mov ecx, dword [0x10067120]
mov esi, dword [0x10067124]
mov edx, ecx
and edx, esi
mov edi, ecx
or edi, esi
lea ebx, [edx + edi]
not edi
lea edi, [edi + edi*2]
add edi, ebx
xor ecx, esi
mov esi, dword [0x10070a20]
not ecx
add ecx, ecx
sub ecx, edi
not edx
add ecx, edx
add ecx, 0xa
cmp dword [0x10070a1c], ecx
setl byte [ebp - 0x10]
lea edx, [esi - 1]
imul edx, esi
mov esi, dword [0x10067128]
mov edi, esi
not edi
mov ebx, dword [0x1006712c]
lea ecx, [esi + edi*2]
or edi, ebx
sub ecx, edi
and esi, ebx
mov ebx, dword [ebp - 0x14]
add ecx, esi
add ecx, 1
and edx, 1
cmp edx, ecx
mov dword [ebx], eax
sete al
or al, byte [ebp - 0x10]
jne 0x10015b10
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [0x100673a0]
mov edx, ecx
not edx
add ecx, edx
add ecx, 0x6610b12d
cmp eax, ecx
mov eax, 0xb52f5565
mov ecx, 0x2c7e6525
cmovl eax, ecx
mov dword [ebx], eax
jmp 0x10014fa0
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [0x10067168]
and ecx, dword [0x1006716c]
mov edx, ecx
not edx
add ecx, edx
add ecx, 0x63e5c84e
cmp eax, ecx
mov eax, 0x660ecbb7
mov ecx, 0x94f06f69
cmove eax, ecx
mov dword [ebx], eax
mov edx, dword [0x10070a18]
cmp dword [0x10070a14], 0xa
setl al
lea ecx, [edx + 1]
imul ecx, edx
test cl, 1
sete dl
mov ah, al
or ah, dl
add ah, cl
mov dh, al
or dh, cl
add dh, ah
and al, dl
sub dh, al
test dh, 1
jne 0x10015b10
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [0x100673b0]
mov edx, ecx
not edx
or edx, ecx
mov ecx, dword [0x100673b4]
and edx, ecx
add edx, ecx
not ecx
lea ecx, [edx + ecx*2]
add ecx, 0x63e5c84f
cmp eax, ecx
mov eax, 0x660ecbb7
mov ecx, 0x94f06f69
cmove eax, ecx
mov dword [ebx], eax
jmp 0x1001505b
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov esi, dword [0x10067190]
mov ecx, dword [0x10067194]
mov edx, esi
not edx
mov ebx, edx
and ebx, ecx
mov edi, esi
or edi, ecx
not edi
add edi, ebx
or edx, ecx
not ecx
sub edi, ecx
or ecx, esi
add ecx, edi
sub ecx, edx
add ecx, 0x2ca4914a
cmp eax, ecx
mov eax, 0x660ecbb7
mov ecx, 0x9a59cc4e
cmove eax, ecx
mov edx, dword [0x10070a10]
mov esi, dword [0x10067198]
mov edi, dword [0x1006719c]
mov ecx, esi
or ecx, edi
not ecx
add ecx, edi
not esi
or esi, edi
sub ecx, esi
add ecx, 0xa
cmp dword [0x10070a0c], ecx
setl byte [ebp - 0x10]
lea esi, [edx - 1]
imul esi, edx
mov edx, dword [0x100671a0]
mov edi, dword [0x100671a4]
mov ebx, edx
and ebx, edi
mov ecx, ebx
sub ecx, edx
xor edx, edi
add edx, ecx
not edi
add edi, edx
lea ecx, [ebx + edi]
add ecx, 1
mov ebx, dword [ebp - 0x14]
and esi, 1
cmp esi, ecx
mov dword [ebx], eax
sete al
or al, byte [ebp - 0x10]
jne 0x10015b10
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [0x100673b8]
mov esi, dword [0x100673bc]
mov edx, ecx
not edx
mov edi, edx
and edi, esi
xor ecx, esi
not ecx
add ecx, edi
or edx, esi
sub ecx, edx
add ecx, 0x2ca4914a
cmp eax, ecx
mov eax, 0x660ecbb7
mov ecx, 0x9a59cc4e
cmove eax, ecx
mov dword [ebx], eax
jmp 0x100150fa
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
cmp eax, 0xe430b32c
mov ecx, 0x660ecbb7
mov eax, 0x68ba9d9
cmove ecx, eax
mov esi, dword [0x10070a08]
cmp dword [0x10070a04], 0xa
setl al
mov edx, esi
and edx, 0xfffffffe
add edx, esi
mov edi, esi
not edi
add edi, edx
lea edx, [esi + edi]
add edx, 0x8738e0a2
imul edx, esi
mov esi, dword [0x100671f4]
mov edi, esi
not edi
or edi, esi
mov esi, dword [0x100671f0]
and edi, esi
sub edi, esi
and edx, 1
cmp edx, edi
mov dword [ebx], ecx
setne cl
sete dl
mov ah, al
or ah, dl
add ah, dl
or cl, al
add cl, ah
and al, dl
not al
add al, cl
test al, 1
jne 0x10015b10
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov edx, dword [0x100673c8]
mov esi, dword [0x100673cc]
mov ecx, edx
xor ecx, edx
not ecx
and ecx, esi
xor ecx, edx
xor edx, esi
sub ecx, edx
add ecx, 0xe430b32c
cmp eax, ecx
mov eax, 0x660ecbb7
mov ecx, 0x68ba9d9
cmove eax, ecx
mov dword [ebx], eax
jmp 0x100151e6
mov ecx, dword [0x10067258]
mov edx, dword [0x1006725c]
mov eax, ecx
or eax, edx
not eax
add eax, ecx
not edx
or edx, ecx
sub eax, edx
add eax, 0xf6917224
mov edi, dword [0x10070a00]
cmp dword [0x100709fc], 0xa
setge ch
setl cl
lea edx, [edi - 1]
imul edx, edi
mov dword [ebp - 0x10], edx
mov edi, dword [0x10067268]
mov ebx, dword [0x1006726c]
mov edx, edi
and edx, ebx
sub edx, ebx
sub edx, ebx
mov esi, edi
xor esi, ebx
add esi, edx
add esi, ebx
not edi
or edi, ebx
mov ebx, dword [ebp - 0x14]
lea edx, [edi + esi]
add edx, 1
mov esi, dword [ebp - 0x10]
and esi, 1
cmp esi, edx
mov dword [ebx], eax
setne al
sete dl
mov ah, cl
or ah, dl
xor cl, dl
not cl
add cl, ah
add cl, al
add cl, ch
add cl, 1
test cl, 1
jne 0x10015b10
mov dword [ebx], 0xf6917224
jmp 0x1001529c
mov eax, dword [ebp - 0x2c]
cmp byte [eax], 0
mov eax, 0x2ca4914a
mov ecx, 0x63e5c84d
cmovne eax, ecx
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov eax, dword [0x10067280]
mov ecx, dword [0x10067284]
mov edx, eax
and edx, ecx
add edx, edx
mov esi, eax
or esi, ecx
sub esi, edx
mov edx, eax
xor edx, ecx
not edx
add edx, esi
not ecx
sub edx, ecx
or ecx, eax
lea eax, [edx + ecx]
add eax, 0xf6917225
mov dword [ebx], eax
cmp dword [0x100709f8], 0xa
mov eax, dword [0x100709f4]
setge cl
setl dl
lea ebx, [eax - 1]
imul ebx, eax
test bl, 1
mov ebx, dword [ebp - 0x14]
sete al
or al, dl
add al, dl
add al, cl
add al, 1
test al, 1
jne 0x10015b10
mov eax, dword [ebp - 0x2c]
cmp byte [eax], 0
mov eax, 0x2ca4914a
mov ecx, 0x63e5c84d
cmovne eax, ecx
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov dword [ebx], 0xf6917224
jmp 0x10015335
mov eax, dword [ebp - 0x28]
mov esi, dword [eax]
push dword [ebp + 0xc]
mov edi, dword [ebp + 8]
push edi
call dword [sym.imp.KERNEL32.dll_Beep]
lea ecx, [esi - 1]
lea eax, [esi + esi]
add eax, 0xfffffffe
sub eax, ecx
add eax, 0xdd815125
mov ecx, eax
and ecx, 0x227eaedc
add ecx, ecx
mov edx, eax
sub edx, ecx
not eax
add eax, eax
sub edx, eax
or eax, 0x44fd5db8
add eax, edx
add eax, 0x227eaedd
mov dword [ebp - 0x10], eax
cmp eax, edi
mov ecx, 0x878b5556
mov eax, 0xe430b32c
cmove ecx, eax
mov edx, dword [0x100672e0]
mov eax, dword [0x100672e4]
mov esi, edx
and esi, eax
mov ebx, edx
xor ebx, eax
sub ebx, esi
mov edi, eax
not edi
or edi, edx
add edi, ebx
not edx
or edx, eax
add edx, edi
mov eax, dword [0x100709f0]
add edx, esi
add edx, 0xc
cmp dword [0x100709ec], edx
lea edx, [eax + eax]
mov esi, eax
not esi
lea esi, [esi + edx - 0x68493b0]
setl dl
imul esi, eax
mov edi, dword [0x100672e8]
mov eax, dword [0x100672ec]
mov ebx, edi
or edi, eax
not eax
and ebx, eax
not edi
add edi, ebx
mov ebx, dword [ebp - 0x14]
sub edi, eax
and esi, 1
cmp esi, edi
mov eax, dword [ebp - 0x1c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x10]
mov dword [eax], ecx
setne al
sete cl
mov ah, dl
or ah, cl
not ah
add ah, al
or al, dl
add al, ah
and dl, cl
not dl
add dl, al
mov dword [ebx], 0xf6917224
test dl, 1
jne 0x10015b10
mov ebx, dword [ebp - 0x28]
imul esi, dword [ebx], 0x76e06dbf
push dword [ebp + 0xc]
mov edi, dword [ebp + 8]
push edi
call dword [sym.imp.KERNEL32.dll_Beep]
add esi, 0x76e06dbf
mov eax, esi
and eax, 0x48a78c9f
add eax, eax
mov ecx, esi
sub ecx, eax
mov eax, esi
or eax, 0x37587360
add eax, ecx
not esi
or esi, 0x37587360
sub eax, esi
imul ecx, eax, 0xf76823f
lea eax, [ecx + 0x41533481]
mov edx, eax
not edx
mov esi, eax
and esi, 0xdd815123
add ecx, esi
add ecx, 0x41533481
and edx, 0x227eaedc
add edx, ecx
xor eax, 0xdd815123
lea ecx, [edx + eax]
add eax, edx
add eax, 0x351c75c4
mov edx, eax
and edx, 0x227eaedc
add ecx, edx
add ecx, 0x351c75c4
mov edx, eax
or edx, 0xdd815123
add edx, ecx
mov ecx, eax
xor ecx, 0x227eaedc
add ecx, edx
not eax
add eax, ecx
add eax, 0x227eaedf
cmp eax, edi
mov ecx, 0x878b5556
mov edx, 0xe430b32c
cmove ecx, edx
mov edx, dword [ebp - 0x1c]
mov dword [edx], ecx
mov dword [ebx], eax
mov eax, dword [0x10067400]
mov ecx, dword [0x10067404]
mov edx, ecx
not edx
and edx, eax
add edx, edx
sub edx, eax
add edx, ecx
mov esi, eax
or esi, ecx
not esi
add esi, edx
and eax, ecx
add eax, esi
add eax, 0xf6917225
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
jmp 0x100153d0
push dword [ebp + 0xc]
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_Beep]
mov edx, dword [0x10067020]
mov eax, edx
not eax
mov esi, eax
mov dword [ebp - 0x10], eax
mov eax, edx
and eax, 0xb9f8e021
mov ecx, edx
and ecx, 0x46071fde
lea eax, [eax + ecx*2]
mov ecx, edx
xor ecx, 0xb9f8e021
sub eax, ecx
and esi, 0x46071fde
add eax, esi
mov ecx, edx
or ecx, 0x46071fde
sub eax, ecx
lea edi, [eax - 0x46071fdf]
mov ecx, esi
and ecx, edi
lea ebx, [eax + eax]
add ebx, 0x73f1c042
sub ecx, ebx
mov ebx, esi
xor ebx, edi
add ebx, ecx
mov ecx, esi
or ecx, edi
add ecx, ebx
add eax, ecx
add eax, 0xb9f8e021
not esi
or esi, edi
mov ecx, dword [0x10067024]
lea ebx, [esi + eax]
add ebx, 1
mov esi, ecx
not ecx
mov dword [ebp - 0x24], ecx
lea eax, [ecx + esi*2]
mov dword [ebp - 0x20], esi
add eax, ecx
add eax, ecx
add eax, 2
mov ecx, eax
and ecx, 0x46071fde
mov edi, eax
and edi, 0xb9f8e021
sub ecx, edi
mov edi, eax
xor edi, 0x46071fde
add edi, ecx
or eax, 0xb9f8e021
lea ecx, [eax + edi]
add ecx, 1
mov eax, esi
and eax, 0xb9f8e021
mov edi, esi
xor edi, 0xb9f8e021
add edi, eax
mov eax, esi
xor eax, 0x46071fde
add eax, edi
add eax, 1
or eax, ecx
mov ecx, eax
not ecx
mov edi, ebx
xor edi, eax
or eax, ebx
and ebx, ecx
add edi, ebx
sub edi, eax
sub edi, ecx
add edi, 0x6b4ad0d1
mov eax, edi
not eax
mov ecx, eax
and ecx, 0x94b52f2e
or edi, 0x6b4ad0d1
add edi, ecx
sub edi, eax
and edx, 0x1fbf8693
mov eax, dword [ebp - 0x10]
mov ebx, eax
and eax, 0x9fbf8693
lea esi, [eax + edx*2]
add esi, 0x6040796d
and ebx, 0x6040796c
mov ecx, ebx
not ecx
mov edx, ecx
and edx, esi
mov eax, ebx
or eax, esi
add eax, edx
xor ebx, esi
not ebx
add ebx, eax
or ecx, esi
sub ebx, ecx
mov esi, dword [ebp - 0x20]
mov eax, esi
and eax, 0x6040796c
add eax, dword [ebp - 0x24]
mov ecx, esi
xor ecx, 0x9fbf8693
sub eax, ecx
and esi, 0x9fbf8693
or esi, eax
xor esi, ebx
not esi
lea edx, [edi + 0x1bbb8618]
mov ecx, edx
and ecx, esi
mov eax, edx
or eax, esi
xor edx, esi
sub esi, ecx
add esi, edi
add esi, 0x1bbb8618
sub esi, eax
not eax
lea eax, [eax + eax*2]
sub esi, eax
not edx
lea eax, [esi + edx*2]
not ecx
add ecx, eax
mov eax, ecx
and eax, 0x870656e9
not ecx
and ecx, 0x78f9a916
sub eax, ecx
lea ecx, [eax + 0x3c1dc73]
mov edx, ecx
xor edx, 0xd26228e6
add eax, edx
add eax, 0x3c1dc73
xor ecx, 0x2d9dd719
lea edx, [eax + ecx]
add eax, ecx
add eax, 0x2f806bd2
mov ecx, eax
and ecx, 0x2f77c27c
add ecx, edx
add ecx, 0x2f806bd2
mov edx, eax
xor edx, 0x2f77c27c
add edx, ecx
or eax, 0x2f77c27c
sub edx, eax
lea ecx, [edx - 0x2f77c27c]
mov eax, ecx
and eax, 0x5d1e42ea
add edx, eax
add edx, 0xd0883d84
mov eax, ecx
not eax
and eax, 0xa2e1bd15
add eax, edx
xor ecx, 0xa2e1bd15
sub eax, ecx
lea ecx, [eax - 0x5d1e42eb]
mov edx, ecx
and edx, 0xd0883d83
add edx, eax
add edx, 0xa2e1bd15
mov eax, ecx
not eax
and eax, 0x2f77c27c
add eax, edx
xor ecx, 0x2f77c27c
sub eax, ecx
mov ecx, dword [0x10067300]
mov esi, dword [0x10067304]
mov edi, ecx
and edi, esi
mov edx, ecx
or edx, esi
not edx
add edx, edi
xor ecx, esi
mov dword [ebp - 0x10], ecx
mov ebx, dword [0x10067308]
mov edi, dword [0x1006730c]
mov ecx, ebx
xor ecx, edi
mov esi, ebx
or esi, edi
not esi
add esi, ecx
and ebx, edi
add eax, 0x2f77c27c
lea ecx, [ebx + esi]
add ecx, 0xb
cmp dword [0x100709e8], ecx
mov ecx, dword [0x100709e4]
setl byte [ebp - 0x24]
mov esi, 1
sub esi, ecx
imul esi, ecx
mov ecx, dword [0x10067310]
mov edi, ecx
not edi
mov ebx, dword [0x10067314]
and edi, ebx
lea edi, [ecx + edi*2]
sub edi, ebx
xor ecx, ebx
mov ebx, dword [ebp - 0x14]
sub edi, ecx
and esi, 1
cmp esi, edi
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov eax, dword [ebp - 0x10]
lea eax, [eax + edx - 0x96e8ddb]
mov dword [ebx], eax
sete al
or al, byte [ebp - 0x24]
jne 0x10015b10
push dword [ebp + 0xc]
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_Beep]
mov ecx, dword [0x10067020]
mov dword [ebp - 0x10], ecx
mov esi, ecx
not esi
mov dword [ebp - 0x24], esi
mov eax, esi
and eax, 0x46071fde
add eax, esi
and ecx, 0xb9f8e021
add eax, ecx
or esi, 0xb9f8e021
sub eax, esi
mov esi, eax
and esi, ecx
mov edi, eax
or edi, ecx
sub edi, esi
mov ebx, eax
xor ebx, ecx
add ebx, edi
mov edi, ecx
not edi
or edi, eax
add edi, ebx
not eax
or eax, ecx
add eax, edi
mov edi, dword [0x10067024]
add eax, esi
add eax, 2
mov dword [ebp - 0x20], eax
mov edx, edi
and edx, 0xb9f8e021
mov esi, edi
or esi, 0xb9f8e021
lea eax, [edx + esi]
not esi
add esi, eax
mov eax, edi
or eax, 0x46071fde
sub esi, eax
mov eax, edi
or eax, 0x9fbf8693
mov ecx, edi
sub ecx, eax
mov dword [ebp - 0x34], ecx
neg eax
lea ecx, [edi + eax]
add ecx, 0x9fbf8693
mov ebx, edi
not ebx
lea eax, [edi + ebx*2 + 1]
mov dword [ebp - 0x30], eax
lea eax, [ebx + edx]
add eax, 0x46071fdf
add edx, esi
add edx, 0x46071fdf
mov esi, eax
and esi, edx
mov ebx, eax
or ebx, edx
add esi, ebx
not ebx
add ebx, esi
xor eax, edx
add eax, ebx
add eax, 1
xor eax, dword [ebp - 0x20]
mov edx, eax
and edx, 0x6b4ad0d2
not eax
or eax, 0x6b4ad0d2
sub edx, eax
mov eax, 0x94b52f2e
sub eax, edx
and eax, 0x6b4ad0d1
lea esi, [eax + edx*2]
add esi, 0xd695a1a2
lea eax, [edx + 0x6b4ad0d1]
or eax, 0x6b4ad0d1
sub esi, eax
mov dword [ebp - 0x20], esi
mov esi, dword [ebp - 0x10]
mov eax, esi
xor eax, 0x9fbf8693
mov edx, esi
and esi, 0x9fbf8693
lea ebx, [esi + esi*2]
add ebx, eax
mov esi, dword [ebp - 0x24]
add ebx, esi
add ebx, 0x6040796e
and esi, 0x6040796c
lea eax, [eax + esi*2]
or edx, 0x6040796c
lea esi, [edx + eax]
add esi, 0x9fbf8695
mov edx, ebx
not edx
mov edi, esi
and edi, edx
mov eax, esi
or eax, ebx
sub eax, edi
xor ebx, esi
add ebx, eax
or edx, esi
add edx, ebx
add edx, 1
mov ebx, dword [ebp - 0x30]
and ebx, 0x6040796c
mov eax, ebx
and eax, ecx
add eax, eax
mov esi, ebx
or esi, ecx
mov edi, esi
sub edi, eax
add edi, esi
xor ecx, ebx
not ecx
add ecx, edi
mov esi, dword [ebp - 0x34]
add ecx, esi
mov eax, 0x6040796c
sub eax, esi
or eax, ebx
add eax, ecx
add eax, 0x9fbf8695
xor eax, edx
mov esi, dword [ebp - 0x20]
lea ecx, [esi + 0x1bbb8618]
mov edx, ecx
and edx, eax
not eax
add edx, esi
add edx, 0x1bbb8618
mov esi, ecx
not esi
and esi, eax
add esi, edx
add esi, eax
xor eax, ecx
sub esi, eax
lea ecx, [esi - 0x45b760d2]
mov eax, ecx
not eax
and eax, 0xd0883d83
lea eax, [eax + esi*2]
add eax, 0x74913e5c
or ecx, 0xd0883d83
sub eax, ecx
add eax, 0x7369fa99
mov ecx, eax
not ecx
mov edx, eax
and edx, 0xd0883d83
mov esi, eax
or esi, 0x2f77c27c
sub edx, esi
not esi
lea esi, [esi + esi*2]
sub edx, esi
xor eax, 0x50883d83
lea eax, [edx + eax*2]
or ecx, 0xd0883d83
add eax, ecx
add eax, 0x2f77c27c
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov eax, dword [0x10067408]
mov ecx, dword [0x1006740c]
mov edx, eax
not edx
lea esi, [eax + edx*2]
or edx, ecx
sub esi, edx
and eax, ecx
add eax, esi
add eax, 0xf6917225
mov ecx, dword [ebp - 0x14]
mov dword [ecx], eax
jmp 0x100155a8
cmp dword [0x100709e0], 0xa
mov edx, dword [0x100709dc]
setl al
lea ecx, [edx + 1]
imul ecx, edx
mov edx, dword [0x10067358]
mov esi, dword [0x1006735c]
mov edi, edx
or edi, esi
not edi
add edi, edx
not esi
or esi, edx
sub edi, esi
and ecx, 1
cmp ecx, edi
setne cl
sete dl
mov ah, al
and ah, dl
or dl, al
add dl, ah
add dl, cl
or al, cl
add al, dl
mov dword [ebx], 0xe58cb894
test al, 1
je 0x10015b45
nop word cs:[eax + eax]
nop dword [eax]
mov ecx, dword [0x100709d8]
cmp dword [0x100709d4], 0xa
setl al
mov edx, ecx
not edx
add edx, 2
imul edx, ecx
test dl, 1
sete cl
mov edx, eax
xor dl, cl
not dl
and al, cl
not al
add al, dl
test al, 1
je 0x10015b10
jmp 0x10013f50
mov dword [ebx], 0xe58cb894
jmp 0x10015ab0
mov esi, dword [0x100709d0]
cmp dword [0x100709cc], 0xa
setge ch
setl cl
lea edx, [esi - 1]
imul edx, esi
mov eax, dword [0x10067330]
mov edi, dword [0x10067334]
mov ebx, eax
xor ebx, edi
lea ebx, [eax + ebx*2]
mov esi, eax
or esi, edi
add esi, esi
sub ebx, esi
mov esi, eax
not esi
or esi, edi
add esi, ebx
and eax, edi
add eax, esi
add eax, 1
and edx, 1
cmp edx, eax
setne al
or al, cl
add al, ch
test al, 1
je 0x10015b50
xor eax, eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 8