430e47:	83 c4 10             	add    $0x10,%esp
430e4a:	8b f8                	mov    %eax,%edi
430e4c:	3b f3                	cmp    %ebx,%esi
430e4e:	74 1a                	je     0x430e6a
430e50:	ff 4d e4             	decl   -0x1c(%ebp)
430e53:	78 07                	js     0x430e5c
430e55:	8b 45 e0             	mov    -0x20(%ebp),%eax
430e58:	88 18                	mov    %bl,(%eax)
430e5a:	eb 0c                	jmp    0x430e68
430e5c:	8d 45 e0             	lea    -0x20(%ebp),%eax
430e5f:	50                   	push   %eax
430e60:	53                   	push   %ebx
430e61:	e8 b8 5a 00 00       	call   0x43691e
430e66:	59                   	pop    %ecx
430e67:	59                   	pop    %ecx
430e68:	8b c7                	mov    %edi,%eax
430e6a:	5e                   	pop    %esi
430e6b:	5f                   	pop    %edi
430e6c:	5b                   	pop    %ebx
430e6d:	c9                   	leave
430e6e:	c3                   	ret
430e6f:	8b ff                	mov    %edi,%edi
430e71:	55                   	push   %ebp
430e72:	8b ec                	mov    %esp,%ebp
430e74:	8d 45 18             	lea    0x18(%ebp),%eax
430e77:	50                   	push   %eax
430e78:	ff 75 14             	push   0x14(%ebp)
430e7b:	ff 75 10             	push   0x10(%ebp)
430e7e:	ff 75 0c             	push   0xc(%ebp)
430e81:	ff 75 08             	push   0x8(%ebp)
430e84:	e8 96 86 00 00       	call   0x43951f
430e89:	83 c4 14             	add    $0x14,%esp
430e8c:	5d                   	pop    %ebp
430e8d:	c3                   	ret
430e8e:	cc                   	int3
430e8f:	cc                   	int3
430e90:	51                   	push   %ecx
430e91:	8d 4c 24 04          	lea    0x4(%esp),%ecx
430e95:	2b c8                	sub    %eax,%ecx
430e97:	1b c0                	sbb    %eax,%eax
430e99:	f7 d0                	not    %eax
430e9b:	23 c8                	and    %eax,%ecx
430e9d:	8b c4                	mov    %esp,%eax
430e9f:	25 00 f0 ff ff       	and    $0xfffff000,%eax
430ea4:	3b c8                	cmp    %eax,%ecx
430ea6:	72 0a                	jb     0x430eb2
430ea8:	8b c1                	mov    %ecx,%eax
430eaa:	59                   	pop    %ecx
430eab:	94                   	xchg   %eax,%esp
430eac:	8b 00                	mov    (%eax),%eax
430eae:	89 04 24             	mov    %eax,(%esp)
430eb1:	c3                   	ret
430eb2:	2d 00 10 00 00       	sub    $0x1000,%eax
430eb7:	85 00                	test   %eax,(%eax)
430eb9:	eb e9                	jmp    0x430ea4
430ebb:	8b ff                	mov    %edi,%edi
430ebd:	55                   	push   %ebp
430ebe:	8b ec                	mov    %esp,%ebp
430ec0:	8b 45 08             	mov    0x8(%ebp),%eax
430ec3:	66 8b 55 0c          	mov    0xc(%ebp),%dx
430ec7:	eb 08                	jmp    0x430ed1
430ec9:	66 3b ca             	cmp    %dx,%cx
430ecc:	74 12                	je     0x430ee0
430ece:	83 c0 02             	add    $0x2,%eax
430ed1:	0f b7 08             	movzwl (%eax),%ecx
430ed4:	66 85 c9             	test   %cx,%cx
430ed7:	75 f0                	jne    0x430ec9
430ed9:	66 39 10             	cmp    %dx,(%eax)
430edc:	74 02                	je     0x430ee0
430ede:	33 c0                	xor    %eax,%eax
430ee0:	5d                   	pop    %ebp
430ee1:	c3                   	ret
430ee2:	8b ff                	mov    %edi,%edi
430ee4:	55                   	push   %ebp
430ee5:	8b ec                	mov    %esp,%ebp
430ee7:	83 ec 0c             	sub    $0xc,%esp
430eea:	53                   	push   %ebx
430eeb:	56                   	push   %esi
430eec:	57                   	push   %edi
430eed:	8b 7d 0c             	mov    0xc(%ebp),%edi
430ef0:	85 ff                	test   %edi,%edi
430ef2:	74 1d                	je     0x430f11
430ef4:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
430ef8:	74 17                	je     0x430f11
430efa:	8b 75 14             	mov    0x14(%ebp),%esi
430efd:	85 f6                	test   %esi,%esi
430eff:	75 17                	jne    0x430f18
430f01:	e8 a2 3a 00 00       	call   0x4349a8
430f06:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
430f0c:	e8 5d 34 00 00       	call   0x43436e
430f11:	33 c0                	xor    %eax,%eax
430f13:	5f                   	pop    %edi
430f14:	5e                   	pop    %esi
430f15:	5b                   	pop    %ebx
430f16:	c9                   	leave
430f17:	c3                   	ret
430f18:	8b 4d 08             	mov    0x8(%ebp),%ecx
430f1b:	85 c9                	test   %ecx,%ecx
430f1d:	74 e2                	je     0x430f01
430f1f:	83 c8 ff             	or     $0xffffffff,%eax
430f22:	33 d2                	xor    %edx,%edx
430f24:	f7 f7                	div    %edi
430f26:	39 45 10             	cmp    %eax,0x10(%ebp)
430f29:	77 d6                	ja     0x430f01
430f2b:	0f af 7d 10          	imul   0x10(%ebp),%edi
430f2f:	f7 46 0c 0c 01 00 00 	testl  $0x10c,0xc(%esi)
430f36:	89 4d fc             	mov    %ecx,-0x4(%ebp)
430f39:	89 7d f4             	mov    %edi,-0xc(%ebp)
430f3c:	8b df                	mov    %edi,%ebx
430f3e:	74 08                	je     0x430f48
430f40:	8b 46 18             	mov    0x18(%esi),%eax
430f43:	89 45 f8             	mov    %eax,-0x8(%ebp)
430f46:	eb 07                	jmp    0x430f4f
430f48:	c7 45 f8 00 10 00 00 	movl   $0x1000,-0x8(%ebp)
430f4f:	85 ff                	test   %edi,%edi
430f51:	0f 84 bf 00 00 00    	je     0x431016
430f57:	8b 4e 0c             	mov    0xc(%esi),%ecx
430f5a:	81 e1 08 01 00 00    	and    $0x108,%ecx
430f60:	74 2f                	je     0x430f91
430f62:	8b 46 04             	mov    0x4(%esi),%eax
430f65:	85 c0                	test   %eax,%eax
430f67:	74 28                	je     0x430f91
430f69:	0f 88 af 00 00 00    	js     0x43101e
430f6f:	8b fb                	mov    %ebx,%edi
430f71:	3b d8                	cmp    %eax,%ebx
430f73:	72 02                	jb     0x430f77
430f75:	8b f8                	mov    %eax,%edi
430f77:	57                   	push   %edi
430f78:	ff 75 fc             	push   -0x4(%ebp)
430f7b:	ff 36                	push   (%esi)
430f7d:	e8 8e 1d 00 00       	call   0x432d10
430f82:	29 7e 04             	sub    %edi,0x4(%esi)
430f85:	01 3e                	add    %edi,(%esi)
430f87:	83 c4 0c             	add    $0xc,%esp
430f8a:	2b df                	sub    %edi,%ebx
430f8c:	01 7d fc             	add    %edi,-0x4(%ebp)
430f8f:	eb 4f                	jmp    0x430fe0
430f91:	3b 5d f8             	cmp    -0x8(%ebp),%ebx
430f94:	72 4f                	jb     0x430fe5
430f96:	85 c9                	test   %ecx,%ecx
430f98:	74 0b                	je     0x430fa5
430f9a:	56                   	push   %esi
430f9b:	e8 68 56 00 00       	call   0x436608
430fa0:	59                   	pop    %ecx
430fa1:	85 c0                	test   %eax,%eax
430fa3:	75 7d                	jne    0x431022
430fa5:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
430fa9:	8b fb                	mov    %ebx,%edi
430fab:	74 09                	je     0x430fb6
430fad:	33 d2                	xor    %edx,%edx
430faf:	8b c3                	mov    %ebx,%eax
430fb1:	f7 75 f8             	divl   -0x8(%ebp)
430fb4:	2b fa                	sub    %edx,%edi
430fb6:	57                   	push   %edi
430fb7:	ff 75 fc             	push   -0x4(%ebp)
430fba:	56                   	push   %esi
430fbb:	e8 52 52 00 00       	call   0x436212
430fc0:	59                   	pop    %ecx
430fc1:	50                   	push   %eax
430fc2:	e8 1e 8d 00 00       	call   0x439ce5
430fc7:	83 c4 0c             	add    $0xc,%esp
430fca:	83 f8 ff             	cmp    $0xffffffff,%eax
430fcd:	74 61                	je     0x431030
430fcf:	8b cf                	mov    %edi,%ecx
430fd1:	3b c7                	cmp    %edi,%eax
430fd3:	77 02                	ja     0x430fd7
430fd5:	8b c8                	mov    %eax,%ecx
430fd7:	01 4d fc             	add    %ecx,-0x4(%ebp)
430fda:	2b d9                	sub    %ecx,%ebx
430fdc:	3b c7                	cmp    %edi,%eax
430fde:	72 50                	jb     0x431030
430fe0:	8b 7d f4             	mov    -0xc(%ebp),%edi
430fe3:	eb 29                	jmp    0x43100e
430fe5:	8b 45 fc             	mov    -0x4(%ebp),%eax
430fe8:	0f be 00             	movsbl (%eax),%eax
430feb:	56                   	push   %esi
430fec:	50                   	push   %eax
430fed:	e8 2c 59 00 00       	call   0x43691e
430ff2:	59                   	pop    %ecx
430ff3:	59                   	pop    %ecx
430ff4:	83 f8 ff             	cmp    $0xffffffff,%eax
430ff7:	74 29                	je     0x431022
430ff9:	ff 45 fc             	incl   -0x4(%ebp)
430ffc:	8b 46 18             	mov    0x18(%esi),%eax
430fff:	4b                   	dec    %ebx
431000:	89 45 f8             	mov    %eax,-0x8(%ebp)
431003:	85 c0                	test   %eax,%eax
431005:	7f 07                	jg     0x43100e
431007:	c7 45 f8 01 00 00 00 	movl   $0x1,-0x8(%ebp)
43100e:	85 db                	test   %ebx,%ebx
431010:	0f 85 41 ff ff ff    	jne    0x430f57
431016:	8b 45 10             	mov    0x10(%ebp),%eax
431019:	e9 f5 fe ff ff       	jmp    0x430f13
43101e:	83 4e 0c 20          	orl    $0x20,0xc(%esi)
431022:	8b c7                	mov    %edi,%eax
431024:	2b c3                	sub    %ebx,%eax
431026:	33 d2                	xor    %edx,%edx
431028:	f7 75 0c             	divl   0xc(%ebp)
43102b:	e9 e3 fe ff ff       	jmp    0x430f13
431030:	83 4e 0c 20          	orl    $0x20,0xc(%esi)
431034:	8b 45 f4             	mov    -0xc(%ebp),%eax
431037:	eb eb                	jmp    0x431024
431039:	6a 0c                	push   $0xc
43103b:	68 d0 db 46 00       	push   $0x46dbd0
431040:	e8 3b 3d 00 00       	call   0x434d80
431045:	33 f6                	xor    %esi,%esi
431047:	39 75 0c             	cmp    %esi,0xc(%ebp)
43104a:	74 21                	je     0x43106d
43104c:	39 75 10             	cmp    %esi,0x10(%ebp)
43104f:	74 1c                	je     0x43106d
431051:	33 c0                	xor    %eax,%eax
431053:	39 75 14             	cmp    %esi,0x14(%ebp)
431056:	0f 95 c0             	setne  %al
431059:	3b c6                	cmp    %esi,%eax
43105b:	75 18                	jne    0x431075
43105d:	e8 46 39 00 00       	call   0x4349a8
431062:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
431068:	e8 01 33 00 00       	call   0x43436e
43106d:	33 c0                	xor    %eax,%eax
43106f:	e8 51 3d 00 00       	call   0x434dc5
431074:	c3                   	ret
431075:	ff 75 14             	push   0x14(%ebp)
431078:	e8 a2 f3 ff ff       	call   0x43041f
43107d:	59                   	pop    %ecx
43107e:	89 75 fc             	mov    %esi,-0x4(%ebp)
431081:	ff 75 14             	push   0x14(%ebp)
431084:	ff 75 10             	push   0x10(%ebp)
431087:	ff 75 0c             	push   0xc(%ebp)
43108a:	ff 75 08             	push   0x8(%ebp)
43108d:	e8 50 fe ff ff       	call   0x430ee2
431092:	83 c4 10             	add    $0x10,%esp
431095:	89 45 e4             	mov    %eax,-0x1c(%ebp)
431098:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
43109f:	e8 05 00 00 00       	call   0x4310a9
4310a4:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4310a7:	eb c6                	jmp    0x43106f
4310a9:	ff 75 14             	push   0x14(%ebp)
4310ac:	e8 e1 f3 ff ff       	call   0x430492
4310b1:	59                   	pop    %ecx
4310b2:	c3                   	ret
4310b3:	8b ff                	mov    %edi,%edi
4310b5:	55                   	push   %ebp
4310b6:	8b ec                	mov    %esp,%ebp
4310b8:	56                   	push   %esi
4310b9:	8b 75 08             	mov    0x8(%ebp),%esi
4310bc:	57                   	push   %edi
4310bd:	83 cf ff             	or     $0xffffffff,%edi
4310c0:	85 f6                	test   %esi,%esi
4310c2:	75 14                	jne    0x4310d8
4310c4:	e8 df 38 00 00       	call   0x4349a8
4310c9:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4310cf:	e8 9a 32 00 00       	call   0x43436e
4310d4:	0b c7                	or     %edi,%eax
4310d6:	eb 44                	jmp    0x43111c
4310d8:	f6 46 0c 83          	testb  $0x83,0xc(%esi)
4310dc:	74 38                	je     0x431116
4310de:	56                   	push   %esi
4310df:	e8 24 55 00 00       	call   0x436608
4310e4:	56                   	push   %esi
4310e5:	8b f8                	mov    %eax,%edi
4310e7:	e8 cd 8c 00 00       	call   0x439db9
4310ec:	56                   	push   %esi
4310ed:	e8 20 51 00 00       	call   0x436212
4310f2:	50                   	push   %eax
4310f3:	e8 28 05 00 00       	call   0x431620
4310f8:	83 c4 10             	add    $0x10,%esp
4310fb:	85 c0                	test   %eax,%eax
4310fd:	79 05                	jns    0x431104
4310ff:	83 cf ff             	or     $0xffffffff,%edi
431102:	eb 12                	jmp    0x431116
431104:	8b 46 1c             	mov    0x1c(%esi),%eax
431107:	85 c0                	test   %eax,%eax
431109:	74 0b                	je     0x431116
43110b:	50                   	push   %eax
43110c:	e8 8c f8 ff ff       	call   0x43099d
431111:	83 66 1c 00          	andl   $0x0,0x1c(%esi)
431115:	59                   	pop    %ecx
431116:	83 66 0c 00          	andl   $0x0,0xc(%esi)
43111a:	8b c7                	mov    %edi,%eax
43111c:	5f                   	pop    %edi
43111d:	5e                   	pop    %esi
43111e:	5d                   	pop    %ebp
43111f:	c3                   	ret
431120:	6a 0c                	push   $0xc
431122:	68 f0 db 46 00       	push   $0x46dbf0
431127:	e8 54 3c 00 00       	call   0x434d80
43112c:	83 4d e4 ff          	orl    $0xffffffff,-0x1c(%ebp)
431130:	33 c0                	xor    %eax,%eax
431132:	8b 75 08             	mov    0x8(%ebp),%esi
431135:	85 f6                	test   %esi,%esi
431137:	0f 95 c0             	setne  %al
43113a:	85 c0                	test   %eax,%eax
43113c:	75 15                	jne    0x431153
43113e:	e8 65 38 00 00       	call   0x4349a8
431143:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
431149:	e8 20 32 00 00       	call   0x43436e
43114e:	83 c8 ff             	or     $0xffffffff,%eax
431151:	eb 0d                	jmp    0x431160
431153:	f6 46 0c 40          	testb  $0x40,0xc(%esi)
431157:	74 0d                	je     0x431166
431159:	83 66 0c 00          	andl   $0x0,0xc(%esi)
43115d:	8b 45 e4             	mov    -0x1c(%ebp),%eax
431160:	e8 60 3c 00 00       	call   0x434dc5
431165:	c3                   	ret
431166:	56                   	push   %esi
431167:	e8 b3 f2 ff ff       	call   0x43041f
43116c:	59                   	pop    %ecx
43116d:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
431171:	56                   	push   %esi
431172:	e8 3c ff ff ff       	call   0x4310b3
431177:	59                   	pop    %ecx
431178:	89 45 e4             	mov    %eax,-0x1c(%ebp)
43117b:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
431182:	e8 05 00 00 00       	call   0x43118c
431187:	eb d4                	jmp    0x43115d
431189:	8b 75 08             	mov    0x8(%ebp),%esi
43118c:	56                   	push   %esi
43118d:	e8 00 f3 ff ff       	call   0x430492
431192:	59                   	pop    %ecx
431193:	c3                   	ret
431194:	6a 0c                	push   $0xc
431196:	68 10 dc 46 00       	push   $0x46dc10
43119b:	e8 e0 3b 00 00       	call   0x434d80
4311a0:	33 ff                	xor    %edi,%edi
4311a2:	89 7d e4             	mov    %edi,-0x1c(%ebp)
4311a5:	33 c0                	xor    %eax,%eax
4311a7:	8b 5d 08             	mov    0x8(%ebp),%ebx
4311aa:	3b df                	cmp    %edi,%ebx
4311ac:	0f 95 c0             	setne  %al
4311af:	3b c7                	cmp    %edi,%eax
4311b1:	75 14                	jne    0x4311c7
4311b3:	e8 f0 37 00 00       	call   0x4349a8
4311b8:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4311be:	e8 ab 31 00 00       	call   0x43436e
4311c3:	33 c0                	xor    %eax,%eax
4311c5:	eb 7b                	jmp    0x431242
4311c7:	33 c0                	xor    %eax,%eax
4311c9:	8b 75 0c             	mov    0xc(%ebp),%esi
4311cc:	3b f7                	cmp    %edi,%esi
4311ce:	0f 95 c0             	setne  %al
4311d1:	3b c7                	cmp    %edi,%eax
4311d3:	74 de                	je     0x4311b3
4311d5:	33 c0                	xor    %eax,%eax
4311d7:	66 39 3e             	cmp    %di,(%esi)
4311da:	0f 95 c0             	setne  %al
4311dd:	3b c7                	cmp    %edi,%eax
4311df:	74 d2                	je     0x4311b3
4311e1:	e8 bd 8e 00 00       	call   0x43a0a3
4311e6:	89 45 08             	mov    %eax,0x8(%ebp)
4311e9:	3b c7                	cmp    %edi,%eax