423f0e:	e8 02 63 ff ff       	call   0x41a215
423f13:	c2 04 00             	ret    $0x4
423f16:	55                   	push   %ebp
423f17:	8b ec                	mov    %esp,%ebp
423f19:	51                   	push   %ecx
423f1a:	53                   	push   %ebx
423f1b:	56                   	push   %esi
423f1c:	8b 35 dc 98 43 00    	mov    0x4398dc,%esi
423f22:	57                   	push   %edi
423f23:	8b f9                	mov    %ecx,%edi
423f25:	6a 11                	push   $0x11
423f27:	ff d6                	call   *%esi
423f29:	66 85 c0             	test   %ax,%ax
423f2c:	7d 05                	jge    0x423f33
423f2e:	6a 08                	push   $0x8
423f30:	5b                   	pop    %ebx
423f31:	eb 02                	jmp    0x423f35
423f33:	33 db                	xor    %ebx,%ebx
423f35:	6a 10                	push   $0x10
423f37:	ff d6                	call   *%esi
423f39:	66 85 c0             	test   %ax,%ax
423f3c:	7d 05                	jge    0x423f43
423f3e:	6a 04                	push   $0x4
423f40:	58                   	pop    %eax
423f41:	eb 02                	jmp    0x423f45
423f43:	33 c0                	xor    %eax,%eax
423f45:	0b d8                	or     %eax,%ebx
423f47:	ff 15 58 98 43 00    	call   *0x439858
423f4d:	8b f0                	mov    %eax,%esi
423f4f:	ff 15 08 98 43 00    	call   *0x439808
423f55:	85 f6                	test   %esi,%esi
423f57:	89 45 fc             	mov    %eax,-0x4(%ebp)
423f5a:	75 22                	jne    0x423f7e
423f5c:	8b 45 08             	mov    0x8(%ebp),%eax
423f5f:	ff 75 0c             	push   0xc(%ebp)
423f62:	0f b7 cb             	movzwl %bx,%ecx
423f65:	c1 e0 10             	shl    $0x10,%eax
423f68:	0b c1                	or     %ecx,%eax
423f6a:	50                   	push   %eax
423f6b:	68 0a 02 00 00       	push   $0x20a
423f70:	ff 77 1c             	push   0x1c(%edi)
423f73:	ff 15 88 99 43 00    	call   *0x439988
423f79:	89 45 0c             	mov    %eax,0xc(%ebp)
423f7c:	eb 36                	jmp    0x423fb4
423f7e:	8b 7d 08             	mov    0x8(%ebp),%edi
423f81:	0f b7 c3             	movzwl %bx,%eax
423f84:	c1 e7 10             	shl    $0x10,%edi
423f87:	0b f8                	or     %eax,%edi
423f89:	ff 75 0c             	push   0xc(%ebp)
423f8c:	57                   	push   %edi
423f8d:	68 0a 02 00 00       	push   $0x20a
423f92:	56                   	push   %esi
423f93:	ff 15 88 99 43 00    	call   *0x439988
423f99:	56                   	push   %esi
423f9a:	89 45 0c             	mov    %eax,0xc(%ebp)
423f9d:	ff 15 a8 98 43 00    	call   *0x4398a8
423fa3:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
423fa7:	8b f0                	mov    %eax,%esi
423fa9:	75 09                	jne    0x423fb4
423fab:	85 f6                	test   %esi,%esi
423fad:	74 05                	je     0x423fb4
423faf:	3b 75 fc             	cmp    -0x4(%ebp),%esi
423fb2:	75 d5                	jne    0x423f89
423fb4:	8b 45 0c             	mov    0xc(%ebp),%eax
423fb7:	5f                   	pop    %edi
423fb8:	5e                   	pop    %esi
423fb9:	5b                   	pop    %ebx
423fba:	c9                   	leave
423fbb:	c2 08 00             	ret    $0x8
423fbe:	56                   	push   %esi
423fbf:	57                   	push   %edi
423fc0:	8b 7c 24 0c          	mov    0xc(%esp),%edi
423fc4:	8b f1                	mov    %ecx,%esi
423fc6:	83 ff ff             	cmp    $0xffffffff,%edi
423fc9:	75 21                	jne    0x423fec
423fcb:	ff 76 1c             	push   0x1c(%esi)
423fce:	ff 15 80 98 43 00    	call   *0x439880
423fd4:	85 c0                	test   %eax,%eax
423fd6:	75 04                	jne    0x423fdc
423fd8:	6a 01                	push   $0x1
423fda:	eb 0f                	jmp    0x423feb
423fdc:	ff 76 1c             	push   0x1c(%esi)
423fdf:	ff 15 7c 99 43 00    	call   *0x43997c
423fe5:	85 c0                	test   %eax,%eax
423fe7:	74 03                	je     0x423fec
423fe9:	6a 09                	push   $0x9
423feb:	5f                   	pop    %edi
423fec:	57                   	push   %edi
423fed:	8b ce                	mov    %esi,%ecx
423fef:	e8 1a 00 00 00       	call   0x42400e
423ff4:	83 ff ff             	cmp    $0xffffffff,%edi
423ff7:	74 10                	je     0x424009
423ff9:	57                   	push   %edi
423ffa:	8b ce                	mov    %esi,%ecx
423ffc:	e8 e9 97 ff ff       	call   0x41d7ea
424001:	57                   	push   %edi
424002:	8b ce                	mov    %esi,%ecx
424004:	e8 05 00 00 00       	call   0x42400e
424009:	5f                   	pop    %edi
42400a:	5e                   	pop    %esi
42400b:	c2 04 00             	ret    $0x4
42400e:	8b 44 24 04          	mov    0x4(%esp),%eax
424012:	85 c0                	test   %eax,%eax
424014:	74 24                	je     0x42403a
424016:	83 f8 06             	cmp    $0x6,%eax
424019:	74 1f                	je     0x42403a
42401b:	83 f8 07             	cmp    $0x7,%eax
42401e:	74 1a                	je     0x42403a
424020:	83 f8 08             	cmp    $0x8,%eax
424023:	74 15                	je     0x42403a
424025:	83 f8 04             	cmp    $0x4,%eax
424028:	74 10                	je     0x42403a
42402a:	ff 71 1c             	push   0x1c(%ecx)
42402d:	ff 15 fc 98 43 00    	call   *0x4398fc
424033:	50                   	push   %eax
424034:	ff 15 3c 98 43 00    	call   *0x43983c
42403a:	c2 04 00             	ret    $0x4
42403d:	56                   	push   %esi
42403e:	8b f1                	mov    %ecx,%esi
424040:	e8 09 78 ff ff       	call   0x41b84e
424045:	85 c0                	test   %eax,%eax
424047:	75 03                	jne    0x42404c
424049:	8b 46 6c             	mov    0x6c(%esi),%eax
42404c:	5e                   	pop    %esi
42404d:	c3                   	ret
42404e:	56                   	push   %esi
42404f:	8b f1                	mov    %ecx,%esi
424051:	8b 06                	mov    (%esi),%eax
424053:	ff 90 d8 00 00 00    	call   *0xd8(%eax)
424059:	85 c0                	test   %eax,%eax
42405b:	74 05                	je     0x424062
42405d:	8b 46 78             	mov    0x78(%esi),%eax
424060:	5e                   	pop    %esi
424061:	c3                   	ret
424062:	8b 46 70             	mov    0x70(%esi),%eax
424065:	85 c0                	test   %eax,%eax
424067:	74 0b                	je     0x424074
424069:	83 78 78 00          	cmpl   $0x0,0x78(%eax)
42406d:	74 05                	je     0x424074
42406f:	6a 01                	push   $0x1
424071:	58                   	pop    %eax
424072:	5e                   	pop    %esi
424073:	c3                   	ret
424074:	33 c0                	xor    %eax,%eax
424076:	5e                   	pop    %esi
424077:	c3                   	ret
424078:	e8 ca 06 00 00       	call   0x424747
42407d:	33 c9                	xor    %ecx,%ecx
42407f:	39 48 2c             	cmp    %ecx,0x2c(%eax)
424082:	0f 94 c1             	sete   %cl
424085:	8b c1                	mov    %ecx,%eax
424087:	c3                   	ret
424088:	e8 ba 06 00 00       	call   0x424747
42408d:	8b 4c 24 04          	mov    0x4(%esp),%ecx
424091:	89 48 30             	mov    %ecx,0x30(%eax)
424094:	c2 04 00             	ret    $0x4
424097:	e8 ab 06 00 00       	call   0x424747
42409c:	8b 40 30             	mov    0x30(%eax),%eax
42409f:	c3                   	ret
4240a0:	e8 05 00 00 00       	call   0x4240aa
4240a5:	e9 01 00 00 00       	jmp    0x4240ab
4240aa:	c3                   	ret
4240ab:	68 b7 40 42 00       	push   $0x4240b7
4240b0:	e8 2b 7c fe ff       	call   0x40bce0
4240b5:	59                   	pop    %ecx
4240b6:	c3                   	ret
4240b7:	68 1c 70 43 00       	push   $0x43701c
4240bc:	e8 0b c0 ff ff       	call   0x4200cc
4240c1:	c3                   	ret
4240c2:	b8 a1 78 42 00       	mov    $0x4278a1,%eax
4240c7:	e8 64 7b fe ff       	call   0x40bc30
4240cc:	51                   	push   %ecx
4240cd:	6a 3c                	push   $0x3c
4240cf:	e8 2d 8c ff ff       	call   0x41cd01
4240d4:	59                   	pop    %ecx
4240d5:	8b c8                	mov    %eax,%ecx
4240d7:	89 4d f0             	mov    %ecx,-0x10(%ebp)
4240da:	33 c0                	xor    %eax,%eax
4240dc:	3b c8                	cmp    %eax,%ecx
4240de:	89 45 fc             	mov    %eax,-0x4(%ebp)
4240e1:	74 05                	je     0x4240e8
4240e3:	e8 6f 5e ff ff       	call   0x419f57
4240e8:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4240eb:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4240f2:	c9                   	leave
4240f3:	c3                   	ret
4240f4:	b8 20 9d 42 00       	mov    $0x429d20,%eax
4240f9:	c3                   	ret
4240fa:	b8 d1 78 42 00       	mov    $0x4278d1,%eax
4240ff:	e8 2c 7b fe ff       	call   0x40bc30
424104:	51                   	push   %ecx
424105:	68 c0 00 00 00       	push   $0xc0
42410a:	e8 f2 8b ff ff       	call   0x41cd01
42410f:	59                   	pop    %ecx
424110:	8b c8                	mov    %eax,%ecx
424112:	89 4d f0             	mov    %ecx,-0x10(%ebp)
424115:	33 c0                	xor    %eax,%eax
424117:	3b c8                	cmp    %eax,%ecx
424119:	89 45 fc             	mov    %eax,-0x4(%ebp)
42411c:	74 05                	je     0x424123
42411e:	e8 b8 ce ff ff       	call   0x420fdb
424123:	8b 4d f4             	mov    -0xc(%ebp),%ecx
424126:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
42412d:	c9                   	leave
42412e:	c3                   	ret
42412f:	b8 c8 a0 42 00       	mov    $0x42a0c8,%eax
424134:	c3                   	ret
424135:	b8 e5 78 42 00       	mov    $0x4278e5,%eax
42413a:	e8 f1 7a fe ff       	call   0x40bc30
42413f:	51                   	push   %ecx
424140:	68 c4 00 00 00       	push   $0xc4
424145:	e8 b7 8b ff ff       	call   0x41cd01
42414a:	59                   	pop    %ecx
42414b:	8b c8                	mov    %eax,%ecx
42414d:	89 4d f0             	mov    %ecx,-0x10(%ebp)
424150:	33 c0                	xor    %eax,%eax
424152:	3b c8                	cmp    %eax,%ecx
424154:	89 45 fc             	mov    %eax,-0x4(%ebp)
424157:	74 05                	je     0x42415e
424159:	e8 57 d3 ff ff       	call   0x4214b5
42415e:	8b 4d f4             	mov    -0xc(%ebp),%ecx
424161:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
424168:	c9                   	leave
424169:	c3                   	ret
42416a:	b8 e0 a0 42 00       	mov    $0x42a0e0,%eax
42416f:	c3                   	ret
424170:	6a 08                	push   $0x8
424172:	e8 8a 8b ff ff       	call   0x41cd01
424177:	85 c0                	test   %eax,%eax
424179:	59                   	pop    %ecx
42417a:	74 0b                	je     0x424187
42417c:	c7 00 64 a3 42 00    	movl   $0x42a364,(%eax)
424182:	83 60 04 00          	andl   $0x0,0x4(%eax)
424186:	c3                   	ret
424187:	33 c0                	xor    %eax,%eax
424189:	c3                   	ret
42418a:	b8 40 a3 42 00       	mov    $0x42a340,%eax
42418f:	c3                   	ret
424190:	b8 d5 79 42 00       	mov    $0x4279d5,%eax
424195:	e8 96 7a fe ff       	call   0x40bc30
42419a:	51                   	push   %ecx
42419b:	68 bc 00 00 00       	push   $0xbc
4241a0:	e8 5c 8b ff ff       	call   0x41cd01
4241a5:	59                   	pop    %ecx
4241a6:	8b c8                	mov    %eax,%ecx
4241a8:	89 4d f0             	mov    %ecx,-0x10(%ebp)
4241ab:	33 c0                	xor    %eax,%eax
4241ad:	3b c8                	cmp    %eax,%ecx
4241af:	89 45 fc             	mov    %eax,-0x4(%ebp)
4241b2:	74 05                	je     0x4241b9
4241b4:	e8 f8 dd ff ff       	call   0x421fb1
4241b9:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4241bc:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4241c3:	c9                   	leave
4241c4:	c3                   	ret
4241c5:	b8 d0 a7 42 00       	mov    $0x42a7d0,%eax
4241ca:	c3                   	ret
4241cb:	b8 30 aa 42 00       	mov    $0x42aa30,%eax
4241d0:	c3                   	ret
4241d1:	55                   	push   %ebp
4241d2:	8b ec                	mov    %esp,%ebp
4241d4:	81 ec 90 00 00 00    	sub    $0x90,%esp
4241da:	53                   	push   %ebx
4241db:	56                   	push   %esi
4241dc:	57                   	push   %edi
4241dd:	ff 15 b0 97 43 00    	call   *0x4397b0
4241e3:	0f bf d8             	movswl %ax,%ebx
4241e6:	c1 e8 10             	shr    $0x10,%eax
4241e9:	0f bf c8             	movswl %ax,%ecx
4241ec:	83 fb 20             	cmp    $0x20,%ebx
4241ef:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4241f2:	7e 03                	jle    0x4241f7
4241f4:	6a 20                	push   $0x20
4241f6:	5b                   	pop    %ebx
4241f7:	8d 43 fc             	lea    -0x4(%ebx),%eax
4241fa:	8d 73 0f             	lea    0xf(%ebx),%esi
4241fd:	99                   	cltd
4241fe:	2b c2                	sub    %edx,%eax
424200:	c1 fe 04             	sar    $0x4,%esi
424203:	8b f8                	mov    %eax,%edi
424205:	8b c6                	mov    %esi,%eax
424207:	d1 ff                	sar    $1,%edi
424209:	c1 e0 04             	shl    $0x4,%eax
42420c:	03 f8                	add    %eax,%edi
42420e:	2b fb                	sub    %ebx,%edi
424210:	83 ff 0c             	cmp    $0xc,%edi
424213:	7e 03                	jle    0x424218
424215:	6a 0c                	push   $0xc
424217:	5f                   	pop    %edi
424218:	6a 20                	push   $0x20
42421a:	58                   	pop    %eax
42421b:	3b c8                	cmp    %eax,%ecx
42421d:	7e 03                	jle    0x424222
42421f:	89 45 f4             	mov    %eax,-0xc(%ebp)
424222:	68 80 00 00 00       	push   $0x80
424227:	8d 85 70 ff ff ff    	lea    -0x90(%ebp),%eax
42422d:	68 ff 00 00 00       	push   $0xff
424232:	50                   	push   %eax
424233:	e8 d8 81 fe ff       	call   0x40c410
424238:	8b 45 f4             	mov    -0xc(%ebp),%eax
42423b:	83 c4 0c             	add    $0xc,%esp
42423e:	83 c0 fa             	add    $0xfffffffa,%eax
424241:	c7 45 fc 28 ac 42 00 	movl   $0x42ac28,-0x4(%ebp)
424248:	d1 f8                	sar    $1,%eax
42424a:	0f af c6             	imul   %esi,%eax
42424d:	03 f6                	add    %esi,%esi
42424f:	c7 45 f8 05 00 00 00 	movl   $0x5,-0x8(%ebp)
424256:	8d 94 45 70 ff ff ff 	lea    -0x90(%ebp,%eax,2),%edx
42425d:	8b 45 fc             	mov    -0x4(%ebp),%eax
424260:	8b cf                	mov    %edi,%ecx
424262:	66 0f b6 00          	movzbw (%eax),%ax
424266:	d3 e0                	shl    %cl,%eax
424268:	ff 45 fc             	incl   -0x4(%ebp)
42426b:	33 c9                	xor    %ecx,%ecx
42426d:	f7 d0                	not    %eax
42426f:	8a cc                	mov    %ah,%cl
424271:	88 42 01             	mov    %al,0x1(%edx)
424274:	88 0a                	mov    %cl,(%edx)
424276:	03 d6                	add    %esi,%edx
424278:	ff 4d f8             	decl   -0x8(%ebp)
42427b:	75 e0                	jne    0x42425d
42427d:	8d 85 70 ff ff ff    	lea    -0x90(%ebp),%eax
424283:	50                   	push   %eax
424284:	6a 01                	push   $0x1
424286:	6a 01                	push   $0x1
424288:	ff 75 f4             	push   -0xc(%ebp)
42428b:	53                   	push   %ebx
42428c:	ff 15 ac 95 43 00    	call   *0x4395ac
424292:	85 c0                	test   %eax,%eax
424294:	a3 d0 6d 43 00       	mov    %eax,0x436dd0
424299:	75 11                	jne    0x4242ac
42429b:	68 e3 7f 00 00       	push   $0x7fe3
4242a0:	50                   	push   %eax
4242a1:	ff 15 ac 97 43 00    	call   *0x4397ac
4242a7:	a3 d0 6d 43 00       	mov    %eax,0x436dd0
4242ac:	5f                   	pop    %edi
4242ad:	5e                   	pop    %esi
4242ae:	5b                   	pop    %ebx
4242af:	c9                   	leave
4242b0:	c3                   	ret
4242b1:	b8 30 ac 42 00       	mov    $0x42ac30,%eax
4242b6:	c3                   	ret
4242b7:	56                   	push   %esi
4242b8:	8b f1                	mov    %ecx,%esi
4242ba:	e8 f8 14 00 00       	call   0x4257b7
4242bf:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
4242c4:	74 07                	je     0x4242cd
4242c6:	56                   	push   %esi
4242c7:	e8 71 8a ff ff       	call   0x41cd3d
4242cc:	59                   	pop    %ecx