403d93:	6a 2a                	push   $0x2a
403d95:	89 43 10             	mov    %eax,0x10(%ebx)
403d98:	5a                   	pop    %edx
403d99:	8b 44 be 08          	mov    0x8(%esi,%edi,4),%eax
403d9d:	66 39 10             	cmp    %dx,(%eax)
403da0:	74 13                	je     0x403db5
403da2:	83 4b 04 02          	orl    $0x2,0x4(%ebx)
403da6:	8b 4c be 08          	mov    0x8(%esi,%edi,4),%ecx
403daa:	e8 c7 fe ff ff       	call   0x403c76
403daf:	6a 2a                	push   $0x2a
403db1:	89 43 14             	mov    %eax,0x14(%ebx)
403db4:	5a                   	pop    %edx
403db5:	8b 44 be 0c          	mov    0xc(%esi,%edi,4),%eax
403db9:	66 39 10             	cmp    %dx,(%eax)
403dbc:	74 13                	je     0x403dd1
403dbe:	83 4b 04 04          	orl    $0x4,0x4(%ebx)
403dc2:	8b 4c be 0c          	mov    0xc(%esi,%edi,4),%ecx
403dc6:	e8 ab fe ff ff       	call   0x403c76
403dcb:	6a 2a                	push   $0x2a
403dcd:	89 43 18             	mov    %eax,0x18(%ebx)
403dd0:	5a                   	pop    %edx
403dd1:	8b 44 be 10          	mov    0x10(%esi,%edi,4),%eax
403dd5:	66 39 10             	cmp    %dx,(%eax)
403dd8:	74 13                	je     0x403ded
403dda:	83 4b 04 08          	orl    $0x8,0x4(%ebx)
403dde:	8b 4c be 10          	mov    0x10(%esi,%edi,4),%ecx
403de2:	e8 8f fe ff ff       	call   0x403c76
403de7:	6a 2a                	push   $0x2a
403de9:	89 43 1c             	mov    %eax,0x1c(%ebx)
403dec:	5a                   	pop    %edx
403ded:	8b 44 be 14          	mov    0x14(%esi,%edi,4),%eax
403df1:	66 39 10             	cmp    %dx,(%eax)
403df4:	74 13                	je     0x403e09
403df6:	83 4b 04 10          	orl    $0x10,0x4(%ebx)
403dfa:	8b 4c be 14          	mov    0x14(%esi,%edi,4),%ecx
403dfe:	e8 73 fe ff ff       	call   0x403c76
403e03:	6a 2a                	push   $0x2a
403e05:	89 43 20             	mov    %eax,0x20(%ebx)
403e08:	5a                   	pop    %edx
403e09:	8b 44 be 18          	mov    0x18(%esi,%edi,4),%eax
403e0d:	c7 45 fc 2d 00 00 00 	movl   $0x2d,-0x4(%ebp)
403e14:	66 39 10             	cmp    %dx,(%eax)
403e17:	74 3e                	je     0x403e57
403e19:	83 4b 04 20          	orl    $0x20,0x4(%ebx)
403e1d:	8d 4b 2c             	lea    0x2c(%ebx),%ecx
403e20:	8b 44 be 18          	mov    0x18(%esi,%edi,4),%eax
403e24:	0f b7 00             	movzwl (%eax),%eax
403e27:	83 21 00             	andl   $0x0,(%ecx)
403e2a:	66 3b 45 fc          	cmp    -0x4(%ebp),%ax
403e2e:	75 06                	jne    0x403e36
403e30:	83 63 24 00          	andl   $0x0,0x24(%ebx)
403e34:	eb 21                	jmp    0x403e57
403e36:	51                   	push   %ecx
403e37:	8b d1                	mov    %ecx,%edx
403e39:	8b 4c be 18          	mov    0x18(%esi,%edi,4),%ecx
403e3d:	e8 90 f1 ff ff       	call   0x402fd2
403e42:	8b 4b 2c             	mov    0x2c(%ebx),%ecx
403e45:	8d 51 01             	lea    0x1(%ecx),%edx
403e48:	8a 01                	mov    (%ecx),%al
403e4a:	41                   	inc    %ecx
403e4b:	84 c0                	test   %al,%al
403e4d:	75 f9                	jne    0x403e48
403e4f:	2b ca                	sub    %edx,%ecx
403e51:	6a 2a                	push   $0x2a
403e53:	89 4b 24             	mov    %ecx,0x24(%ebx)
403e56:	5a                   	pop    %edx
403e57:	8b 44 be 1c          	mov    0x1c(%esi,%edi,4),%eax
403e5b:	66 39 10             	cmp    %dx,(%eax)
403e5e:	74 6b                	je     0x403ecb
403e60:	83 4b 04 40          	orl    $0x40,0x4(%ebx)
403e64:	8b 4c be 1c          	mov    0x1c(%esi,%edi,4),%ecx
403e68:	0f b7 01             	movzwl (%ecx),%eax
403e6b:	66 3b 45 fc          	cmp    -0x4(%ebp),%ax
403e6f:	75 0a                	jne    0x403e7b
403e71:	83 63 30 00          	andl   $0x0,0x30(%ebx)
403e75:	83 63 28 00          	andl   $0x0,0x28(%ebx)
403e79:	eb 50                	jmp    0x403ecb
403e7b:	83 f8 30             	cmp    $0x30,%eax
403e7e:	75 1f                	jne    0x403e9f
403e80:	0f b7 41 02          	movzwl 0x2(%ecx),%eax
403e84:	83 f8 58             	cmp    $0x58,%eax
403e87:	74 05                	je     0x403e8e
403e89:	83 f8 78             	cmp    $0x78,%eax
403e8c:	75 11                	jne    0x403e9f
403e8e:	8d 43 28             	lea    0x28(%ebx),%eax
403e91:	83 c1 04             	add    $0x4,%ecx
403e94:	50                   	push   %eax
403e95:	8d 53 30             	lea    0x30(%ebx),%edx
403e98:	e8 2b fd ff ff       	call   0x403bc8
403e9d:	eb 29                	jmp    0x403ec8
403e9f:	51                   	push   %ecx
403ea0:	8b 4d f8             	mov    -0x8(%ebp),%ecx
403ea3:	8d 73 30             	lea    0x30(%ebx),%esi
403ea6:	83 26 00             	andl   $0x0,(%esi)
403ea9:	8b d6                	mov    %esi,%edx
403eab:	8b 4c b9 1c          	mov    0x1c(%ecx,%edi,4),%ecx
403eaf:	e8 1e f1 ff ff       	call   0x402fd2
403eb4:	8b 0e                	mov    (%esi),%ecx
403eb6:	8d 51 01             	lea    0x1(%ecx),%edx
403eb9:	8a 01                	mov    (%ecx),%al
403ebb:	41                   	inc    %ecx
403ebc:	84 c0                	test   %al,%al
403ebe:	75 f9                	jne    0x403eb9
403ec0:	8b 75 f8             	mov    -0x8(%ebp),%esi
403ec3:	2b ca                	sub    %edx,%ecx
403ec5:	89 4b 28             	mov    %ecx,0x28(%ebx)
403ec8:	6a 2a                	push   $0x2a
403eca:	5a                   	pop    %edx
403ecb:	8b 44 be 20          	mov    0x20(%esi,%edi,4),%eax
403ecf:	66 39 10             	cmp    %dx,(%eax)
403ed2:	74 13                	je     0x403ee7
403ed4:	81 4b 04 80 00 00 00 	orl    $0x80,0x4(%ebx)
403edb:	8b 4c be 20          	mov    0x20(%esi,%edi,4),%ecx
403edf:	e8 92 fd ff ff       	call   0x403c76
403ee4:	89 43 0c             	mov    %eax,0xc(%ebx)
403ee7:	5f                   	pop    %edi
403ee8:	5e                   	pop    %esi
403ee9:	5b                   	pop    %ebx
403eea:	c9                   	leave
403eeb:	c2 08 00             	ret    $0x8
403eee:	8b ff                	mov    %edi,%edi
403ef0:	55                   	push   %ebp
403ef1:	8b ec                	mov    %esp,%ebp
403ef3:	51                   	push   %ecx
403ef4:	56                   	push   %esi
403ef5:	8b f2                	mov    %edx,%esi
403ef7:	83 f9 07             	cmp    $0x7,%ecx
403efa:	74 0c                	je     0x403f08
403efc:	6a 1c                	push   $0x1c
403efe:	59                   	pop    %ecx
403eff:	e8 5b eb ff ff       	call   0x402a5f
403f04:	33 c0                	xor    %eax,%eax
403f06:	eb 69                	jmp    0x403f71
403f08:	53                   	push   %ebx
403f09:	57                   	push   %edi
403f0a:	8b 7e 08             	mov    0x8(%esi),%edi
403f0d:	6a 2a                	push   $0x2a
403f0f:	58                   	pop    %eax
403f10:	66 39 07             	cmp    %ax,(%edi)
403f13:	75 02                	jne    0x403f17
403f15:	33 ff                	xor    %edi,%edi
403f17:	8b 4e 0c             	mov    0xc(%esi),%ecx
403f1a:	66 39 01             	cmp    %ax,(%ecx)
403f1d:	75 05                	jne    0x403f24
403f1f:	83 cb ff             	or     $0xffffffff,%ebx
403f22:	eb 0a                	jmp    0x403f2e
403f24:	e8 4d fd ff ff       	call   0x403c76
403f29:	6a 2a                	push   $0x2a
403f2b:	8b d8                	mov    %eax,%ebx
403f2d:	58                   	pop    %eax
403f2e:	8b 4e 10             	mov    0x10(%esi),%ecx
403f31:	66 39 01             	cmp    %ax,(%ecx)
403f34:	75 02                	jne    0x403f38
403f36:	33 c9                	xor    %ecx,%ecx
403f38:	8b 56 14             	mov    0x14(%esi),%edx
403f3b:	66 39 02             	cmp    %ax,(%edx)
403f3e:	75 02                	jne    0x403f42
403f40:	33 d2                	xor    %edx,%edx
403f42:	8b 46 18             	mov    0x18(%esi),%eax
403f45:	6a 2a                	push   $0x2a
403f47:	5e                   	pop    %esi
403f48:	0f b7 00             	movzwl (%eax),%eax
403f4b:	66 3b c6             	cmp    %si,%ax
403f4e:	74 0e                	je     0x403f5e
403f50:	83 f8 74             	cmp    $0x74,%eax
403f53:	74 09                	je     0x403f5e
403f55:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
403f59:	83 f8 54             	cmp    $0x54,%eax
403f5c:	75 04                	jne    0x403f62
403f5e:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
403f62:	ff 75 fc             	push   -0x4(%ebp)
403f65:	52                   	push   %edx
403f66:	51                   	push   %ecx
403f67:	53                   	push   %ebx
403f68:	57                   	push   %edi
403f69:	ff 15 6c f0 40 00    	call   *0x40f06c
403f6f:	5f                   	pop    %edi
403f70:	5b                   	pop    %ebx
403f71:	5e                   	pop    %esi
403f72:	c9                   	leave
403f73:	c3                   	ret
403f74:	8b ff                	mov    %edi,%edi
403f76:	55                   	push   %ebp
403f77:	8b ec                	mov    %esp,%ebp
403f79:	51                   	push   %ecx
403f7a:	53                   	push   %ebx
403f7b:	8b da                	mov    %edx,%ebx
403f7d:	83 f9 04             	cmp    $0x4,%ecx
403f80:	74 0c                	je     0x403f8e
403f82:	6a 1d                	push   $0x1d
403f84:	59                   	pop    %ecx
403f85:	e8 d5 ea ff ff       	call   0x402a5f
403f8a:	33 c0                	xor    %eax,%eax
403f8c:	eb 73                	jmp    0x404001
403f8e:	8b 4b 08             	mov    0x8(%ebx),%ecx
403f91:	56                   	push   %esi
403f92:	57                   	push   %edi
403f93:	6a 2a                	push   $0x2a
403f95:	33 f6                	xor    %esi,%esi
403f97:	58                   	pop    %eax
403f98:	89 75 fc             	mov    %esi,-0x4(%ebp)
403f9b:	66 39 01             	cmp    %ax,(%ecx)
403f9e:	75 04                	jne    0x403fa4
403fa0:	33 c9                	xor    %ecx,%ecx
403fa2:	eb 21                	jmp    0x403fc5
403fa4:	51                   	push   %ecx
403fa5:	8d 55 fc             	lea    -0x4(%ebp),%edx
403fa8:	e8 25 f0 ff ff       	call   0x402fd2
403fad:	8b f8                	mov    %eax,%edi
403faf:	85 ff                	test   %edi,%edi
403fb1:	75 4a                	jne    0x403ffd
403fb3:	8b 75 fc             	mov    -0x4(%ebp),%esi
403fb6:	8b ce                	mov    %esi,%ecx
403fb8:	8d 51 01             	lea    0x1(%ecx),%edx
403fbb:	8a 01                	mov    (%ecx),%al
403fbd:	41                   	inc    %ecx
403fbe:	84 c0                	test   %al,%al
403fc0:	75 f9                	jne    0x403fbb
403fc2:	2b ca                	sub    %edx,%ecx
403fc4:	41                   	inc    %ecx
403fc5:	8b 43 0c             	mov    0xc(%ebx),%eax
403fc8:	6a 2a                	push   $0x2a
403fca:	5a                   	pop    %edx
403fcb:	0f b7 00             	movzwl (%eax),%eax
403fce:	66 3b c2             	cmp    %dx,%ax
403fd1:	74 0e                	je     0x403fe1
403fd3:	83 f8 74             	cmp    $0x74,%eax
403fd6:	74 09                	je     0x403fe1
403fd8:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
403fdc:	83 f8 54             	cmp    $0x54,%eax
403fdf:	75 04                	jne    0x403fe5
403fe1:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
403fe5:	ff 75 fc             	push   -0x4(%ebp)
403fe8:	56                   	push   %esi
403fe9:	51                   	push   %ecx
403fea:	ff 15 50 f0 40 00    	call   *0x40f050
403ff0:	8b f8                	mov    %eax,%edi
403ff2:	85 f6                	test   %esi,%esi
403ff4:	74 07                	je     0x403ffd
403ff6:	56                   	push   %esi
403ff7:	ff 15 b0 f0 40 00    	call   *0x40f0b0
403ffd:	8b c7                	mov    %edi,%eax
403fff:	5f                   	pop    %edi
404000:	5e                   	pop    %esi
404001:	5b                   	pop    %ebx
404002:	c9                   	leave
404003:	c3                   	ret
404004:	8b ff                	mov    %edi,%edi
404006:	55                   	push   %ebp
404007:	8b ec                	mov    %esp,%ebp
404009:	83 ec 0c             	sub    $0xc,%esp
40400c:	56                   	push   %esi
40400d:	33 f6                	xor    %esi,%esi
40400f:	8b c2                	mov    %edx,%eax
404011:	89 45 f4             	mov    %eax,-0xc(%ebp)
404014:	89 75 f8             	mov    %esi,-0x8(%ebp)
404017:	83 f9 03             	cmp    $0x3,%ecx
40401a:	74 0f                	je     0x40402b
40401c:	6a 1b                	push   $0x1b
40401e:	59                   	pop    %ecx
40401f:	e8 3b ea ff ff       	call   0x402a5f
404024:	33 c0                	xor    %eax,%eax
404026:	e9 85 00 00 00       	jmp    0x4040b0
40402b:	8b 48 08             	mov    0x8(%eax),%ecx
40402e:	53                   	push   %ebx
40402f:	57                   	push   %edi
404030:	0f b7 01             	movzwl (%ecx),%eax
404033:	83 f8 2a             	cmp    $0x2a,%eax
404036:	75 04                	jne    0x40403c
404038:	8b fe                	mov    %esi,%edi
40403a:	eb 53                	jmp    0x40408f
40403c:	83 f8 30             	cmp    $0x30,%eax
40403f:	75 27                	jne    0x404068
404041:	0f b7 41 02          	movzwl 0x2(%ecx),%eax
404045:	83 f8 58             	cmp    $0x58,%eax
404048:	74 05                	je     0x40404f
40404a:	83 f8 78             	cmp    $0x78,%eax
40404d:	75 19                	jne    0x404068
40404f:	8d 45 f8             	lea    -0x8(%ebp),%eax
404052:	83 c1 04             	add    $0x4,%ecx
404055:	50                   	push   %eax
404056:	8d 55 fc             	lea    -0x4(%ebp),%edx
404059:	e8 6a fb ff ff       	call   0x403bc8
40405e:	8b 75 f8             	mov    -0x8(%ebp),%esi
404061:	8b d8                	mov    %eax,%ebx
404063:	8b 7d fc             	mov    -0x4(%ebp),%edi
404066:	eb 23                	jmp    0x40408b
404068:	51                   	push   %ecx
404069:	8d 55 fc             	lea    -0x4(%ebp),%edx
40406c:	89 75 fc             	mov    %esi,-0x4(%ebp)
40406f:	e8 5e ef ff ff       	call   0x402fd2
404074:	8b d8                	mov    %eax,%ebx
404076:	85 db                	test   %ebx,%ebx
404078:	75 32                	jne    0x4040ac
40407a:	8b 7d fc             	mov    -0x4(%ebp),%edi
40407d:	8b f7                	mov    %edi,%esi
40407f:	8d 4e 01             	lea    0x1(%esi),%ecx
404082:	8a 06                	mov    (%esi),%al
404084:	46                   	inc    %esi
404085:	84 c0                	test   %al,%al
404087:	75 f9                	jne    0x404082
404089:	2b f1                	sub    %ecx,%esi
40408b:	85 db                	test   %ebx,%ebx
40408d:	75 1d                	jne    0x4040ac
40408f:	57                   	push   %edi
404090:	56                   	push   %esi
404091:	ff 15 3c f0 40 00    	call   *0x40f03c
404097:	8b d8                	mov    %eax,%ebx
404099:	85 ff                	test   %edi,%edi
40409b:	74 0f                	je     0x4040ac
40409d:	8b 45 f4             	mov    -0xc(%ebp),%eax
4040a0:	3b 78 08             	cmp    0x8(%eax),%edi
4040a3:	74 07                	je     0x4040ac
4040a5:	57                   	push   %edi
4040a6:	ff 15 b0 f0 40 00    	call   *0x40f0b0
4040ac:	5f                   	pop    %edi
4040ad:	8b c3                	mov    %ebx,%eax
4040af:	5b                   	pop    %ebx
4040b0:	5e                   	pop    %esi
4040b1:	c9                   	leave
4040b2:	c3                   	ret
4040b3:	8b ff                	mov    %edi,%edi
4040b5:	55                   	push   %ebp
4040b6:	8b ec                	mov    %esp,%ebp
4040b8:	83 ec 48             	sub    $0x48,%esp
4040bb:	a1 04 a0 40 00       	mov    0x40a004,%eax
4040c0:	33 c5                	xor    %ebp,%eax
4040c2:	89 45 fc             	mov    %eax,-0x4(%ebp)
4040c5:	53                   	push   %ebx
4040c6:	56                   	push   %esi
4040c7:	6a 40                	push   $0x40
4040c9:	33 db                	xor    %ebx,%ebx
4040cb:	8d 45 bc             	lea    -0x44(%ebp),%eax
4040ce:	53                   	push   %ebx
4040cf:	50                   	push   %eax
4040d0:	e8 0f 50 00 00       	call   0x4090e4
4040d5:	83 c4 0c             	add    $0xc,%esp
4040d8:	89 5d b8             	mov    %ebx,-0x48(%ebp)
4040db:	8d 45 b8             	lea    -0x48(%ebp),%eax
4040de:	53                   	push   %ebx
4040df:	50                   	push   %eax
4040e0:	ff 15 90 f0 40 00    	call   *0x40f090
4040e6:	8b f0                	mov    %eax,%esi
4040e8:	83 fe 7a             	cmp    $0x7a,%esi
4040eb:	75 60                	jne    0x40414d
4040ed:	8b 45 b8             	mov    -0x48(%ebp),%eax
4040f0:	57                   	push   %edi
4040f1:	03 c0                	add    %eax,%eax
4040f3:	50                   	push   %eax
4040f4:	ff 15 a4 f0 40 00    	call   *0x40f0a4