40305c:	83 e8 00             	sub    $0x0,%eax
40305f:	74 14                	je     0x403075
403061:	48                   	dec    %eax
403062:	74 0a                	je     0x40306e
403064:	48                   	dec    %eax
403065:	75 0e                	jne    0x403075
403067:	b8 00 01 00 00       	mov    $0x100,%eax
40306c:	eb 09                	jmp    0x403077
40306e:	b8 00 02 00 00       	mov    $0x200,%eax
403073:	eb 02                	jmp    0x403077
403075:	33 c0                	xor    %eax,%eax
403077:	56                   	push   %esi
403078:	6a 00                	push   $0x0
40307a:	8d 4c 24 0c          	lea    0xc(%esp),%ecx
40307e:	51                   	push   %ecx
40307f:	6a 00                	push   $0x0
403081:	0d 0e 00 02 00       	or     $0x2000e,%eax
403086:	50                   	push   %eax
403087:	6a 00                	push   $0x0
403089:	6a 00                	push   $0x0
40308b:	6a 00                	push   $0x0
40308d:	68 10 c1 45 00       	push   $0x45c110
403092:	68 02 00 00 80       	push   $0x80000002
403097:	ff 15 6c 33 47 00    	call   *0x47336c
40309d:	8b 54 24 08          	mov    0x8(%esp),%edx
4030a1:	52                   	push   %edx
4030a2:	8b f0                	mov    %eax,%esi
4030a4:	ff 15 68 33 47 00    	call   *0x473368
4030aa:	8b c6                	mov    %esi,%eax
4030ac:	5e                   	pop    %esi
4030ad:	83 c4 08             	add    $0x8,%esp
4030b0:	c3                   	ret
4030b1:	cc                   	int3
4030b2:	cc                   	int3
4030b3:	cc                   	int3
4030b4:	cc                   	int3
4030b5:	cc                   	int3
4030b6:	cc                   	int3
4030b7:	cc                   	int3
4030b8:	cc                   	int3
4030b9:	cc                   	int3
4030ba:	cc                   	int3
4030bb:	cc                   	int3
4030bc:	cc                   	int3
4030bd:	cc                   	int3
4030be:	cc                   	int3
4030bf:	cc                   	int3
4030c0:	81 ec 08 02 00 00    	sub    $0x208,%esp
4030c6:	57                   	push   %edi
4030c7:	6a 00                	push   $0x0
4030c9:	68 10 c1 45 00       	push   $0x45c110
4030ce:	68 02 00 00 80       	push   $0x80000002
4030d3:	e8 78 3a 00 00       	call   0x406b50
4030d8:	8b f8                	mov    %eax,%edi
4030da:	83 c4 0c             	add    $0xc,%esp
4030dd:	85 ff                	test   %edi,%edi
4030df:	75 75                	jne    0x403156
4030e1:	56                   	push   %esi
4030e2:	68 04 01 00 00       	push   $0x104
4030e7:	8d 44 24 0c          	lea    0xc(%esp),%eax
4030eb:	68 10 c1 45 00       	push   $0x45c110
4030f0:	50                   	push   %eax
4030f1:	e8 b4 d9 02 00       	call   0x430aaa
4030f6:	8d 54 24 14          	lea    0x14(%esp),%edx
4030fa:	33 c9                	xor    %ecx,%ecx
4030fc:	68 7c c0 45 00       	push   $0x45c07c
403101:	52                   	push   %edx
403102:	66 89 8c 24 22 02 00 	mov    %cx,0x222(%esp)
403109:	00
40310a:	e8 54 dc 02 00       	call   0x430d63
40310f:	8b f0                	mov    %eax,%esi
403111:	83 c4 14             	add    $0x14,%esp
403114:	85 f6                	test   %esi,%esi
403116:	74 38                	je     0x403150
403118:	8d 44 24 08          	lea    0x8(%esp),%eax
40311c:	6a 5c                	push   $0x5c
40311e:	50                   	push   %eax
40311f:	83 c6 12             	add    $0x12,%esi
403122:	e8 0e dc 02 00       	call   0x430d35
403127:	83 c4 08             	add    $0x8,%esp
40312a:	3b f0                	cmp    %eax,%esi
40312c:	75 22                	jne    0x403150
40312e:	8d 54 24 08          	lea    0x8(%esp),%edx
403132:	52                   	push   %edx
403133:	33 c9                	xor    %ecx,%ecx
403135:	68 02 00 00 80       	push   $0x80000002
40313a:	66 89 0e             	mov    %cx,(%esi)
40313d:	e8 1e fe ff ff       	call   0x402f60
403142:	83 c4 08             	add    $0x8,%esp
403145:	5e                   	pop    %esi
403146:	8b c7                	mov    %edi,%eax
403148:	5f                   	pop    %edi
403149:	81 c4 08 02 00 00    	add    $0x208,%esp
40314f:	c3                   	ret
403150:	b8 0b 00 00 00       	mov    $0xb,%eax
403155:	5e                   	pop    %esi
403156:	5f                   	pop    %edi
403157:	81 c4 08 02 00 00    	add    $0x208,%esp
40315d:	c3                   	ret
40315e:	cc                   	int3
40315f:	cc                   	int3
403160:	83 ec 68             	sub    $0x68,%esp
403163:	53                   	push   %ebx
403164:	33 db                	xor    %ebx,%ebx
403166:	55                   	push   %ebp
403167:	8d 44 24 14          	lea    0x14(%esp),%eax
40316b:	57                   	push   %edi
40316c:	50                   	push   %eax
40316d:	bd fb ff ff ff       	mov    $0xfffffffb,%ebp
403172:	89 5c 24 10          	mov    %ebx,0x10(%esp)
403176:	89 5c 24 14          	mov    %ebx,0x14(%esp)
40317a:	89 5c 24 18          	mov    %ebx,0x18(%esp)
40317e:	89 5c 24 20          	mov    %ebx,0x20(%esp)
403182:	89 5c 24 28          	mov    %ebx,0x28(%esp)
403186:	66 c7 44 24 2c 00 01 	movw   $0x100,0x2c(%esp)
40318d:	89 5c 24 30          	mov    %ebx,0x30(%esp)
403191:	66 c7 44 24 34 00 03 	movw   $0x300,0x34(%esp)
403198:	89 5c 24 24          	mov    %ebx,0x24(%esp)
40319c:	89 5c 24 1c          	mov    %ebx,0x1c(%esp)
4031a0:	e8 6b f9 ff ff       	call   0x402b10
4031a5:	8b 7c 24 7c          	mov    0x7c(%esp),%edi
4031a9:	83 c4 04             	add    $0x4,%esp
4031ac:	8d 4c 24 20          	lea    0x20(%esp),%ecx
4031b0:	51                   	push   %ecx
4031b1:	53                   	push   %ebx
4031b2:	8d 54 24 24          	lea    0x24(%esp),%edx
4031b6:	52                   	push   %edx
4031b7:	53                   	push   %ebx
4031b8:	53                   	push   %ebx
4031b9:	6a 04                	push   $0x4
4031bb:	6a 01                	push   $0x1
4031bd:	57                   	push   %edi
4031be:	ff 15 60 33 47 00    	call   *0x473360
4031c4:	3b c3                	cmp    %ebx,%eax
4031c6:	0f 85 22 01 00 00    	jne    0x4032ee
4031cc:	56                   	push   %esi
4031cd:	8b 35 78 33 47 00    	mov    0x473378,%esi
4031d3:	8d 44 24 10          	lea    0x10(%esp),%eax
4031d7:	50                   	push   %eax
4031d8:	53                   	push   %ebx
4031d9:	53                   	push   %ebx
4031da:	53                   	push   %ebx
4031db:	53                   	push   %ebx
4031dc:	53                   	push   %ebx
4031dd:	53                   	push   %ebx
4031de:	53                   	push   %ebx
4031df:	53                   	push   %ebx
4031e0:	6a 01                	push   $0x1
4031e2:	8d 4c 24 50          	lea    0x50(%esp),%ecx
4031e6:	51                   	push   %ecx
4031e7:	ff d6                	call   *%esi
4031e9:	85 c0                	test   %eax,%eax
4031eb:	0f 84 c2 00 00 00    	je     0x4032b3
4031f1:	8d 54 24 14          	lea    0x14(%esp),%edx
4031f5:	52                   	push   %edx
4031f6:	53                   	push   %ebx
4031f7:	53                   	push   %ebx
4031f8:	53                   	push   %ebx
4031f9:	53                   	push   %ebx
4031fa:	53                   	push   %ebx
4031fb:	53                   	push   %ebx
4031fc:	53                   	push   %ebx
4031fd:	53                   	push   %ebx
4031fe:	6a 01                	push   $0x1
403200:	8d 44 24 58          	lea    0x58(%esp),%eax
403204:	50                   	push   %eax
403205:	ff d6                	call   *%esi
403207:	85 c0                	test   %eax,%eax
403209:	0f 84 a4 00 00 00    	je     0x4032b3
40320f:	6a 40                	push   $0x40
403211:	8d 4c 24 3c          	lea    0x3c(%esp),%ecx
403215:	53                   	push   %ebx
403216:	51                   	push   %ecx
403217:	e8 54 d9 02 00       	call   0x430b70
40321c:	8b 54 24 1c          	mov    0x1c(%esp),%edx
403220:	83 c4 0c             	add    $0xc,%esp
403223:	33 c9                	xor    %ecx,%ecx
403225:	81 7c 24 1c 82 00 00 	cmpl   $0x82,0x1c(%esp)
40322c:	00
40322d:	b8 05 00 00 00       	mov    $0x5,%eax
403232:	0f 95 c1             	setne  %cl
403235:	89 44 24 50          	mov    %eax,0x50(%esp)
403239:	89 54 24 54          	mov    %edx,0x54(%esp)
40323d:	8b 54 24 14          	mov    0x14(%esp),%edx
403241:	89 44 24 70          	mov    %eax,0x70(%esp)
403245:	8d 44 24 18          	lea    0x18(%esp),%eax
403249:	50                   	push   %eax
40324a:	8d 0c cd 03 00 00 00 	lea    0x3(,%ecx,8),%ecx
403251:	89 4c 24 64          	mov    %ecx,0x64(%esp)
403255:	8b 4c 24 24          	mov    0x24(%esp),%ecx
403259:	89 54 24 78          	mov    %edx,0x78(%esp)
40325d:	51                   	push   %ecx
40325e:	8d 54 24 40          	lea    0x40(%esp),%edx
403262:	52                   	push   %edx
403263:	6a 02                	push   $0x2
403265:	c7 44 24 48 04 00 00 	movl   $0x4,0x48(%esp)
40326c:	00
40326d:	c7 44 24 4c 01 00 00 	movl   $0x1,0x4c(%esp)
403274:	00
403275:	89 5c 24 50          	mov    %ebx,0x50(%esp)
403279:	89 5c 24 5c          	mov    %ebx,0x5c(%esp)
40327d:	c7 44 24 68 00 00 00 	movl   $0x10000000,0x68(%esp)
403284:	10
403285:	c7 44 24 6c 02 00 00 	movl   $0x2,0x6c(%esp)
40328c:	00
40328d:	89 5c 24 7c          	mov    %ebx,0x7c(%esp)
403291:	ff 15 74 33 47 00    	call   *0x473374
403297:	85 c0                	test   %eax,%eax
403299:	75 18                	jne    0x4032b3
40329b:	8b 44 24 18          	mov    0x18(%esp),%eax
40329f:	53                   	push   %ebx
4032a0:	50                   	push   %eax
4032a1:	53                   	push   %ebx
4032a2:	53                   	push   %ebx
4032a3:	68 04 00 00 80       	push   $0x80000004
4032a8:	6a 01                	push   $0x1
4032aa:	57                   	push   %edi
4032ab:	ff 15 5c 33 47 00    	call   *0x47335c
4032b1:	8b e8                	mov    %eax,%ebp
4032b3:	8b 44 24 10          	mov    0x10(%esp),%eax
4032b7:	8b 35 70 33 47 00    	mov    0x473370,%esi
4032bd:	3b c3                	cmp    %ebx,%eax
4032bf:	74 03                	je     0x4032c4
4032c1:	50                   	push   %eax
4032c2:	ff d6                	call   *%esi
4032c4:	8b 44 24 14          	mov    0x14(%esp),%eax
4032c8:	3b c3                	cmp    %ebx,%eax
4032ca:	74 03                	je     0x4032cf
4032cc:	50                   	push   %eax
4032cd:	ff d6                	call   *%esi
4032cf:	8b 44 24 18          	mov    0x18(%esp),%eax
4032d3:	8b 35 60 34 47 00    	mov    0x473460,%esi
4032d9:	3b c3                	cmp    %ebx,%eax
4032db:	74 03                	je     0x4032e0
4032dd:	50                   	push   %eax
4032de:	ff d6                	call   *%esi
4032e0:	8b 44 24 24          	mov    0x24(%esp),%eax
4032e4:	3b c3                	cmp    %ebx,%eax
4032e6:	74 03                	je     0x4032eb
4032e8:	50                   	push   %eax
4032e9:	ff d6                	call   *%esi
4032eb:	8b c5                	mov    %ebp,%eax
4032ed:	5e                   	pop    %esi
4032ee:	5f                   	pop    %edi
4032ef:	5d                   	pop    %ebp
4032f0:	5b                   	pop    %ebx
4032f1:	83 c4 68             	add    $0x68,%esp
4032f4:	c3                   	ret
4032f5:	cc                   	int3
4032f6:	cc                   	int3
4032f7:	cc                   	int3
4032f8:	cc                   	int3
4032f9:	cc                   	int3
4032fa:	cc                   	int3
4032fb:	cc                   	int3
4032fc:	cc                   	int3
4032fd:	cc                   	int3
4032fe:	cc                   	int3
4032ff:	cc                   	int3
403300:	81 ec 08 02 00 00    	sub    $0x208,%esp
403306:	56                   	push   %esi
403307:	8b b4 24 10 02 00 00 	mov    0x210(%esp),%esi
40330e:	57                   	push   %edi
40330f:	56                   	push   %esi
403310:	68 c8 c1 45 00       	push   $0x45c1c8
403315:	8d 44 24 10          	lea    0x10(%esp),%eax
403319:	68 04 01 00 00       	push   $0x104
40331e:	50                   	push   %eax
40331f:	e8 3b d3 02 00       	call   0x43065f
403324:	8b bc 24 28 02 00 00 	mov    0x228(%esp),%edi
40332b:	8d 54 24 18          	lea    0x18(%esp),%edx
40332f:	52                   	push   %edx
403330:	33 c9                	xor    %ecx,%ecx
403332:	68 9c c1 45 00       	push   $0x45c19c
403337:	57                   	push   %edi
403338:	66 89 8c 24 2a 02 00 	mov    %cx,0x22a(%esp)
40333f:	00
403340:	e8 fb 2e 00 00       	call   0x406240
403345:	56                   	push   %esi
403346:	68 7c c1 45 00       	push   $0x45c17c
40334b:	8d 44 24 2c          	lea    0x2c(%esp),%eax
40334f:	68 04 01 00 00       	push   $0x104
403354:	50                   	push   %eax
403355:	e8 05 d3 02 00       	call   0x43065f
40335a:	8d 54 24 34          	lea    0x34(%esp),%edx
40335e:	52                   	push   %edx
40335f:	33 c9                	xor    %ecx,%ecx
403361:	68 4c c1 45 00       	push   $0x45c14c
403366:	57                   	push   %edi
403367:	66 89 8c 24 46 02 00 	mov    %cx,0x246(%esp)
40336e:	00
40336f:	e8 cc 2e 00 00       	call   0x406240
403374:	83 c4 38             	add    $0x38,%esp
403377:	5f                   	pop    %edi
403378:	33 c0                	xor    %eax,%eax
40337a:	5e                   	pop    %esi
40337b:	81 c4 08 02 00 00    	add    $0x208,%esp
403381:	c3                   	ret
403382:	cc                   	int3
403383:	cc                   	int3
403384:	cc                   	int3
403385:	cc                   	int3
403386:	cc                   	int3
403387:	cc                   	int3
403388:	cc                   	int3
403389:	cc                   	int3
40338a:	cc                   	int3
40338b:	cc                   	int3
40338c:	cc                   	int3
40338d:	cc                   	int3
40338e:	cc                   	int3
40338f:	cc                   	int3
403390:	b8 00 91 00 00       	mov    $0x9100,%eax
403395:	e8 f6 da 02 00       	call   0x430e90
40339a:	53                   	push   %ebx
40339b:	8b 9c 24 08 91 00 00 	mov    0x9108(%esp),%ebx
4033a2:	56                   	push   %esi
4033a3:	8b c3                	mov    %ebx,%eax
4033a5:	57                   	push   %edi
4033a6:	8d 50 02             	lea    0x2(%eax),%edx
4033a9:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
4033b0:	66 8b 08             	mov    (%eax),%cx
4033b3:	83 c0 02             	add    $0x2,%eax
4033b6:	66 85 c9             	test   %cx,%cx
4033b9:	75 f5                	jne    0x4033b0
4033bb:	2b c2                	sub    %edx,%eax
4033bd:	d1 f8                	sar    $1,%eax
4033bf:	8d 78 01             	lea    0x1(%eax),%edi
4033c2:	57                   	push   %edi
4033c3:	e8 4e d6 02 00       	call   0x430a16
4033c8:	53                   	push   %ebx
4033c9:	68 dc c1 45 00       	push   $0x45c1dc
4033ce:	8b f0                	mov    %eax,%esi
4033d0:	57                   	push   %edi
4033d1:	56                   	push   %esi
4033d2:	e8 ec d9 02 00       	call   0x430dc3
4033d7:	8d 44 24 20          	lea    0x20(%esp),%eax
4033db:	56                   	push   %esi
4033dc:	50                   	push   %eax
4033dd:	c6 44 3e ff 00       	movb   $0x0,-0x1(%esi,%edi,1)
4033e2:	e8 39 3e 01 00       	call   0x417220
4033e7:	56                   	push   %esi
4033e8:	8b f8                	mov    %eax,%edi
4033ea:	e8 ae d5 02 00       	call   0x43099d
4033ef:	83 c4 20             	add    $0x20,%esp
4033f2:	33 c0                	xor    %eax,%eax
4033f4:	85 ff                	test   %edi,%edi
4033f6:	5f                   	pop    %edi
4033f7:	5e                   	pop    %esi
4033f8:	0f 94 c0             	sete   %al