404099:	89 35 80 54 40 00    	mov    %esi,0x405480
40409f:	68 74 11 40 00       	push   $0x401174
4040a4:	68 68 11 40 00       	push   $0x401168
4040a9:	e8 5b 01 00 00       	call   0x404209
4040ae:	59                   	pop    %ecx
4040af:	59                   	pop    %ecx
4040b0:	85 c0                	test   %eax,%eax
4040b2:	74 17                	je     0x4040cb
4040b4:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
4040bb:	b8 ff 00 00 00       	mov    $0xff,%eax
4040c0:	e9 34 01 00 00       	jmp    0x4041f9
4040c5:	89 35 34 50 40 00    	mov    %esi,0x405034
4040cb:	39 35 80 54 40 00    	cmp    %esi,0x405480
4040d1:	75 1b                	jne    0x4040ee
4040d3:	68 64 11 40 00       	push   $0x401164
4040d8:	68 4c 11 40 00       	push   $0x40114c
4040dd:	e8 2e 07 00 00       	call   0x404810
4040e2:	59                   	pop    %ecx
4040e3:	59                   	pop    %ecx
4040e4:	c7 05 80 54 40 00 02 	movl   $0x2,0x405480
4040eb:	00 00 00
4040ee:	85 ff                	test   %edi,%edi
4040f0:	75 09                	jne    0x4040fb
4040f2:	33 c0                	xor    %eax,%eax
4040f4:	b9 7c 54 40 00       	mov    $0x40547c,%ecx
4040f9:	87 01                	xchg   %eax,(%ecx)
4040fb:	83 3d 8c 54 40 00 00 	cmpl   $0x0,0x40548c
404102:	74 23                	je     0x404127
404104:	68 8c 54 40 00       	push   $0x40548c
404109:	e8 62 05 00 00       	call   0x404670
40410e:	59                   	pop    %ecx
40410f:	85 c0                	test   %eax,%eax
404111:	74 14                	je     0x404127
404113:	53                   	push   %ebx
404114:	6a 02                	push   $0x2
404116:	53                   	push   %ebx
404117:	8b 35 8c 54 40 00    	mov    0x40548c,%esi
40411d:	8b ce                	mov    %esi,%ecx
40411f:	ff 15 90 61 40 00    	call   *0x406190
404125:	ff d6                	call   *%esi
404127:	a1 84 61 40 00       	mov    0x406184,%eax
40412c:	8b 30                	mov    (%eax),%esi
40412e:	89 75 e4             	mov    %esi,-0x1c(%ebp)
404131:	8b 7d e0             	mov    -0x20(%ebp),%edi
404134:	8a 0e                	mov    (%esi),%cl
404136:	80 f9 20             	cmp    $0x20,%cl
404139:	77 4a                	ja     0x404185
40413b:	84 c9                	test   %cl,%cl
40413d:	74 15                	je     0x404154
40413f:	85 ff                	test   %edi,%edi
404141:	75 42                	jne    0x404185
404143:	84 c9                	test   %cl,%cl
404145:	74 0d                	je     0x404154
404147:	80 f9 20             	cmp    $0x20,%cl
40414a:	77 08                	ja     0x404154
40414c:	46                   	inc    %esi
40414d:	89 75 e4             	mov    %esi,-0x1c(%ebp)
404150:	8a 0e                	mov    (%esi),%cl
404152:	eb ef                	jmp    0x404143
404154:	f6 45 c4 01          	testb  $0x1,-0x3c(%ebp)
404158:	74 06                	je     0x404160
40415a:	0f b7 45 c8          	movzwl -0x38(%ebp),%eax
40415e:	eb 03                	jmp    0x404163
404160:	6a 0a                	push   $0xa
404162:	58                   	pop    %eax
404163:	50                   	push   %eax
404164:	56                   	push   %esi
404165:	53                   	push   %ebx
404166:	68 00 00 40 00       	push   $0x400000
40416b:	e8 07 f3 ff ff       	call   0x403477
404170:	a3 30 50 40 00       	mov    %eax,0x405030
404175:	83 3d 48 50 40 00 00 	cmpl   $0x0,0x405048
40417c:	75 60                	jne    0x4041de
40417e:	50                   	push   %eax
40417f:	ff 15 44 61 40 00    	call   *0x406144
404185:	80 f9 22             	cmp    $0x22,%cl
404188:	75 0c                	jne    0x404196
40418a:	33 c0                	xor    %eax,%eax
40418c:	85 ff                	test   %edi,%edi
40418e:	0f 94 c0             	sete   %al
404191:	8b f8                	mov    %eax,%edi
404193:	89 7d e0             	mov    %edi,-0x20(%ebp)
404196:	0f b6 c1             	movzbl %cl,%eax
404199:	50                   	push   %eax
40419a:	ff 15 5c 61 40 00    	call   *0x40615c
4041a0:	59                   	pop    %ecx
4041a1:	85 c0                	test   %eax,%eax
4041a3:	74 04                	je     0x4041a9
4041a5:	46                   	inc    %esi
4041a6:	89 75 e4             	mov    %esi,-0x1c(%ebp)
4041a9:	46                   	inc    %esi
4041aa:	89 75 e4             	mov    %esi,-0x1c(%ebp)
4041ad:	eb 85                	jmp    0x404134
4041af:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4041b2:	8b 01                	mov    (%ecx),%eax
4041b4:	8b 00                	mov    (%eax),%eax
4041b6:	89 45 dc             	mov    %eax,-0x24(%ebp)
4041b9:	51                   	push   %ecx
4041ba:	50                   	push   %eax
4041bb:	e8 8e 03 00 00       	call   0x40454e
4041c0:	59                   	pop    %ecx
4041c1:	59                   	pop    %ecx
4041c2:	c3                   	ret
4041c3:	8b 65 e8             	mov    -0x18(%ebp),%esp
4041c6:	8b 45 dc             	mov    -0x24(%ebp),%eax
4041c9:	a3 30 50 40 00       	mov    %eax,0x405030
4041ce:	83 3d 48 50 40 00 00 	cmpl   $0x0,0x405048
4041d5:	75 07                	jne    0x4041de
4041d7:	50                   	push   %eax
4041d8:	ff 15 30 61 40 00    	call   *0x406130
4041de:	83 3d 34 50 40 00 00 	cmpl   $0x0,0x405034
4041e5:	75 0b                	jne    0x4041f2
4041e7:	ff 15 3c 61 40 00    	call   *0x40613c
4041ed:	a1 30 50 40 00       	mov    0x405030,%eax
4041f2:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
4041f9:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4041fc:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
404203:	59                   	pop    %ecx
404204:	5f                   	pop    %edi
404205:	5e                   	pop    %esi
404206:	5b                   	pop    %ebx
404207:	c9                   	leave
404208:	c3                   	ret
404209:	8b ff                	mov    %edi,%edi
40420b:	55                   	push   %ebp
40420c:	8b ec                	mov    %esp,%ebp
40420e:	56                   	push   %esi
40420f:	8b 75 08             	mov    0x8(%ebp),%esi
404212:	33 c0                	xor    %eax,%eax
404214:	3b 75 0c             	cmp    0xc(%ebp),%esi
404217:	73 1e                	jae    0x404237
404219:	57                   	push   %edi
40421a:	85 c0                	test   %eax,%eax
40421c:	75 18                	jne    0x404236
40421e:	8b 3e                	mov    (%esi),%edi
404220:	85 ff                	test   %edi,%edi
404222:	74 0a                	je     0x40422e
404224:	8b cf                	mov    %edi,%ecx
404226:	ff 15 90 61 40 00    	call   *0x406190
40422c:	ff d7                	call   *%edi
40422e:	83 c6 04             	add    $0x4,%esi
404231:	3b 75 0c             	cmp    0xc(%ebp),%esi
404234:	72 e4                	jb     0x40421a
404236:	5f                   	pop    %edi
404237:	5e                   	pop    %esi
404238:	5d                   	pop    %ebp
404239:	c3                   	ret
40423a:	b8 4d 5a 00 00       	mov    $0x5a4d,%eax
40423f:	66 39 05 00 00 40 00 	cmp    %ax,0x400000
404246:	75 55                	jne    0x40429d
404248:	8b 0d 3c 00 40 00    	mov    0x40003c,%ecx
40424e:	81 b9 00 00 40 00 50 	cmpl   $0x4550,0x400000(%ecx)
404255:	45 00 00
404258:	75 43                	jne    0x40429d
40425a:	0f b7 81 18 00 40 00 	movzwl 0x400018(%ecx),%eax
404261:	ba 0b 01 00 00       	mov    $0x10b,%edx
404266:	66 3b c2             	cmp    %dx,%ax
404269:	74 1f                	je     0x40428a
40426b:	ba 0b 02 00 00       	mov    $0x20b,%edx
404270:	66 3b c2             	cmp    %dx,%ax
404273:	75 28                	jne    0x40429d
404275:	83 b9 84 00 40 00 0e 	cmpl   $0xe,0x400084(%ecx)
40427c:	76 1f                	jbe    0x40429d
40427e:	33 c0                	xor    %eax,%eax
404280:	39 81 f8 00 40 00    	cmp    %eax,0x4000f8(%ecx)
404286:	0f 95 c0             	setne  %al
404289:	c3                   	ret
40428a:	83 b9 74 00 40 00 0e 	cmpl   $0xe,0x400074(%ecx)
404291:	76 0a                	jbe    0x40429d
404293:	33 c0                	xor    %eax,%eax
404295:	39 81 e8 00 40 00    	cmp    %eax,0x4000e8(%ecx)
40429b:	eb e9                	jmp    0x404286
40429d:	33 c0                	xor    %eax,%eax
40429f:	c3                   	ret
4042a0:	3b 0d 14 50 40 00    	cmp    0x405014,%ecx
4042a6:	75 03                	jne    0x4042ab
4042a8:	c2 00 00             	ret    $0x0
4042ab:	e9 2a 00 00 00       	jmp    0x4042da
4042b0:	8b ff                	mov    %edi,%edi
4042b2:	55                   	push   %ebp
4042b3:	8b ec                	mov    %esp,%ebp
4042b5:	6a 00                	push   $0x0
4042b7:	ff 15 e8 60 40 00    	call   *0x4060e8
4042bd:	ff 75 08             	push   0x8(%ebp)
4042c0:	ff 15 ec 60 40 00    	call   *0x4060ec
4042c6:	68 09 04 00 c0       	push   $0xc0000409
4042cb:	ff 15 fc 60 40 00    	call   *0x4060fc
4042d1:	50                   	push   %eax
4042d2:	ff 15 f4 60 40 00    	call   *0x4060f4
4042d8:	5d                   	pop    %ebp
4042d9:	c3                   	ret
4042da:	8b ff                	mov    %edi,%edi
4042dc:	55                   	push   %ebp
4042dd:	8b ec                	mov    %esp,%ebp
4042df:	81 ec 24 03 00 00    	sub    $0x324,%esp
4042e5:	a3 50 51 40 00       	mov    %eax,0x405150
4042ea:	89 0d 4c 51 40 00    	mov    %ecx,0x40514c
4042f0:	89 15 48 51 40 00    	mov    %edx,0x405148
4042f6:	89 1d 44 51 40 00    	mov    %ebx,0x405144
4042fc:	89 35 40 51 40 00    	mov    %esi,0x405140
404302:	89 3d 3c 51 40 00    	mov    %edi,0x40513c
404308:	66 8c 15 68 51 40 00 	data16 mov %ss,0x405168
40430f:	66 8c 0d 5c 51 40 00 	data16 mov %cs,0x40515c
404316:	66 8c 1d 38 51 40 00 	data16 mov %ds,0x405138
40431d:	66 8c 05 34 51 40 00 	data16 mov %es,0x405134
404324:	66 8c 25 30 51 40 00 	data16 mov %fs,0x405130
40432b:	66 8c 2d 2c 51 40 00 	data16 mov %gs,0x40512c
404332:	9c                   	pushf
404333:	8f 05 60 51 40 00    	pop    0x405160
404339:	8b 45 00             	mov    0x0(%ebp),%eax
40433c:	a3 54 51 40 00       	mov    %eax,0x405154
404341:	8b 45 04             	mov    0x4(%ebp),%eax
404344:	a3 58 51 40 00       	mov    %eax,0x405158
404349:	8d 45 08             	lea    0x8(%ebp),%eax
40434c:	a3 64 51 40 00       	mov    %eax,0x405164
404351:	8b 85 dc fc ff ff    	mov    -0x324(%ebp),%eax
404357:	c7 05 a0 50 40 00 01 	movl   $0x10001,0x4050a0
40435e:	00 01 00
404361:	a1 58 51 40 00       	mov    0x405158,%eax
404366:	a3 5c 50 40 00       	mov    %eax,0x40505c
40436b:	c7 05 50 50 40 00 09 	movl   $0xc0000409,0x405050
404372:	04 00 c0
404375:	c7 05 54 50 40 00 01 	movl   $0x1,0x405054
40437c:	00 00 00
40437f:	c7 05 60 50 40 00 03 	movl   $0x3,0x405060
404386:	00 00 00
404389:	6a 04                	push   $0x4
40438b:	58                   	pop    %eax
40438c:	6b c0 00             	imul   $0x0,%eax,%eax
40438f:	c7 80 64 50 40 00 02 	movl   $0x2,0x405064(%eax)
404396:	00 00 00
404399:	6a 04                	push   $0x4
40439b:	58                   	pop    %eax
40439c:	c1 e0 00             	shl    $0x0,%eax
40439f:	8b 0d 14 50 40 00    	mov    0x405014,%ecx
4043a5:	89 88 64 50 40 00    	mov    %ecx,0x405064(%eax)
4043ab:	6a 04                	push   $0x4
4043ad:	58                   	pop    %eax
4043ae:	d1 e0                	shl    $1,%eax
4043b0:	8b 0d 18 50 40 00    	mov    0x405018,%ecx
4043b6:	89 88 64 50 40 00    	mov    %ecx,0x405064(%eax)
4043bc:	6a 04                	push   $0x4
4043be:	58                   	pop    %eax
4043bf:	6b c0 00             	imul   $0x0,%eax,%eax
4043c2:	8b 0d 14 50 40 00    	mov    0x405014,%ecx
4043c8:	89 4c 05 f8          	mov    %ecx,-0x8(%ebp,%eax,1)
4043cc:	6a 04                	push   $0x4
4043ce:	58                   	pop    %eax
4043cf:	c1 e0 00             	shl    $0x0,%eax
4043d2:	8b 0d 18 50 40 00    	mov    0x405018,%ecx
4043d8:	89 4c 05 f8          	mov    %ecx,-0x8(%ebp,%eax,1)
4043dc:	68 00 10 40 00       	push   $0x401000
4043e1:	e8 ca fe ff ff       	call   0x4042b0
4043e6:	c9                   	leave
4043e7:	c3                   	ret
4043e8:	6a 08                	push   $0x8
4043ea:	b8 51 49 40 00       	mov    $0x404951,%eax
4043ef:	e8 d3 04 00 00       	call   0x4048c7
4043f4:	ff 75 08             	push   0x8(%ebp)
4043f7:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4043fb:	e8 3b fb ff ff       	call   0x403f3b
404400:	59                   	pop    %ecx
404401:	eb 0d                	jmp    0x404410
404403:	83 65 ec 00          	andl   $0x0,-0x14(%ebp)
404407:	b8 0d 44 40 00       	mov    $0x40440d,%eax
40440c:	c3                   	ret
40440d:	8b 45 ec             	mov    -0x14(%ebp),%eax
404410:	e8 9e 04 00 00       	call   0x4048b3
404415:	c3                   	ret
404416:	6a 14                	push   $0x14
404418:	68 40 4a 40 00       	push   $0x404a40
40441d:	e8 f6 03 00 00       	call   0x404818
404422:	83 65 dc 00          	andl   $0x0,-0x24(%ebp)
404426:	a1 88 54 40 00       	mov    0x405488,%eax
40442b:	89 45 e4             	mov    %eax,-0x1c(%ebp)
40442e:	83 f8 ff             	cmp    $0xffffffff,%eax
404431:	75 16                	jne    0x404449
404433:	ff 75 08             	push   0x8(%ebp)
404436:	8b 35 50 61 40 00    	mov    0x406150,%esi
40443c:	8b ce                	mov    %esi,%ecx
40443e:	ff 15 90 61 40 00    	call   *0x406190
404444:	ff d6                	call   *%esi
404446:	59                   	pop    %ecx
404447:	eb 54                	jmp    0x40449d
404449:	6a 08                	push   $0x8
40444b:	e8 b3 04 00 00       	call   0x404903
404450:	59                   	pop    %ecx
404451:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
404455:	a1 88 54 40 00       	mov    0x405488,%eax
40445a:	89 45 e4             	mov    %eax,-0x1c(%ebp)
40445d:	a1 84 54 40 00       	mov    0x405484,%eax
404462:	89 45 e0             	mov    %eax,-0x20(%ebp)
404465:	8d 45 e0             	lea    -0x20(%ebp),%eax
404468:	50                   	push   %eax
404469:	8d 45 e4             	lea    -0x1c(%ebp),%eax
40446c:	50                   	push   %eax
40446d:	ff 75 08             	push   0x8(%ebp)
404470:	e8 9a 04 00 00       	call   0x40490f
404475:	83 c4 0c             	add    $0xc,%esp
404478:	8b f0                	mov    %eax,%esi
40447a:	89 75 dc             	mov    %esi,-0x24(%ebp)
40447d:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
404480:	89 0d 88 54 40 00    	mov    %ecx,0x405488
404486:	8b 4d e0             	mov    -0x20(%ebp),%ecx
404489:	89 0d 84 54 40 00    	mov    %ecx,0x405484
40448f:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
404496:	e8 15 00 00 00       	call   0x4044b0
40449b:	8b c6                	mov    %esi,%eax
40449d:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4044a0:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4044a7:	59                   	pop    %ecx
4044a8:	5f                   	pop    %edi
4044a9:	5e                   	pop    %esi
4044aa:	5b                   	pop    %ebx
4044ab:	c9                   	leave
4044ac:	c3                   	ret
4044ad:	8b 75 dc             	mov    -0x24(%ebp),%esi
4044b0:	6a 08                	push   $0x8
4044b2:	e8 52 04 00 00       	call   0x404909
4044b7:	59                   	pop    %ecx
4044b8:	c3                   	ret
4044b9:	8b ff                	mov    %edi,%edi
4044bb:	55                   	push   %ebp
4044bc:	8b ec                	mov    %esp,%ebp
4044be:	ff 75 08             	push   0x8(%ebp)
4044c1:	e8 50 ff ff ff       	call   0x404416
4044c6:	f7 d8                	neg    %eax
4044c8:	59                   	pop    %ecx
4044c9:	1b c0                	sbb    %eax,%eax
4044cb:	f7 d8                	neg    %eax
4044cd:	48                   	dec    %eax
4044ce:	5d                   	pop    %ebp
4044cf:	c3                   	ret
4044d0:	ff 25 64 61 40 00    	jmp    *0x406164
4044d6:	ff 25 60 61 40 00    	jmp    *0x406160
4044dc:	ff 25 28 61 40 00    	jmp    *0x406128
4044e2:	cc                   	int3
4044e3:	cc                   	int3
4044e4:	cc                   	int3
4044e5:	cc                   	int3
4044e6:	cc                   	int3
4044e7:	cc                   	int3
4044e8:	cc                   	int3
4044e9:	cc                   	int3
4044ea:	cc                   	int3
4044eb:	cc                   	int3
4044ec:	cc                   	int3
4044ed:	cc                   	int3
4044ee:	cc                   	int3
4044ef:	cc                   	int3