407ce2:	8b 01                	mov    (%ecx),%eax
407ce4:	68 40 50 41 00       	push   $0x415040
407ce9:	68 f4 27 40 00       	push   $0x4027f4
407cee:	51                   	push   %ecx
407cef:	8b 30                	mov    (%eax),%esi
407cf1:	8b ce                	mov    %esi,%ecx
407cf3:	ff 15 90 b3 41 00    	call   *0x41b390
407cf9:	ff d6                	call   *%esi
407cfb:	8b 35 40 50 41 00    	mov    0x415040,%esi
407d01:	eb 05                	jmp    0x407d08
407d03:	b8 05 40 00 80       	mov    $0x80004005,%eax
407d08:	85 c0                	test   %eax,%eax
407d0a:	78 38                	js     0x407d44
407d0c:	85 f6                	test   %esi,%esi
407d0e:	74 34                	je     0x407d44
407d10:	8b 06                	mov    (%esi),%eax
407d12:	6a 01                	push   $0x1
407d14:	56                   	push   %esi
407d15:	8b 70 14             	mov    0x14(%eax),%esi
407d18:	8b ce                	mov    %esi,%ecx
407d1a:	ff 15 90 b3 41 00    	call   *0x41b390
407d20:	ff d6                	call   *%esi
407d22:	ff 35 80 93 41 00    	push   0x419380
407d28:	68 4d 01 00 00       	push   $0x14d
407d2d:	e8 c9 b0 00 00       	call   0x412dfb
407d32:	85 c0                	test   %eax,%eax
407d34:	79 14                	jns    0x407d4a
407d36:	8b cb                	mov    %ebx,%ecx
407d38:	e8 49 0a 00 00       	call   0x408786
407d3d:	8b cf                	mov    %edi,%ecx
407d3f:	e8 42 0a 00 00       	call   0x408786
407d44:	33 c0                	xor    %eax,%eax
407d46:	5f                   	pop    %edi
407d47:	5e                   	pop    %esi
407d48:	5b                   	pop    %ebx
407d49:	c3                   	ret
407d4a:	33 c0                	xor    %eax,%eax
407d4c:	40                   	inc    %eax
407d4d:	eb f7                	jmp    0x407d46
407d4f:	6a 4c                	push   $0x4c
407d51:	b8 6b 42 41 00       	mov    $0x41426b,%eax
407d56:	e8 17 bf 00 00       	call   0x413c72
407d5b:	8b f9                	mov    %ecx,%edi
407d5d:	51                   	push   %ecx
407d5e:	8d 4d cc             	lea    -0x34(%ebp),%ecx
407d61:	e8 f4 80 00 00       	call   0x40fe5a
407d66:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
407d6a:	8d 4d e8             	lea    -0x18(%ebp),%ecx
407d6d:	e8 14 0a 00 00       	call   0x408786
407d72:	8d 45 ec             	lea    -0x14(%ebp),%eax
407d75:	50                   	push   %eax
407d76:	51                   	push   %ecx
407d77:	51                   	push   %ecx
407d78:	8d 4d cc             	lea    -0x34(%ebp),%ecx
407d7b:	e8 e4 b2 00 00       	call   0x413064
407d80:	ff 75 ec             	push   -0x14(%ebp)
407d83:	8d 4d a8             	lea    -0x58(%ebp),%ecx
407d86:	e8 86 81 00 00       	call   0x40ff11
407d8b:	8b d0                	mov    %eax,%edx
407d8d:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
407d91:	e8 18 01 00 00       	call   0x407eae
407d96:	8b 4a 20             	mov    0x20(%edx),%ecx
407d99:	85 c9                	test   %ecx,%ecx
407d9b:	74 16                	je     0x407db3
407d9d:	8b 31                	mov    (%ecx),%esi
407d9f:	57                   	push   %edi
407da0:	50                   	push   %eax
407da1:	68 04 04 00 00       	push   $0x404
407da6:	51                   	push   %ecx
407da7:	8b 4e 18             	mov    0x18(%esi),%ecx
407daa:	ff 15 90 b3 41 00    	call   *0x41b390
407db0:	ff 56 18             	call   *0x18(%esi)
407db3:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
407db7:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
407dba:	c7 45 c4 54 15 40 00 	movl   $0x401554,-0x3c(%ebp)
407dc1:	e8 c0 09 00 00       	call   0x408786
407dc6:	8d 4d a8             	lea    -0x58(%ebp),%ecx
407dc9:	e8 14 b2 00 00       	call   0x412fe2
407dce:	8d 4d cc             	lea    -0x34(%ebp),%ecx
407dd1:	e8 dc 80 00 00       	call   0x40feb2
407dd6:	e8 55 be 00 00       	call   0x413c30
407ddb:	c3                   	ret
407ddc:	8b ff                	mov    %edi,%edi
407dde:	55                   	push   %ebp
407ddf:	8b ec                	mov    %esp,%ebp
407de1:	6a ff                	push   $0xffffffff
407de3:	68 90 42 41 00       	push   $0x414290
407de8:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
407dee:	50                   	push   %eax
407def:	56                   	push   %esi
407df0:	a1 18 51 41 00       	mov    0x415118,%eax
407df5:	33 c5                	xor    %ebp,%eax
407df7:	50                   	push   %eax
407df8:	8d 45 f4             	lea    -0xc(%ebp),%eax
407dfb:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
407e01:	8b f1                	mov    %ecx,%esi
407e03:	8d 4e 1c             	lea    0x1c(%esi),%ecx
407e06:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
407e0a:	c7 01 54 15 40 00    	movl   $0x401554,(%ecx)
407e10:	e8 71 09 00 00       	call   0x408786
407e15:	8b ce                	mov    %esi,%ecx
407e17:	e8 c6 b1 00 00       	call   0x412fe2
407e1c:	8b 4d f4             	mov    -0xc(%ebp),%ecx
407e1f:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
407e26:	59                   	pop    %ecx
407e27:	5e                   	pop    %esi
407e28:	c9                   	leave
407e29:	c3                   	ret
407e2a:	6a 50                	push   $0x50
407e2c:	b8 bb 42 41 00       	mov    $0x4142bb,%eax
407e31:	e8 3c be 00 00       	call   0x413c72
407e36:	83 65 a4 00          	andl   $0x0,-0x5c(%ebp)
407e3a:	51                   	push   %ecx
407e3b:	8d 4d cc             	lea    -0x34(%ebp),%ecx
407e3e:	e8 17 80 00 00       	call   0x40fe5a
407e43:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
407e47:	8d 4d e8             	lea    -0x18(%ebp),%ecx
407e4a:	e8 37 09 00 00       	call   0x408786
407e4f:	8d 45 ec             	lea    -0x14(%ebp),%eax
407e52:	50                   	push   %eax
407e53:	51                   	push   %ecx
407e54:	51                   	push   %ecx
407e55:	8d 4d cc             	lea    -0x34(%ebp),%ecx
407e58:	e8 07 b2 00 00       	call   0x413064
407e5d:	ff 75 ec             	push   -0x14(%ebp)
407e60:	8d 4d a8             	lea    -0x58(%ebp),%ecx
407e63:	e8 a9 80 00 00       	call   0x40ff11
407e68:	8b d0                	mov    %eax,%edx
407e6a:	8d 45 a4             	lea    -0x5c(%ebp),%eax
407e6d:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
407e71:	50                   	push   %eax
407e72:	e8 37 00 00 00       	call   0x407eae
407e77:	50                   	push   %eax
407e78:	51                   	push   %ecx
407e79:	8b ca                	mov    %edx,%ecx
407e7b:	e8 32 81 00 00       	call   0x40ffb2
407e80:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
407e84:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
407e87:	c7 45 c4 54 15 40 00 	movl   $0x401554,-0x3c(%ebp)
407e8e:	e8 f3 08 00 00       	call   0x408786
407e93:	8d 4d a8             	lea    -0x58(%ebp),%ecx
407e96:	e8 47 b1 00 00       	call   0x412fe2
407e9b:	8b 75 a4             	mov    -0x5c(%ebp),%esi
407e9e:	8d 4d cc             	lea    -0x34(%ebp),%ecx
407ea1:	e8 0c 80 00 00       	call   0x40feb2
407ea6:	8b c6                	mov    %esi,%eax
407ea8:	e8 83 bd 00 00       	call   0x413c30
407ead:	c3                   	ret
407eae:	8b 0d 80 93 41 00    	mov    0x419380,%ecx
407eb4:	33 c0                	xor    %eax,%eax
407eb6:	f6 c1 01             	test   $0x1,%cl
407eb9:	74 04                	je     0x407ebf
407ebb:	6a 03                	push   $0x3
407ebd:	58                   	pop    %eax
407ebe:	c3                   	ret
407ebf:	f6 c1 02             	test   $0x2,%cl
407ec2:	74 04                	je     0x407ec8
407ec4:	6a 04                	push   $0x4
407ec6:	58                   	pop    %eax
407ec7:	c3                   	ret
407ec8:	f6 c1 04             	test   $0x4,%cl
407ecb:	74 04                	je     0x407ed1
407ecd:	6a 05                	push   $0x5
407ecf:	58                   	pop    %eax
407ed0:	c3                   	ret
407ed1:	f6 c1 08             	test   $0x8,%cl
407ed4:	74 04                	je     0x407eda
407ed6:	6a 06                	push   $0x6
407ed8:	58                   	pop    %eax
407ed9:	c3                   	ret
407eda:	f6 c1 10             	test   $0x10,%cl
407edd:	74 04                	je     0x407ee3
407edf:	6a 07                	push   $0x7
407ee1:	58                   	pop    %eax
407ee2:	c3                   	ret
407ee3:	f6 c1 20             	test   $0x20,%cl
407ee6:	74 04                	je     0x407eec
407ee8:	6a 08                	push   $0x8
407eea:	58                   	pop    %eax
407eeb:	c3                   	ret
407eec:	f6 c1 40             	test   $0x40,%cl
407eef:	74 03                	je     0x407ef4
407ef1:	6a 09                	push   $0x9
407ef3:	58                   	pop    %eax
407ef4:	c3                   	ret
407ef5:	8b ff                	mov    %edi,%edi
407ef7:	55                   	push   %ebp
407ef8:	8b ec                	mov    %esp,%ebp
407efa:	6a ff                	push   $0xffffffff
407efc:	68 1b 42 41 00       	push   $0x41421b
407f01:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
407f07:	50                   	push   %eax
407f08:	a1 18 51 41 00       	mov    0x415118,%eax
407f0d:	33 c5                	xor    %ebp,%eax
407f0f:	50                   	push   %eax
407f10:	8d 45 f4             	lea    -0xc(%ebp),%eax
407f13:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
407f19:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
407f1d:	c7 01 54 15 40 00    	movl   $0x401554,(%ecx)
407f23:	e8 5e 08 00 00       	call   0x408786
407f28:	8b 4d f4             	mov    -0xc(%ebp),%ecx
407f2b:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
407f32:	59                   	pop    %ecx
407f33:	c9                   	leave
407f34:	c3                   	ret
407f35:	6a 0c                	push   $0xc
407f37:	b8 f0 42 41 00       	mov    $0x4142f0,%eax
407f3c:	e8 fe bc 00 00       	call   0x413c3f
407f41:	8b f1                	mov    %ecx,%esi
407f43:	83 65 ec 00          	andl   $0x0,-0x14(%ebp)
407f47:	bf 54 15 40 00       	mov    $0x401554,%edi
407f4c:	89 7d e8             	mov    %edi,-0x18(%ebp)
407f4f:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
407f56:	85 f6                	test   %esi,%esi
407f58:	74 23                	je     0x407f7d
407f5a:	8d 4d e8             	lea    -0x18(%ebp),%ecx
407f5d:	e8 24 08 00 00       	call   0x408786
407f62:	8d 45 ec             	lea    -0x14(%ebp),%eax
407f65:	50                   	push   %eax
407f66:	68 6d 01 00 00       	push   $0x16d
407f6b:	e8 ec ae 00 00       	call   0x412e5c
407f70:	85 c0                	test   %eax,%eax
407f72:	78 09                	js     0x407f7d
407f74:	56                   	push   %esi
407f75:	8d 4d e8             	lea    -0x18(%ebp),%ecx
407f78:	e8 78 af 00 00       	call   0x412ef5
407f7d:	c7 45 fc 02 00 00 00 	movl   $0x2,-0x4(%ebp)
407f84:	8d 4d e8             	lea    -0x18(%ebp),%ecx
407f87:	89 7d e8             	mov    %edi,-0x18(%ebp)
407f8a:	e8 f7 07 00 00       	call   0x408786
407f8f:	e8 88 bc 00 00       	call   0x413c1c
407f94:	c3                   	ret
407f95:	6a 0c                	push   $0xc
407f97:	b8 f0 42 41 00       	mov    $0x4142f0,%eax
407f9c:	e8 9e bc 00 00       	call   0x413c3f
407fa1:	8b f1                	mov    %ecx,%esi
407fa3:	83 65 ec 00          	andl   $0x0,-0x14(%ebp)
407fa7:	bf 54 15 40 00       	mov    $0x401554,%edi
407fac:	89 7d e8             	mov    %edi,-0x18(%ebp)
407faf:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
407fb6:	85 f6                	test   %esi,%esi
407fb8:	74 32                	je     0x407fec
407fba:	8d 4d e8             	lea    -0x18(%ebp),%ecx
407fbd:	e8 c4 07 00 00       	call   0x408786
407fc2:	8d 45 ec             	lea    -0x14(%ebp),%eax
407fc5:	50                   	push   %eax
407fc6:	68 6d 01 00 00       	push   $0x16d
407fcb:	e8 8c ae 00 00       	call   0x412e5c
407fd0:	85 c0                	test   %eax,%eax
407fd2:	78 18                	js     0x407fec
407fd4:	8b 4d ec             	mov    -0x14(%ebp),%ecx
407fd7:	85 c9                	test   %ecx,%ecx
407fd9:	74 11                	je     0x407fec
407fdb:	8b 01                	mov    (%ecx),%eax
407fdd:	56                   	push   %esi
407fde:	51                   	push   %ecx
407fdf:	8b 70 1c             	mov    0x1c(%eax),%esi
407fe2:	8b ce                	mov    %esi,%ecx
407fe4:	ff 15 90 b3 41 00    	call   *0x41b390
407fea:	ff d6                	call   *%esi
407fec:	c7 45 fc 02 00 00 00 	movl   $0x2,-0x4(%ebp)
407ff3:	8d 4d e8             	lea    -0x18(%ebp),%ecx
407ff6:	89 7d e8             	mov    %edi,-0x18(%ebp)
407ff9:	e8 88 07 00 00       	call   0x408786
407ffe:	e8 19 bc 00 00       	call   0x413c1c
408003:	c3                   	ret
408004:	6a 0c                	push   $0xc
408006:	b8 f0 42 41 00       	mov    $0x4142f0,%eax
40800b:	e8 2f bc 00 00       	call   0x413c3f
408010:	8b f1                	mov    %ecx,%esi
408012:	83 65 ec 00          	andl   $0x0,-0x14(%ebp)
408016:	bf 54 15 40 00       	mov    $0x401554,%edi
40801b:	89 7d e8             	mov    %edi,-0x18(%ebp)
40801e:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
408025:	85 f6                	test   %esi,%esi
408027:	74 23                	je     0x40804c
408029:	8d 4d e8             	lea    -0x18(%ebp),%ecx
40802c:	e8 55 07 00 00       	call   0x408786
408031:	8d 45 ec             	lea    -0x14(%ebp),%eax
408034:	50                   	push   %eax
408035:	68 6c 01 00 00       	push   $0x16c
40803a:	e8 1d ae 00 00       	call   0x412e5c
40803f:	85 c0                	test   %eax,%eax
408041:	78 09                	js     0x40804c
408043:	56                   	push   %esi
408044:	8d 4d e8             	lea    -0x18(%ebp),%ecx
408047:	e8 a9 ae 00 00       	call   0x412ef5
40804c:	c7 45 fc 02 00 00 00 	movl   $0x2,-0x4(%ebp)
408053:	8d 4d e8             	lea    -0x18(%ebp),%ecx
408056:	89 7d e8             	mov    %edi,-0x18(%ebp)
408059:	e8 28 07 00 00       	call   0x408786
40805e:	e8 b9 bb 00 00       	call   0x413c1c
408063:	c3                   	ret
408064:	6a 0c                	push   $0xc
408066:	b8 f0 42 41 00       	mov    $0x4142f0,%eax
40806b:	e8 cf bb 00 00       	call   0x413c3f
408070:	8b f9                	mov    %ecx,%edi
408072:	83 65 ec 00          	andl   $0x0,-0x14(%ebp)
408076:	bb 54 15 40 00       	mov    $0x401554,%ebx
40807b:	89 5d e8             	mov    %ebx,-0x18(%ebp)
40807e:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
408085:	85 ff                	test   %edi,%edi
408087:	74 3a                	je     0x4080c3
408089:	8d 4d e8             	lea    -0x18(%ebp),%ecx
40808c:	e8 f5 06 00 00       	call   0x408786
408091:	8d 45 ec             	lea    -0x14(%ebp),%eax
408094:	50                   	push   %eax
408095:	68 6c 01 00 00       	push   $0x16c
40809a:	e8 bd ad 00 00       	call   0x412e5c
40809f:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4080a2:	85 c9                	test   %ecx,%ecx
4080a4:	74 11                	je     0x4080b7
4080a6:	8b 01                	mov    (%ecx),%eax
4080a8:	57                   	push   %edi
4080a9:	51                   	push   %ecx
4080aa:	8b 70 1c             	mov    0x1c(%eax),%esi
4080ad:	8b ce                	mov    %esi,%ecx
4080af:	ff 15 90 b3 41 00    	call   *0x41b390
4080b5:	ff d6                	call   *%esi
4080b7:	ff 37                	push   (%edi)
4080b9:	68 06 01 00 00       	push   $0x106
4080be:	e8 38 ad 00 00       	call   0x412dfb
4080c3:	c7 45 fc 02 00 00 00 	movl   $0x2,-0x4(%ebp)
4080ca:	8d 4d e8             	lea    -0x18(%ebp),%ecx
4080cd:	89 5d e8             	mov    %ebx,-0x18(%ebp)
4080d0:	e8 b1 06 00 00       	call   0x408786
4080d5:	e8 42 bb 00 00       	call   0x413c1c
4080da:	c3                   	ret
4080db:	8b ff                	mov    %edi,%edi
4080dd:	55                   	push   %ebp
4080de:	8b ec                	mov    %esp,%ebp
4080e0:	51                   	push   %ecx
4080e1:	56                   	push   %esi
4080e2:	8d 45 fc             	lea    -0x4(%ebp),%eax
4080e5:	33 f6                	xor    %esi,%esi
4080e7:	50                   	push   %eax
4080e8:	68 5b 01 00 00       	push   $0x15b
4080ed:	89 75 fc             	mov    %esi,-0x4(%ebp)
4080f0:	e8 d4 ac 00 00       	call   0x412dc9
4080f5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4080f8:	2d 10 00 02 00       	sub    $0x20010,%eax
4080fd:	74 1e                	je     0x40811d
4080ff:	2d 12 00 0e 00       	sub    $0xe0012,%eax
408104:	74 12                	je     0x408118
408106:	83 e8 01             	sub    $0x1,%eax
408109:	74 09                	je     0x408114
40810b:	83 e8 01             	sub    $0x1,%eax
40810e:	75 10                	jne    0x408120
408110:	6a 03                	push   $0x3
408112:	eb 06                	jmp    0x40811a