406ea4:	76 0e                	jbe    0x406eb4
406ea6:	8a 02                	mov    (%edx),%al
406ea8:	42                   	inc    %edx
406ea9:	88 07                	mov    %al,(%edi)
406eab:	47                   	inc    %edi
406eac:	49                   	dec    %ecx
406ead:	75 f7                	jne    0x406ea6
406eaf:	e9 42 ff ff ff       	jmp    0x406df6
406eb4:	8b 02                	mov    (%edx),%eax
406eb6:	83 c2 04             	add    $0x4,%edx
406eb9:	89 07                	mov    %eax,(%edi)
406ebb:	83 c7 04             	add    $0x4,%edi
406ebe:	83 e9 04             	sub    $0x4,%ecx
406ec1:	77 f1                	ja     0x406eb4
406ec3:	01 cf                	add    %ecx,%edi
406ec5:	e9 2c ff ff ff       	jmp    0x406df6
406eca:	5e                   	pop    %esi
406ecb:	89 f7                	mov    %esi,%edi
406ecd:	b9 00 b8 00 00       	mov    $0xb800,%ecx
406ed2:	eb 31                	jmp    0x406f05
406ed4:	8a 07                	mov    (%edi),%al
406ed6:	47                   	inc    %edi
406ed7:	3c 80                	cmp    $0x80,%al
406ed9:	72 0a                	jb     0x406ee5
406edb:	3c 8f                	cmp    $0x8f,%al
406edd:	77 06                	ja     0x406ee5
406edf:	80 7f fe 0f          	cmpb   $0xf,-0x2(%edi)
406ee3:	74 06                	je     0x406eeb
406ee5:	2c e8                	sub    $0xe8,%al
406ee7:	3c 01                	cmp    $0x1,%al
406ee9:	77 24                	ja     0x406f0f
406eeb:	83 f9 04             	cmp    $0x4,%ecx
406eee:	72 24                	jb     0x406f14
406ef0:	8b 07                	mov    (%edi),%eax
406ef2:	2c 05                	sub    $0x5,%al
406ef4:	75 19                	jne    0x406f0f
406ef6:	86 c4                	xchg   %al,%ah
406ef8:	c1 c0 10             	rol    $0x10,%eax
406efb:	86 c4                	xchg   %al,%ah
406efd:	29 f8                	sub    %edi,%eax
406eff:	01 f0                	add    %esi,%eax
406f01:	83 e9 04             	sub    $0x4,%ecx
406f04:	ab                   	stos   %eax,%es:(%edi)
406f05:	83 e9 01             	sub    $0x1,%ecx
406f08:	72 0a                	jb     0x406f14
406f0a:	8a 07                	mov    (%edi),%al
406f0c:	47                   	inc    %edi
406f0d:	eb d6                	jmp    0x406ee5
406f0f:	83 e9 01             	sub    $0x1,%ecx
406f12:	73 c0                	jae    0x406ed4
406f14:	8d be 00 20 01 00    	lea    0x12000(%esi),%edi
406f1a:	8b 07                	mov    (%edi),%eax
406f1c:	09 c0                	or     %eax,%eax
406f1e:	74 3c                	je     0x406f5c
406f20:	8b 5f 04             	mov    0x4(%edi),%ebx
406f23:	8d 84 30 00 50 01 00 	lea    0x15000(%eax,%esi,1),%eax
406f2a:	01 f3                	add    %esi,%ebx
406f2c:	50                   	push   %eax
406f2d:	83 c7 08             	add    $0x8,%edi
406f30:	ff 96 6c 50 01 00    	call   *0x1506c(%esi)
406f36:	95                   	xchg   %eax,%ebp
406f37:	8a 07                	mov    (%edi),%al
406f39:	47                   	inc    %edi
406f3a:	08 c0                	or     %al,%al
406f3c:	74 dc                	je     0x406f1a
406f3e:	89 f9                	mov    %edi,%ecx
406f40:	57                   	push   %edi
406f41:	48                   	dec    %eax
406f42:	f2 ae                	repnz scas %es:(%edi),%al
406f44:	55                   	push   %ebp
406f45:	ff 96 74 50 01 00    	call   *0x15074(%esi)
406f4b:	09 c0                	or     %eax,%eax
406f4d:	74 07                	je     0x406f56
406f4f:	89 03                	mov    %eax,(%ebx)
406f51:	83 c3 04             	add    $0x4,%ebx
406f54:	eb e1                	jmp    0x406f37
406f56:	ff 96 70 50 01 00    	call   *0x15070(%esi)
406f5c:	83 c7 04             	add    $0x4,%edi
406f5f:	8d 5e fc             	lea    -0x4(%esi),%ebx
406f62:	31 c0                	xor    %eax,%eax
406f64:	8a 07                	mov    (%edi),%al
406f66:	47                   	inc    %edi
406f67:	09 c0                	or     %eax,%eax
406f69:	74 22                	je     0x406f8d
406f6b:	3c ef                	cmp    $0xef,%al
406f6d:	77 11                	ja     0x406f80
406f6f:	01 c3                	add    %eax,%ebx
406f71:	8b 03                	mov    (%ebx),%eax
406f73:	86 c4                	xchg   %al,%ah
406f75:	c1 c0 10             	rol    $0x10,%eax
406f78:	86 c4                	xchg   %al,%ah
406f7a:	01 f0                	add    %esi,%eax
406f7c:	89 03                	mov    %eax,(%ebx)
406f7e:	eb e2                	jmp    0x406f62
406f80:	24 0f                	and    $0xf,%al
406f82:	c1 e0 10             	shl    $0x10,%eax
406f85:	66 8b 07             	mov    (%edi),%ax
406f88:	83 c7 02             	add    $0x2,%edi
406f8b:	eb e2                	jmp    0x406f6f
406f8d:	8b ae 78 50 01 00    	mov    0x15078(%esi),%ebp
406f93:	8d be 00 f0 ff ff    	lea    -0x1000(%esi),%edi
406f99:	bb 00 10 00 00       	mov    $0x1000,%ebx
406f9e:	50                   	push   %eax
406f9f:	54                   	push   %esp
406fa0:	6a 04                	push   $0x4
406fa2:	53                   	push   %ebx
406fa3:	57                   	push   %edi
406fa4:	ff d5                	call   *%ebp
406fa6:	8d 87 f7 01 00 00    	lea    0x1f7(%edi),%eax
406fac:	80 20 7f             	andb   $0x7f,(%eax)
406faf:	80 60 28 7f          	andb   $0x7f,0x28(%eax)
406fb3:	58                   	pop    %eax
406fb4:	50                   	push   %eax
406fb5:	54                   	push   %esp
406fb6:	50                   	push   %eax
406fb7:	53                   	push   %ebx
406fb8:	57                   	push   %edi
406fb9:	ff d5                	call   *%ebp
406fbb:	58                   	pop    %eax
406fbc:	61                   	popa
406fbd:	8d 44 24 80          	lea    -0x80(%esp),%eax
406fc1:	6a 00                	push   $0x0
406fc3:	39 c4                	cmp    %eax,%esp
406fc5:	75 fa                	jne    0x406fc1
406fc7:	83 ec 80             	sub    $0xffffff80,%esp
406fca:	e9 03 0e ff ff       	jmp    0x3f7dd2
406fcf:	00 48 00             	add    %cl,0x0(%eax)
40700a:	00 00                	add    %al,(%eax)
40700c:	60                   	pusha
40700d:	da 40 00             	fiaddl 0x0(%eax)
407010:	f0 4e                	lock dec %esi
407012:	40                   	inc    %eax
407013:	00 03                	add    %al,(%ebx)
407209:	00 00                	add    %al,(%eax)
40720b:	00 90 60 01 00 64    	add    %dl,0x64000160(%eax)
407211:	60                   	pusha
407212:	01 00                	add    %eax,(%eax)
407220:	9d                   	popf
407221:	60                   	pusha
407222:	01 00                	add    %eax,(%eax)
407224:	6c                   	insb   (%dx),%es:(%edi)
407225:	60                   	pusha
407226:	01 00                	add    %eax,(%eax)
407234:	aa                   	stos   %al,%es:(%edi)
407235:	60                   	pusha
407236:	01 00                	add    %eax,(%eax)
407238:	80 60 01 00          	andb   $0x0,0x1(%eax)
407248:	b4 60                	mov    $0x60,%ah
40724a:	01 00                	add    %eax,(%eax)
40724c:	88 60 01             	mov    %ah,0x1(%eax)
407263:	00 c0                	add    %al,%al
407265:	60                   	pusha
407266:	01 00                	add    %eax,(%eax)
407268:	00 00                	add    %al,(%eax)
40726a:	00 00                	add    %al,(%eax)
40726c:	ec                   	in     (%dx),%al
40726d:	60                   	pusha
40726e:	01 00                	add    %eax,(%eax)
407270:	ce                   	into
407271:	60                   	pusha
407272:	01 00                	add    %eax,(%eax)
407274:	dc 60 01             	fsubl  0x1(%eax)
407277:	00 fa                	add    %bh,%dl
407279:	60                   	pusha
40727a:	01 00                	add    %eax,(%eax)
40727c:	00 00                	add    %al,(%eax)
40727e:	00 00                	add    %al,(%eax)
407280:	0a 61 01             	or     0x1(%ecx),%ah
407283:	00 00                	add    %al,(%eax)
407285:	00 00                	add    %al,(%eax)
407287:	00 14 61             	add    %dl,(%ecx,%eiz,2)
40728a:	01 00                	add    %eax,(%eax)
40728c:	00 00                	add    %al,(%eax)
40728e:	00 00                	add    %al,(%eax)
407290:	41                   	inc    %ecx
407291:	44                   	inc    %esp
407292:	56                   	push   %esi
407293:	41                   	inc    %ecx
407294:	50                   	push   %eax
407295:	49                   	dec    %ecx
407296:	33 32                	xor    (%edx),%esi
407298:	2e 64 6c             	cs fs insb (%dx),%es:(%edi)
40729b:	6c                   	insb   (%dx),%es:(%edi)
40729c:	00 4b 45             	add    %cl,0x45(%ebx)
40729f:	52                   	push   %edx
4072a0:	4e                   	dec    %esi
4072a1:	45                   	inc    %ebp
4072a2:	4c                   	dec    %esp
4072a3:	33 32                	xor    (%edx),%esi
4072a5:	2e 44                	cs inc %esp
4072a7:	4c                   	dec    %esp
4072a8:	4c                   	dec    %esp
4072a9:	00 6e 74             	add    %ch,0x74(%esi)
4072ac:	64 6c                	fs insb (%dx),%es:(%edi)
4072ae:	6c                   	insb   (%dx),%es:(%edi)
4072af:	2e 64 6c             	cs fs insb (%dx),%es:(%edi)
4072b2:	6c                   	insb   (%dx),%es:(%edi)
4072b3:	00 55 53             	add    %dl,0x53(%ebp)
4072b6:	45                   	inc    %ebp
4072b7:	52                   	push   %edx
4072b8:	33 32                	xor    (%edx),%esi
4072ba:	2e 64 6c             	cs fs insb (%dx),%es:(%edi)
4072bd:	6c                   	insb   (%dx),%es:(%edi)
4072be:	00 00                	add    %al,(%eax)
4072c0:	00 00                	add    %al,(%eax)
4072c2:	52                   	push   %edx
4072c3:	65 67 43             	gs addr16 inc %ebx
4072c6:	6c                   	insb   (%dx),%es:(%edi)
4072c7:	6f                   	outsl  %ds:(%esi),(%dx)
4072c8:	73 65                	jae    0x40732f
4072ca:	4b                   	dec    %ebx
4072cb:	65 79 00             	gs jns 0x4072ce
4072ce:	00 00                	add    %al,(%eax)
4072d0:	45                   	inc    %ebp
4072d1:	78 69                	js     0x40733c
4072d3:	74 50                	je     0x407325
4072d5:	72 6f                	jb     0x407346
4072d7:	63 65 73             	arpl   %esp,0x73(%ebp)
4072da:	73 00                	jae    0x4072dc
4072dc:	00 00                	add    %al,(%eax)
4072de:	47                   	inc    %edi
4072df:	65 74 50             	gs je  0x407332
4072e2:	72 6f                	jb     0x407353
4072e4:	63 41 64             	arpl   %eax,0x64(%ecx)
4072e7:	64 72 65             	fs jb  0x40734f
4072ea:	73 73                	jae    0x40735f
4072ec:	00 00                	add    %al,(%eax)
4072ee:	4c                   	dec    %esp
4072ef:	6f                   	outsl  %ds:(%esi),(%dx)
4072f0:	61                   	popa
4072f1:	64 4c                	fs dec %esp
4072f3:	69 62 72 61 72 79 41 	imul   $0x41797261,0x72(%edx),%esp
4072fa:	00 00                	add    %al,(%eax)
4072fc:	56                   	push   %esi
4072fd:	69 72 74 75 61 6c 50 	imul   $0x506c6175,0x74(%edx),%esi
407304:	72 6f                	jb     0x407375
407306:	74 65                	je     0x40736d
407308:	63 74 00 00          	arpl   %esi,0x0(%eax,%eax,1)
40730c:	4e                   	dec    %esi
40730d:	74 43                	je     0x407352
40730f:	6c                   	insb   (%dx),%es:(%edi)
407310:	6f                   	outsl  %ds:(%esi),(%dx)
407311:	73 65                	jae    0x407378
407313:	00 00                	add    %al,(%eax)
407315:	00 77 73             	add    %dh,0x73(%edi)
407318:	70 72                	jo     0x40738c
40731a:	69 6e 74 66 57 00 00 	imul   $0x5766,0x74(%esi),%ebp
407321:	40                   	inc    %eax
407322:	01 00                	add    %eax,(%eax)
407324:	0c 00                	or     $0x0,%al
407326:	00 00                	add    %al,(%eax)
407328:	e2 3d                	loop   0x407367
40732a:	00 00                	add    %al,(%eax)
40732c:	00 50 01             	add    %dl,0x1(%eax)
40732f:	00 0c 00             	add    %cl,(%eax,%eax,1)
407332:	00 00                	add    %al,(%eax)
407334:	0c 30                	or     $0x30,%al
407336:	10 30                	adc    %dh,(%eax)
407338:	00 40 01             	add    %al,0x1(%eax)
40733b:	00 0c 00             	add    %cl,(%eax,%eax,1)
40733e:	00 00                	add    %al,(%eax)
407340:	e2 3d                	loop   0x40737f
407342:	00 00                	add    %al,(%eax)
407344:	00 50 01             	add    %dl,0x1(%eax)
407347:	00 0c 00             	add    %cl,(%eax,%eax,1)
40734a:	00 00                	add    %al,(%eax)
40734c:	0c 30                	or     $0x30,%al
40734e:	10 30                	adc    %dh,(%eax)
407400:	3a 72 6d             	cmp    0x6d(%edx),%dh
407403:	7b dd                	jnp    0x4073e2
407405:	e4 bf                	in     $0xbf,%al
407407:	ec                   	in     (%dx),%al
407408:	6f                   	outsl  %ds:(%esi),(%dx)
407409:	46                   	inc    %esi
40740a:	1c e2                	sbb    $0xe2,%al
40740c:	e4 31                	in     $0x31,%al
40740e:	ab                   	stos   %eax,%es:(%edi)
40740f:	25 54 39 9a fb       	and    $0xfb9a3954,%eax
407414:	9c                   	pushf
407415:	e4 65                	in     $0x65,%al
407417:	bb a3 58 71 b0       	mov    $0xb07158a3,%ebx
40741c:	c8 12 67 69          	enter  $0x6712,$0x69
407420:	b9 28 b0 cb 8d       	mov    $0x8dcbb028,%ecx
407425:	9d                   	popf
407426:	6a 7b                	push   $0x7b
407428:	e3 5c                	jecxz  0x407486
40742a:	89 03                	mov    %eax,(%ebx)
40742c:	a3 19 76 2e ae       	mov    %eax,0xae2e7619
407431:	00 bf 97 7f 16 80    	add    %bh,-0x7fe98069(%edi)
407437:	11 3b                	adc    %edi,(%ebx)
407439:	80 f5 70             	xor    $0x70,%ch
40743c:	26 b2 b0             	es mov $0xb0,%dl
40743f:	da 8e 1c a9 9e 0f    	fimull 0xf9ea91c(%esi)
407445:	4c                   	dec    %esp
407446:	b5 4e                	mov    $0x4e,%ch
407448:	48                   	dec    %eax
407449:	5c                   	pop    %esp
40744a:	9f                   	lahf
40744b:	5d                   	pop    %ebp
40744c:	91                   	xchg   %eax,%ecx
40744d:	05 ad f6 39 44       	add    $0x4439f6ad,%eax
407452:	a1 b0 a6 70 e3       	mov    0xe370a6b0,%eax
407457:	40                   	inc    %eax
407458:	1e                   	push   %ds
407459:	78 11                	js     0x40746c
40745b:	09 27                	or     %esp,(%edi)
40745d:	25 e5 50 a5 cd       	and    $0xcda550e5,%eax
407462:	01 74 b1 bd          	add    %esi,-0x43(%ecx,%esi,4)
407466:	de 08                	fimuls (%eax)
407468:	2c 6c                	sub    $0x6c,%al
40746a:	5c                   	pop    %esp
40746b:	48                   	dec    %eax
40746c:	d1 05 73 b0 59 2d    	roll   $1,0x2d59b073
407472:	a9 1f d0 7b 00       	test   $0x7bd01f,%eax
407477:	cc                   	int3
407478:	72 a3                	jb     0x40741d
40747a:	dc 4f 43             	fmull  0x43(%edi)
40747d:	a1 9f 3e ac a0       	mov    0xa0ac3e9f,%eax
407482:	56                   	push   %esi
407483:	77 f4                	ja     0x407479
407485:	f3 97                	repz xchg %eax,%edi
407487:	46                   	inc    %esi
407488:	84 e1                	test   %ah,%cl
40748a:	55                   	push   %ebp
40748b:	e4 37                	in     $0x37,%al
40748d:	80 bd 0e 32 c1 8b b1 	cmpb   $0xb1,-0x743ecdf2(%ebp)
407494:	f4                   	hlt
407495:	b0 ac                	mov    $0xac,%al
407497:	03 a9 31 79 26 52    	add    0x52267931(%ecx),%ebp
40749d:	14 4b                	adc    $0x4b,%al
40749f:	92                   	xchg   %eax,%edx
4074a0:	db 07                	fildl  (%edi)
4074a2:	b1 37                	mov    $0x37,%cl
4074a4:	89 1b                	mov    %ebx,(%ebx)
4074a6:	83 9c 42 0d 7c 88 ed 	sbbl   $0x1b,-0x127783f3(%edx,%eax,2)
4074ad:	1b
4074ae:	b3 bd                	mov    $0xbd,%bl
4074b0:	9c                   	pushf
4074b1:	c5 60 a3             	lds    -0x5d(%eax),%esp
4074b4:	83 fc f7             	cmp    $0xfffffff7,%esp
4074b7:	a8 4a                	test   $0x4a,%al
4074b9:	a1 4c b4 c4 b3       	mov    0xb3c4b44c,%eax
4074be:	8e 35 da 7c 5c b8    	mov    0xb85c7cda,%?
4074c4:	d8 94 0d d2 31 c2 cc 	fcoms  -0x333dce2e(%ebp,%ecx,1)
4074cb:	ab                   	stos   %eax,%es:(%edi)
4074cc:	73 f5                	jae    0x4074c3
4074ce:	46                   	inc    %esi
4074cf:	b6 17                	mov    $0x17,%dh
4074d1:	39 b4 9c a0 1c 6e c9 	cmp    %esi,-0x3691e360(%esp,%ebx,4)
4074d8:	cc                   	int3