438021:	8d 55 d8             	lea    -0x28(%ebp),%edx
438024:	8b 45 08             	mov    0x8(%ebp),%eax
438027:	8b 40 f8             	mov    -0x8(%eax),%eax
43802a:	b9 02 00 00 00       	mov    $0x2,%ecx
43802f:	e8 64 cd fe ff       	call   0x424d98
438034:	5b                   	pop    %ebx
438035:	8b e5                	mov    %ebp,%esp
438037:	5d                   	pop    %ebp
438038:	c3                   	ret
438039:	8d 40 00             	lea    0x0(%eax),%eax
43803c:	55                   	push   %ebp
43803d:	8b ec                	mov    %esp,%ebp
43803f:	83 c4 f4             	add    $0xfffffff4,%esp
438042:	53                   	push   %ebx
438043:	89 4d f4             	mov    %ecx,-0xc(%ebp)
438046:	89 55 fc             	mov    %edx,-0x4(%ebp)
438049:	89 45 f8             	mov    %eax,-0x8(%ebp)
43804c:	8b 5d 08             	mov    0x8(%ebp),%ebx
43804f:	8b 45 f8             	mov    -0x8(%ebp),%eax
438052:	8b 40 10             	mov    0x10(%eax),%eax
438055:	ba 01 00 00 00       	mov    $0x1,%edx
43805a:	e8 bd c6 fe ff       	call   0x42471c
43805f:	8b 45 fc             	mov    -0x4(%ebp),%eax
438062:	ff 48 0c             	decl   0xc(%eax)
438065:	8b 45 fc             	mov    -0x4(%ebp),%eax
438068:	ff 48 08             	decl   0x8(%eax)
43806b:	85 db                	test   %ebx,%ebx
43806d:	7e 19                	jle    0x438088
43806f:	4b                   	dec    %ebx
438070:	55                   	push   %ebp
438071:	e8 02 ff ff ff       	call   0x437f78
438076:	59                   	pop    %ecx
438077:	6a ff                	push   $0xffffffff
438079:	6a ff                	push   $0xffffffff
43807b:	8b 45 fc             	mov    -0x4(%ebp),%eax
43807e:	50                   	push   %eax
43807f:	e8 54 f0 fc ff       	call   0x4070d8
438084:	85 db                	test   %ebx,%ebx
438086:	7f e7                	jg     0x43806f
438088:	8b 45 fc             	mov    -0x4(%ebp),%eax
43808b:	ff 40 0c             	incl   0xc(%eax)
43808e:	8b 45 fc             	mov    -0x4(%ebp),%eax
438091:	ff 40 08             	incl   0x8(%eax)
438094:	5b                   	pop    %ebx
438095:	8b e5                	mov    %ebp,%esp
438097:	5d                   	pop    %ebp
438098:	c2 08 00             	ret    $0x8
43809b:	90                   	nop
43809c:	55                   	push   %ebp
43809d:	8b ec                	mov    %esp,%ebp
43809f:	51                   	push   %ecx
4380a0:	53                   	push   %ebx
4380a1:	56                   	push   %esi
4380a2:	84 d2                	test   %dl,%dl
4380a4:	74 08                	je     0x4380ae
4380a6:	83 c4 f0             	add    $0xfffffff0,%esp
4380a9:	e8 92 bb fc ff       	call   0x403c40
4380ae:	88 55 ff             	mov    %dl,-0x1(%ebp)
4380b1:	8b d8                	mov    %eax,%ebx
4380b3:	33 d2                	xor    %edx,%edx
4380b5:	8b c3                	mov    %ebx,%eax
4380b7:	e8 20 af 01 00       	call   0x452fdc
4380bc:	8b 43 50             	mov    0x50(%ebx),%eax
4380bf:	0b 05 30 81 43 00    	or     0x438130,%eax
4380c5:	89 43 50             	mov    %eax,0x50(%ebx)
4380c8:	b2 01                	mov    $0x1,%dl
4380ca:	a1 84 2c 42 00       	mov    0x422c84,%eax
4380cf:	e8 74 ee fe ff       	call   0x426f48
4380d4:	8b f0                	mov    %eax,%esi
4380d6:	89 b3 98 01 00 00    	mov    %esi,0x198(%ebx)
4380dc:	89 5e 14             	mov    %ebx,0x14(%esi)
4380df:	c7 46 10 e8 84 43 00 	movl   $0x4384e8,0x10(%esi)
4380e6:	89 5e 24             	mov    %ebx,0x24(%esi)
4380e9:	8b c3                	mov    %ebx,%eax
4380eb:	66 ba c6 ff          	mov    $0xffc6,%dx
4380ef:	e8 3c ba fc ff       	call   0x403b30
4380f4:	89 46 20             	mov    %eax,0x20(%esi)
4380f7:	ba 69 00 00 00       	mov    $0x69,%edx
4380fc:	8b c3                	mov    %ebx,%eax
4380fe:	e8 8d 14 01 00       	call   0x449590
438103:	ba 69 00 00 00       	mov    $0x69,%edx
438108:	8b c3                	mov    %ebx,%eax
43810a:	e8 4d 14 01 00       	call   0x44955c
43810f:	8b c3                	mov    %ebx,%eax
438111:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
438115:	74 0f                	je     0x438126
438117:	e8 7c bb fc ff       	call   0x403c98
43811c:	64 8f 05 00 00 00 00 	pop    %fs:0x0
438123:	83 c4 0c             	add    $0xc,%esp
438126:	8b c3                	mov    %ebx,%eax
438128:	5e                   	pop    %esi
438129:	5b                   	pop    %ebx
43812a:	59                   	pop    %ecx
43812b:	5d                   	pop    %ebp
43812c:	c3                   	ret
43812d:	00 00                	add    %al,(%eax)
43812f:	00 00                	add    %al,(%eax)
438131:	08 08                	or     %cl,(%eax)
438133:	00 53 56             	add    %dl,0x56(%ebx)
438136:	e8 ad bb fc ff       	call   0x403ce8
43813b:	8b da                	mov    %edx,%ebx
43813d:	8b f0                	mov    %eax,%esi
43813f:	8b 86 98 01 00 00    	mov    0x198(%esi),%eax
438145:	e8 d2 b7 fc ff       	call   0x40391c
43814a:	8b d3                	mov    %ebx,%edx
43814c:	80 e2 fc             	and    $0xfc,%dl
43814f:	8b c6                	mov    %esi,%eax
438151:	e8 e2 ae 01 00       	call   0x453038
438156:	84 db                	test   %bl,%bl
438158:	7e 07                	jle    0x438161
43815a:	8b c6                	mov    %esi,%eax
43815c:	e8 2f bb fc ff       	call   0x403c90
438161:	5e                   	pop    %esi
438162:	5b                   	pop    %ebx
438163:	c3                   	ret
438164:	56                   	push   %esi
438165:	33 d2                	xor    %edx,%edx
438167:	8b 88 98 01 00 00    	mov    0x198(%eax),%ecx
43816d:	8b 71 0c             	mov    0xc(%ecx),%esi
438170:	85 f6                	test   %esi,%esi
438172:	74 09                	je     0x43817d
438174:	8b c6                	mov    %esi,%eax
438176:	8b 10                	mov    (%eax),%edx
438178:	ff 52 24             	call   *0x24(%edx)
43817b:	8b d0                	mov    %eax,%edx
43817d:	8b c2                	mov    %edx,%eax
43817f:	5e                   	pop    %esi
438180:	c3                   	ret
438181:	8d 40 00             	lea    0x0(%eax),%eax
438184:	53                   	push   %ebx
438185:	56                   	push   %esi
438186:	57                   	push   %edi
438187:	55                   	push   %ebp
438188:	83 c4 e8             	add    $0xffffffe8,%esp
43818b:	8b ea                	mov    %edx,%ebp
43818d:	8b d8                	mov    %eax,%ebx
43818f:	8b 83 98 01 00 00    	mov    0x198(%ebx),%eax
438195:	e8 ea f3 fe ff       	call   0x427584
43819a:	8b f0                	mov    %eax,%esi
43819c:	8b 83 98 01 00 00    	mov    0x198(%ebx),%eax
4381a2:	e8 f5 f3 fe ff       	call   0x42759c
4381a7:	8b f8                	mov    %eax,%edi
4381a9:	8b c3                	mov    %ebx,%eax
4381ab:	e8 30 16 01 00       	call   0x4497e0
4381b0:	89 04 24             	mov    %eax,(%esp)
4381b3:	8b c3                	mov    %ebx,%eax
4381b5:	e8 6a 16 01 00       	call   0x449824
4381ba:	89 44 24 04          	mov    %eax,0x4(%esp)
4381be:	80 bb a8 01 00 00 00 	cmpb   $0x0,0x1a8(%ebx)
4381c5:	75 1c                	jne    0x4381e3
4381c7:	80 bb ad 01 00 00 00 	cmpb   $0x0,0x1ad(%ebx)
4381ce:	0f 84 99 00 00 00    	je     0x43826d
4381d4:	3b 34 24             	cmp    (%esp),%esi
4381d7:	7f 0a                	jg     0x4381e3
4381d9:	3b 7c 24 04          	cmp    0x4(%esp),%edi
4381dd:	0f 8e 8a 00 00 00    	jle    0x43826d
4381e3:	80 bb ad 01 00 00 00 	cmpb   $0x0,0x1ad(%ebx)
4381ea:	74 7a                	je     0x438266
4381ec:	85 f6                	test   %esi,%esi
4381ee:	7e 76                	jle    0x438266
4381f0:	85 ff                	test   %edi,%edi
4381f2:	7e 72                	jle    0x438266
4381f4:	89 74 24 10          	mov    %esi,0x10(%esp)
4381f8:	db 44 24 10          	fildl  0x10(%esp)
4381fc:	89 7c 24 14          	mov    %edi,0x14(%esp)
438200:	db 44 24 14          	fildl  0x14(%esp)
438204:	de f9                	fdivrp %st,%st(1)
438206:	dd 5c 24 08          	fstpl  0x8(%esp)
43820a:	9b                   	fwait
43820b:	3b fe                	cmp    %esi,%edi
43820d:	7d 2c                	jge    0x43823b
43820f:	8b 34 24             	mov    (%esp),%esi
438212:	db 04 24             	fildl  (%esp)
438215:	dc 74 24 08          	fdivl  0x8(%esp)
438219:	e8 3e ae fc ff       	call   0x40305c
43821e:	8b f8                	mov    %eax,%edi
438220:	3b 7c 24 04          	cmp    0x4(%esp),%edi
438224:	7e 47                	jle    0x43826d
438226:	8b 7c 24 04          	mov    0x4(%esp),%edi
43822a:	db 44 24 04          	fildl  0x4(%esp)
43822e:	dc 4c 24 08          	fmull  0x8(%esp)
438232:	e8 25 ae fc ff       	call   0x40305c
438237:	8b f0                	mov    %eax,%esi
438239:	eb 32                	jmp    0x43826d
43823b:	8b 7c 24 04          	mov    0x4(%esp),%edi
43823f:	db 44 24 04          	fildl  0x4(%esp)
438243:	dc 4c 24 08          	fmull  0x8(%esp)
438247:	e8 10 ae fc ff       	call   0x40305c
43824c:	8b f0                	mov    %eax,%esi
43824e:	3b 34 24             	cmp    (%esp),%esi
438251:	7e 1a                	jle    0x43826d
438253:	8b 34 24             	mov    (%esp),%esi
438256:	db 04 24             	fildl  (%esp)
438259:	dc 74 24 08          	fdivl  0x8(%esp)
43825d:	e8 fa ad fc ff       	call   0x40305c
438262:	8b f8                	mov    %eax,%edi
438264:	eb 07                	jmp    0x43826d
438266:	8b 34 24             	mov    (%esp),%esi
438269:	8b 7c 24 04          	mov    0x4(%esp),%edi
43826d:	33 c0                	xor    %eax,%eax
43826f:	89 45 00             	mov    %eax,0x0(%ebp)
438272:	33 c0                	xor    %eax,%eax
438274:	89 45 04             	mov    %eax,0x4(%ebp)
438277:	89 75 08             	mov    %esi,0x8(%ebp)
43827a:	89 7d 0c             	mov    %edi,0xc(%ebp)
43827d:	80 bb a9 01 00 00 00 	cmpb   $0x0,0x1a9(%ebx)
438284:	74 22                	je     0x4382a8
438286:	8b 44 24 04          	mov    0x4(%esp),%eax
43828a:	2b c7                	sub    %edi,%eax
43828c:	d1 f8                	sar    $1,%eax
43828e:	79 03                	jns    0x438293
438290:	83 d0 00             	adc    $0x0,%eax
438293:	50                   	push   %eax
438294:	8b 44 24 04          	mov    0x4(%esp),%eax
438298:	2b c6                	sub    %esi,%eax
43829a:	d1 f8                	sar    $1,%eax
43829c:	79 03                	jns    0x4382a1
43829e:	83 d0 00             	adc    $0x0,%eax
4382a1:	50                   	push   %eax
4382a2:	55                   	push   %ebp
4382a3:	e8 00 ef fc ff       	call   0x4071a8
4382a8:	83 c4 18             	add    $0x18,%esp
4382ab:	5d                   	pop    %ebp
4382ac:	5f                   	pop    %edi
4382ad:	5e                   	pop    %esi
4382ae:	5b                   	pop    %ebx
4382af:	c3                   	ret
4382b0:	55                   	push   %ebp
4382b1:	8b ec                	mov    %esp,%ebp
4382b3:	83 c4 e8             	add    $0xffffffe8,%esp
4382b6:	53                   	push   %ebx
4382b7:	89 45 fc             	mov    %eax,-0x4(%ebp)
4382ba:	8b 45 fc             	mov    -0x4(%ebp),%eax
4382bd:	f6 40 1c 10          	testb  $0x10,0x1c(%eax)
4382c1:	74 36                	je     0x4382f9
4382c3:	8b 45 fc             	mov    -0x4(%ebp),%eax
4382c6:	8b 98 90 01 00 00    	mov    0x190(%eax),%ebx
4382cc:	8b 43 10             	mov    0x10(%ebx),%eax
4382cf:	b2 01                	mov    $0x1,%dl
4382d1:	e8 16 c4 fe ff       	call   0x4246ec
4382d6:	8b 43 14             	mov    0x14(%ebx),%eax
4382d9:	b2 01                	mov    $0x1,%dl
4382db:	e8 2c c7 fe ff       	call   0x424a0c
4382e0:	8b 45 fc             	mov    -0x4(%ebp),%eax
4382e3:	8b 40 48             	mov    0x48(%eax),%eax
4382e6:	50                   	push   %eax
4382e7:	8b 45 fc             	mov    -0x4(%ebp),%eax
4382ea:	8b 40 4c             	mov    0x4c(%eax),%eax
4382ed:	50                   	push   %eax
4382ee:	33 c9                	xor    %ecx,%ecx
4382f0:	33 d2                	xor    %edx,%edx
4382f2:	8b c3                	mov    %ebx,%eax
4382f4:	e8 db ca fe ff       	call   0x424dd4
4382f9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4382fc:	0f b6 80 ac 01 00 00 	movzbl 0x1ac(%eax),%eax
438303:	88 45 fb             	mov    %al,-0x5(%ebp)
438306:	8b 45 fc             	mov    -0x4(%ebp),%eax
438309:	c6 80 ac 01 00 00 01 	movb   $0x1,0x1ac(%eax)
438310:	33 c0                	xor    %eax,%eax
438312:	55                   	push   %ebp
438313:	68 63 83 43 00       	push   $0x438363
438318:	64 ff 30             	push   %fs:(%eax)
43831b:	64 89 20             	mov    %esp,%fs:(%eax)
43831e:	8b 45 fc             	mov    -0x4(%ebp),%eax
438321:	8b 98 90 01 00 00    	mov    0x190(%eax),%ebx
438327:	8d 55 e8             	lea    -0x18(%ebp),%edx
43832a:	8b 45 fc             	mov    -0x4(%ebp),%eax
43832d:	e8 52 fe ff ff       	call   0x438184
438332:	8d 55 e8             	lea    -0x18(%ebp),%edx
438335:	8b 45 fc             	mov    -0x4(%ebp),%eax
438338:	8b 80 98 01 00 00    	mov    0x198(%eax),%eax
43833e:	8b 48 0c             	mov    0xc(%eax),%ecx
438341:	8b c3                	mov    %ebx,%eax
438343:	e8 d4 ca fe ff       	call   0x424e1c
438348:	33 c0                	xor    %eax,%eax
43834a:	5a                   	pop    %edx
43834b:	59                   	pop    %ecx
43834c:	59                   	pop    %ecx
43834d:	64 89 10             	mov    %edx,%fs:(%eax)
438350:	68 6a 83 43 00       	push   $0x43836a
438355:	8b 45 fc             	mov    -0x4(%ebp),%eax
438358:	0f b6 55 fb          	movzbl -0x5(%ebp),%edx
43835c:	88 90 ac 01 00 00    	mov    %dl,0x1ac(%eax)
438362:	c3                   	ret
438363:	e9 48 bd fc ff       	jmp    0x4040b0
438368:	eb eb                	jmp    0x438355
43836a:	5b                   	pop    %ebx
43836b:	8b e5                	mov    %ebp,%esp
43836d:	5d                   	pop    %ebp
43836e:	c3                   	ret
43836f:	90                   	nop
438370:	53                   	push   %ebx
438371:	56                   	push   %esi
438372:	57                   	push   %edi
438373:	55                   	push   %ebp
438374:	8b e8                	mov    %eax,%ebp
438376:	33 db                	xor    %ebx,%ebx
438378:	8b 85 98 01 00 00    	mov    0x198(%ebp),%eax
43837e:	8b 70 0c             	mov    0xc(%eax),%esi
438381:	80 7d 57 00          	cmpb   $0x0,0x57(%ebp)
438385:	74 7b                	je     0x438402
438387:	f6 45 1c 01          	testb  $0x1,0x1c(%ebp)
43838b:	75 75                	jne    0x438402
43838d:	85 f6                	test   %esi,%esi
43838f:	74 71                	je     0x438402
438391:	80 7e 22 00          	cmpb   $0x0,0x22(%esi)
438395:	74 6b                	je     0x438402
438397:	8b c6                	mov    %esi,%eax
438399:	8b 10                	mov    (%eax),%edx
43839b:	ff 52 24             	call   *0x24(%edx)
43839e:	85 c0                	test   %eax,%eax
4383a0:	75 06                	jne    0x4383a8
4383a2:	c6 46 22 00          	movb   $0x0,0x22(%esi)
4383a6:	eb 5a                	jmp    0x438402
4383a8:	b2 01                	mov    $0x1,%dl
4383aa:	8b c5                	mov    %ebp,%eax
4383ac:	e8 0f 43 02 00       	call   0x45c6c0
4383b1:	8b f8                	mov    %eax,%edi
4383b3:	85 ff                	test   %edi,%edi
4383b5:	74 4b                	je     0x438402
4383b7:	80 bf 76 02 00 00 00 	cmpb   $0x0,0x276(%edi)
4383be:	74 42                	je     0x438402
4383c0:	8b c7                	mov    %edi,%eax
4383c2:	e8 85 99 01 00       	call   0x451d4c
4383c7:	84 c0                	test   %al,%al
4383c9:	74 37                	je     0x438402
4383cb:	80 bd ac 01 00 00 00 	cmpb   $0x0,0x1ac(%ebp)
4383d2:	74 12                	je     0x4383e6
4383d4:	6a 00                	push   $0x0
4383d6:	33 c9                	xor    %ecx,%ecx
4383d8:	ba 0f 03 00 00       	mov    $0x30f,%edx
4383dd:	8b c7                	mov    %edi,%eax
4383df:	e8 48 2d 01 00       	call   0x44b12c
4383e4:	eb 16                	jmp    0x4383fc
4383e6:	6a 00                	push   $0x0
4383e8:	6a 00                	push   $0x0
4383ea:	68 0f 03 00 00       	push   $0x30f
4383ef:	8b c7                	mov    %edi,%eax
4383f1:	e8 b6 95 01 00       	call   0x4519ac
4383f6:	50                   	push   %eax
4383f7:	e8 cc ed fc ff       	call   0x4071c8
4383fc:	b3 01                	mov    $0x1,%bl
4383fe:	c6 46 22 00          	movb   $0x0,0x22(%esi)
438402:	8b c3                	mov    %ebx,%eax
438404:	5d                   	pop    %ebp
438405:	5f                   	pop    %edi
438406:	5e                   	pop    %esi
438407:	5b                   	pop    %ebx
438408:	c3                   	ret
438409:	8d 40 00             	lea    0x0(%eax),%eax