430e54:	ff 77 18             	push   0x18(%edi)
430e57:	ff 77 08             	push   0x8(%edi)
430e5a:	57                   	push   %edi
430e5b:	e8 b6 3a ff ff       	call   0x424916
430e60:	59                   	pop    %ecx
430e61:	50                   	push   %eax
430e62:	e8 30 01 00 00       	call   0x430f97
430e67:	83 c4 0c             	add    $0xc,%esp
430e6a:	89 47 04             	mov    %eax,0x4(%edi)
430e6d:	85 c0                	test   %eax,%eax
430e6f:	0f 84 8c 00 00 00    	je     0x430f01
430e75:	83 f8 ff             	cmp    $0xffffffff,%eax
430e78:	0f 84 83 00 00 00    	je     0x430f01
430e7e:	f6 47 0c 82          	testb  $0x82,0xc(%edi)
430e82:	75 51                	jne    0x430ed5
430e84:	57                   	push   %edi
430e85:	e8 8c 3a ff ff       	call   0x424916
430e8a:	59                   	pop    %ecx
430e8b:	83 f8 ff             	cmp    $0xffffffff,%eax
430e8e:	74 30                	je     0x430ec0
430e90:	57                   	push   %edi
430e91:	e8 80 3a ff ff       	call   0x424916
430e96:	59                   	pop    %ecx
430e97:	83 f8 fe             	cmp    $0xfffffffe,%eax
430e9a:	74 24                	je     0x430ec0
430e9c:	56                   	push   %esi
430e9d:	57                   	push   %edi
430e9e:	e8 73 3a ff ff       	call   0x424916
430ea3:	8b f0                	mov    %eax,%esi
430ea5:	57                   	push   %edi
430ea6:	c1 fe 05             	sar    $0x5,%esi
430ea9:	e8 68 3a ff ff       	call   0x424916
430eae:	83 e0 1f             	and    $0x1f,%eax
430eb1:	59                   	pop    %ecx
430eb2:	c1 e0 06             	shl    $0x6,%eax
430eb5:	03 04 b5 e0 49 4c 00 	add    0x4c49e0(,%esi,4),%eax
430ebc:	59                   	pop    %ecx
430ebd:	5e                   	pop    %esi
430ebe:	eb 05                	jmp    0x430ec5
430ec0:	b8 90 fe 4b 00       	mov    $0x4bfe90,%eax
430ec5:	8a 40 04             	mov    0x4(%eax),%al
430ec8:	24 82                	and    $0x82,%al
430eca:	3c 82                	cmp    $0x82,%al
430ecc:	75 07                	jne    0x430ed5
430ece:	81 4f 0c 00 20 00 00 	orl    $0x2000,0xc(%edi)
430ed5:	81 7f 18 00 02 00 00 	cmpl   $0x200,0x18(%edi)
430edc:	75 16                	jne    0x430ef4
430ede:	f6 47 0c 08          	testb  $0x8,0xc(%edi)
430ee2:	74 10                	je     0x430ef4
430ee4:	f7 47 0c 00 04 00 00 	testl  $0x400,0xc(%edi)
430eeb:	75 07                	jne    0x430ef4
430eed:	c7 47 18 00 10 00 00 	movl   $0x1000,0x18(%edi)
430ef4:	8b 0f                	mov    (%edi),%ecx
430ef6:	ff 4f 04             	decl   0x4(%edi)
430ef9:	0f b6 01             	movzbl (%ecx),%eax
430efc:	41                   	inc    %ecx
430efd:	89 0f                	mov    %ecx,(%edi)
430eff:	eb 14                	jmp    0x430f15
430f01:	f7 d8                	neg    %eax
430f03:	1b c0                	sbb    %eax,%eax
430f05:	83 e0 10             	and    $0x10,%eax
430f08:	83 c0 10             	add    $0x10,%eax
430f0b:	09 47 0c             	or     %eax,0xc(%edi)
430f0e:	83 67 04 00          	andl   $0x0,0x4(%edi)
430f12:	83 c8 ff             	or     $0xffffffff,%eax
430f15:	5f                   	pop    %edi
430f16:	5d                   	pop    %ebp
430f17:	c3                   	ret
430f18:	55                   	push   %ebp
430f19:	8b ec                	mov    %esp,%ebp
430f1b:	56                   	push   %esi
430f1c:	8b 75 14             	mov    0x14(%ebp),%esi
430f1f:	85 f6                	test   %esi,%esi
430f21:	75 04                	jne    0x430f27
430f23:	33 c0                	xor    %eax,%eax
430f25:	eb 6d                	jmp    0x430f94
430f27:	8b 45 08             	mov    0x8(%ebp),%eax
430f2a:	85 c0                	test   %eax,%eax
430f2c:	75 13                	jne    0x430f41
430f2e:	e8 35 7e ff ff       	call   0x428d68
430f33:	6a 16                	push   $0x16
430f35:	5e                   	pop    %esi
430f36:	89 30                	mov    %esi,(%eax)
430f38:	e8 b9 80 ff ff       	call   0x428ff6
430f3d:	8b c6                	mov    %esi,%eax
430f3f:	eb 53                	jmp    0x430f94
430f41:	57                   	push   %edi
430f42:	8b 7d 10             	mov    0x10(%ebp),%edi
430f45:	85 ff                	test   %edi,%edi
430f47:	74 14                	je     0x430f5d
430f49:	39 75 0c             	cmp    %esi,0xc(%ebp)
430f4c:	72 0f                	jb     0x430f5d
430f4e:	56                   	push   %esi
430f4f:	57                   	push   %edi
430f50:	50                   	push   %eax
430f51:	e8 2a 01 ff ff       	call   0x421080
430f56:	83 c4 0c             	add    $0xc,%esp
430f59:	33 c0                	xor    %eax,%eax
430f5b:	eb 36                	jmp    0x430f93
430f5d:	ff 75 0c             	push   0xc(%ebp)
430f60:	6a 00                	push   $0x0
430f62:	50                   	push   %eax
430f63:	e8 b8 20 ff ff       	call   0x423020
430f68:	83 c4 0c             	add    $0xc,%esp
430f6b:	85 ff                	test   %edi,%edi
430f6d:	75 09                	jne    0x430f78
430f6f:	e8 f4 7d ff ff       	call   0x428d68
430f74:	6a 16                	push   $0x16
430f76:	eb 0c                	jmp    0x430f84
430f78:	39 75 0c             	cmp    %esi,0xc(%ebp)
430f7b:	73 13                	jae    0x430f90
430f7d:	e8 e6 7d ff ff       	call   0x428d68
430f82:	6a 22                	push   $0x22
430f84:	5e                   	pop    %esi
430f85:	89 30                	mov    %esi,(%eax)
430f87:	e8 6a 80 ff ff       	call   0x428ff6
430f8c:	8b c6                	mov    %esi,%eax
430f8e:	eb 03                	jmp    0x430f93
430f90:	6a 16                	push   $0x16
430f92:	58                   	pop    %eax
430f93:	5f                   	pop    %edi
430f94:	5e                   	pop    %esi
430f95:	5d                   	pop    %ebp
430f96:	c3                   	ret
430f97:	6a 10                	push   $0x10
430f99:	68 b0 bf 4b 00       	push   $0x4bbfb0
430f9e:	e8 9d 7b ff ff       	call   0x428b40
430fa3:	33 db                	xor    %ebx,%ebx
430fa5:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
430fa8:	8b 75 08             	mov    0x8(%ebp),%esi
430fab:	83 fe fe             	cmp    $0xfffffffe,%esi
430fae:	75 17                	jne    0x430fc7
430fb0:	e8 7f 7d ff ff       	call   0x428d34
430fb5:	89 18                	mov    %ebx,(%eax)
430fb7:	e8 ac 7d ff ff       	call   0x428d68
430fbc:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
430fc2:	e9 db 00 00 00       	jmp    0x4310a2
430fc7:	85 f6                	test   %esi,%esi
430fc9:	0f 88 bc 00 00 00    	js     0x43108b
430fcf:	3b 35 8c 51 4c 00    	cmp    0x4c518c,%esi
430fd5:	0f 83 b0 00 00 00    	jae    0x43108b
430fdb:	8b de                	mov    %esi,%ebx
430fdd:	c1 fb 05             	sar    $0x5,%ebx
430fe0:	8b fe                	mov    %esi,%edi
430fe2:	83 e7 1f             	and    $0x1f,%edi
430fe5:	c1 e7 06             	shl    $0x6,%edi
430fe8:	8b 04 9d e0 49 4c 00 	mov    0x4c49e0(,%ebx,4),%eax
430fef:	0f be 44 38 04       	movsbl 0x4(%eax,%edi,1),%eax
430ff4:	83 e0 01             	and    $0x1,%eax
430ff7:	75 0d                	jne    0x431006
430ff9:	e8 36 7d ff ff       	call   0x428d34
430ffe:	83 20 00             	andl   $0x0,(%eax)
431001:	e9 8c 00 00 00       	jmp    0x431092
431006:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
43100b:	3b 45 10             	cmp    0x10(%ebp),%eax
43100e:	1b c0                	sbb    %eax,%eax
431010:	40                   	inc    %eax
431011:	75 15                	jne    0x431028
431013:	e8 1c 7d ff ff       	call   0x428d34
431018:	83 20 00             	andl   $0x0,(%eax)
43101b:	e8 48 7d ff ff       	call   0x428d68
431020:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
431026:	eb 75                	jmp    0x43109d
431028:	56                   	push   %esi
431029:	e8 18 c4 ff ff       	call   0x42d446
43102e:	59                   	pop    %ecx
43102f:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
431033:	8b 04 9d e0 49 4c 00 	mov    0x4c49e0(,%ebx,4),%eax
43103a:	f6 44 38 04 01       	testb  $0x1,0x4(%eax,%edi,1)
43103f:	74 13                	je     0x431054
431041:	ff 75 10             	push   0x10(%ebp)
431044:	ff 75 0c             	push   0xc(%ebp)
431047:	56                   	push   %esi
431048:	e8 5e 00 00 00       	call   0x4310ab
43104d:	83 c4 0c             	add    $0xc,%esp
431050:	8b f8                	mov    %eax,%edi
431052:	eb 16                	jmp    0x43106a
431054:	e8 0f 7d ff ff       	call   0x428d68
431059:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
43105f:	e8 d0 7c ff ff       	call   0x428d34
431064:	83 20 00             	andl   $0x0,(%eax)
431067:	83 cf ff             	or     $0xffffffff,%edi
43106a:	89 7d e4             	mov    %edi,-0x1c(%ebp)
43106d:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
431074:	e8 0a 00 00 00       	call   0x431083
431079:	8b c7                	mov    %edi,%eax
43107b:	eb 28                	jmp    0x4310a5
43107d:	8b 75 08             	mov    0x8(%ebp),%esi
431080:	8b 7d e4             	mov    -0x1c(%ebp),%edi
431083:	56                   	push   %esi
431084:	e8 63 c7 ff ff       	call   0x42d7ec
431089:	59                   	pop    %ecx
43108a:	c3                   	ret
43108b:	e8 a4 7c ff ff       	call   0x428d34
431090:	89 18                	mov    %ebx,(%eax)
431092:	e8 d1 7c ff ff       	call   0x428d68
431097:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
43109d:	e8 54 7f ff ff       	call   0x428ff6
4310a2:	83 c8 ff             	or     $0xffffffff,%eax
4310a5:	e8 db 7a ff ff       	call   0x428b85
4310aa:	c3                   	ret
4310ab:	55                   	push   %ebp
4310ac:	8b ec                	mov    %esp,%ebp
4310ae:	83 ec 28             	sub    $0x28,%esp
4310b1:	8b 45 08             	mov    0x8(%ebp),%eax
4310b4:	53                   	push   %ebx
4310b5:	56                   	push   %esi
4310b6:	8b 75 10             	mov    0x10(%ebp),%esi
4310b9:	57                   	push   %edi
4310ba:	6a fe                	push   $0xfffffffe
4310bc:	59                   	pop    %ecx
4310bd:	33 ff                	xor    %edi,%edi
4310bf:	89 4d e8             	mov    %ecx,-0x18(%ebp)
4310c2:	89 7d e0             	mov    %edi,-0x20(%ebp)
4310c5:	89 75 d8             	mov    %esi,-0x28(%ebp)
4310c8:	3b c1                	cmp    %ecx,%eax
4310ca:	75 17                	jne    0x4310e3
4310cc:	e8 63 7c ff ff       	call   0x428d34
4310d1:	89 38                	mov    %edi,(%eax)
4310d3:	e8 90 7c ff ff       	call   0x428d68
4310d8:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
4310de:	e9 4f 07 00 00       	jmp    0x431832
4310e3:	85 c0                	test   %eax,%eax
4310e5:	0f 88 30 07 00 00    	js     0x43181b
4310eb:	3b 05 8c 51 4c 00    	cmp    0x4c518c,%eax
4310f1:	0f 83 24 07 00 00    	jae    0x43181b
4310f7:	8b c8                	mov    %eax,%ecx
4310f9:	8b d8                	mov    %eax,%ebx
4310fb:	c1 f9 05             	sar    $0x5,%ecx
4310fe:	83 e3 1f             	and    $0x1f,%ebx
431101:	c1 e3 06             	shl    $0x6,%ebx
431104:	89 4d f4             	mov    %ecx,-0xc(%ebp)
431107:	89 5d dc             	mov    %ebx,-0x24(%ebp)
43110a:	8b 14 8d e0 49 4c 00 	mov    0x4c49e0(,%ecx,4),%edx
431111:	8a 44 1a 04          	mov    0x4(%edx,%ebx,1),%al
431115:	a8 01                	test   $0x1,%al
431117:	0f 84 fe 06 00 00    	je     0x43181b
43111d:	81 fe ff ff ff 7f    	cmp    $0x7fffffff,%esi
431123:	76 17                	jbe    0x43113c
431125:	e8 0a 7c ff ff       	call   0x428d34
43112a:	89 38                	mov    %edi,(%eax)
43112c:	e8 37 7c ff ff       	call   0x428d68
431131:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
431137:	e9 f1 06 00 00       	jmp    0x43182d
43113c:	85 f6                	test   %esi,%esi
43113e:	0f 84 d3 06 00 00    	je     0x431817
431144:	a8 02                	test   $0x2,%al
431146:	0f 85 cb 06 00 00    	jne    0x431817
43114c:	39 7d 0c             	cmp    %edi,0xc(%ebp)
43114f:	75 09                	jne    0x43115a
431151:	e8 de 7b ff ff       	call   0x428d34
431156:	21 38                	and    %edi,(%eax)
431158:	eb d2                	jmp    0x43112c
43115a:	8a 44 1a 24          	mov    0x24(%edx,%ebx,1),%al
43115e:	02 c0                	add    %al,%al
431160:	d0 f8                	sar    $1,%al
431162:	88 45 13             	mov    %al,0x13(%ebp)
431165:	0f be c0             	movsbl %al,%eax
431168:	48                   	dec    %eax
431169:	74 16                	je     0x431181
43116b:	48                   	dec    %eax
43116c:	75 0b                	jne    0x431179
43116e:	8b c6                	mov    %esi,%eax
431170:	f7 d0                	not    %eax
431172:	a8 01                	test   $0x1,%al
431174:	74 db                	je     0x431151
431176:	83 e6 fe             	and    $0xfffffffe,%esi
431179:	8b 45 0c             	mov    0xc(%ebp),%eax
43117c:	89 45 f0             	mov    %eax,-0x10(%ebp)
43117f:	eb 64                	jmp    0x4311e5
431181:	8b c6                	mov    %esi,%eax
431183:	f7 d0                	not    %eax
431185:	a8 01                	test   $0x1,%al
431187:	74 c8                	je     0x431151
431189:	d1 ee                	shr    $1,%esi
43118b:	83 fe 04             	cmp    $0x4,%esi
43118e:	73 03                	jae    0x431193
431190:	6a 04                	push   $0x4
431192:	5e                   	pop    %esi
431193:	56                   	push   %esi
431194:	e8 c4 78 ff ff       	call   0x428a5d
431199:	89 45 f0             	mov    %eax,-0x10(%ebp)
43119c:	59                   	pop    %ecx
43119d:	85 c0                	test   %eax,%eax
43119f:	75 1b                	jne    0x4311bc
4311a1:	e8 c2 7b ff ff       	call   0x428d68
4311a6:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
4311ac:	e8 83 7b ff ff       	call   0x428d34
4311b1:	c7 00 08 00 00 00    	movl   $0x8,(%eax)
4311b7:	e9 76 06 00 00       	jmp    0x431832
4311bc:	6a 01                	push   $0x1
4311be:	6a 00                	push   $0x0
4311c0:	6a 00                	push   $0x0
4311c2:	ff 75 08             	push   0x8(%ebp)
4311c5:	e8 47 09 00 00       	call   0x431b11
4311ca:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4311cd:	83 c4 10             	add    $0x10,%esp
4311d0:	8b 0c 8d e0 49 4c 00 	mov    0x4c49e0(,%ecx,4),%ecx
4311d7:	89 44 19 28          	mov    %eax,0x28(%ecx,%ebx,1)
4311db:	8b 45 f0             	mov    -0x10(%ebp),%eax
4311de:	89 54 19 2c          	mov    %edx,0x2c(%ecx,%ebx,1)
4311e2:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4311e5:	8b 14 8d e0 49 4c 00 	mov    0x4c49e0(,%ecx,4),%edx
4311ec:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4311ef:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4311f2:	f6 44 1a 04 48       	testb  $0x48,0x4(%edx,%ebx,1)
4311f7:	0f 84 85 00 00 00    	je     0x431282
4311fd:	8a 54 1a 05          	mov    0x5(%edx,%ebx,1),%dl
431201:	80 fa 0a             	cmp    $0xa,%dl
431204:	74 7c                	je     0x431282
431206:	85 f6                	test   %esi,%esi
431208:	74 78                	je     0x431282
43120a:	88 10                	mov    %dl,(%eax)
43120c:	33 ff                	xor    %edi,%edi
43120e:	8d 50 01             	lea    0x1(%eax),%edx
431211:	47                   	inc    %edi
431212:	8b 04 8d e0 49 4c 00 	mov    0x4c49e0(,%ecx,4),%eax
431219:	4e                   	dec    %esi
43121a:	80 7d 13 00          	cmpb   $0x0,0x13(%ebp)
43121e:	89 55 e4             	mov    %edx,-0x1c(%ebp)
431221:	c6 44 18 05 0a       	movb   $0xa,0x5(%eax,%ebx,1)
431226:	74 5a                	je     0x431282
431228:	8b 04 8d e0 49 4c 00 	mov    0x4c49e0(,%ecx,4),%eax
43122f:	8a 44 18 25          	mov    0x25(%eax,%ebx,1),%al
431233:	3c 0a                	cmp    $0xa,%al
431235:	74 4b                	je     0x431282
431237:	85 f6                	test   %esi,%esi
431239:	74 47                	je     0x431282
43123b:	88 02                	mov    %al,(%edx)
43123d:	42                   	inc    %edx
43123e:	8b 04 8d e0 49 4c 00 	mov    0x4c49e0(,%ecx,4),%eax
431245:	4e                   	dec    %esi
431246:	80 7d 13 01          	cmpb   $0x1,0x13(%ebp)
43124a:	6a 02                	push   $0x2
43124c:	89 55 e4             	mov    %edx,-0x1c(%ebp)
43124f:	5f                   	pop    %edi
431250:	c6 44 18 25 0a       	movb   $0xa,0x25(%eax,%ebx,1)
431255:	75 2b                	jne    0x431282
431257:	8b 04 8d e0 49 4c 00 	mov    0x4c49e0(,%ecx,4),%eax
43125e:	8a 44 18 26          	mov    0x26(%eax,%ebx,1),%al
431262:	3c 0a                	cmp    $0xa,%al
431264:	74 1c                	je     0x431282
431266:	85 f6                	test   %esi,%esi
431268:	74 18                	je     0x431282
43126a:	6a 03                	push   $0x3
43126c:	88 02                	mov    %al,(%edx)
43126e:	42                   	inc    %edx
43126f:	8b 04 8d e0 49 4c 00 	mov    0x4c49e0(,%ecx,4),%eax
431276:	4e                   	dec    %esi
431277:	5f                   	pop    %edi