433c61:	3b f3                	cmp    %ebx,%esi
433c63:	72 7b                	jb     0x433ce0
433c65:	6a 01                	push   $0x1
433c67:	6a ff                	push   $0xffffffff
433c69:	ff b2 24 83 43 00    	push   0x438324(%edx)
433c6f:	53                   	push   %ebx
433c70:	57                   	push   %edi
433c71:	ff 15 68 a2 43 00    	call   *0x43a268
433c77:	83 f8 02             	cmp    $0x2,%eax
433c7a:	75 64                	jne    0x433ce0
433c7c:	8b 45 f8             	mov    -0x8(%ebp),%eax
433c7f:	ba 04 01 00 00       	mov    $0x104,%edx
433c84:	8b 4d 0c             	mov    0xc(%ebp),%ecx
433c87:	83 c0 04             	add    $0x4,%eax
433c8a:	50                   	push   %eax
433c8b:	e8 88 92 ff ff       	call   0x42cf18
433c90:	8b f8                	mov    %eax,%edi
433c92:	85 ff                	test   %edi,%edi
433c94:	79 18                	jns    0x433cae
433c96:	8b 4d 04             	mov    0x4(%ebp),%ecx
433c99:	57                   	push   %edi
433c9a:	68 5c 5c 40 00       	push   $0x405c5c
433c9f:	6a 37                	push   $0x37
433ca1:	5a                   	pop    %edx
433ca2:	e8 63 84 ff ff       	call   0x42c10a
433ca7:	8b c7                	mov    %edi,%eax
433ca9:	e9 90 00 00 00       	jmp    0x433d3e
433cae:	3b f3                	cmp    %ebx,%esi
433cb0:	76 2a                	jbe    0x433cdc
433cb2:	8b 45 08             	mov    0x8(%ebp),%eax
433cb5:	8b 4d 0c             	mov    0xc(%ebp),%ecx
433cb8:	8d 04 58             	lea    (%eax,%ebx,2),%eax
433cbb:	50                   	push   %eax
433cbc:	e8 f2 91 ff ff       	call   0x42ceb3
433cc1:	8b f0                	mov    %eax,%esi
433cc3:	85 f6                	test   %esi,%esi
433cc5:	79 15                	jns    0x433cdc
433cc7:	8b 4d 04             	mov    0x4(%ebp),%ecx
433cca:	56                   	push   %esi
433ccb:	68 5c 5c 40 00       	push   $0x405c5c
433cd0:	6a 3a                	push   $0x3a
433cd2:	5a                   	pop    %edx
433cd3:	e8 32 84 ff ff       	call   0x42c10a
433cd8:	8b c6                	mov    %esi,%eax
433cda:	eb 62                	jmp    0x433d3e
433cdc:	33 c0                	xor    %eax,%eax
433cde:	eb 5e                	jmp    0x433d3e
433ce0:	33 db                	xor    %ebx,%ebx
433ce2:	c7 45 f4 3c 72 40 00 	movl   $0x40723c,-0xc(%ebp)
433ce9:	c7 45 f8 20 80 40 00 	movl   $0x408020,-0x8(%ebp)
433cf0:	8b f3                	mov    %ebx,%esi
433cf2:	8b 4c b5 f4          	mov    -0xc(%ebp,%esi,4),%ecx
433cf6:	8d 51 02             	lea    0x2(%ecx),%edx
433cf9:	66 8b 01             	mov    (%ecx),%ax
433cfc:	83 c1 02             	add    $0x2,%ecx
433cff:	66 3b c3             	cmp    %bx,%ax
433d02:	75 f5                	jne    0x433cf9
433d04:	6a 01                	push   $0x1
433d06:	6a ff                	push   $0xffffffff
433d08:	ff 74 b5 f4          	push   -0xc(%ebp,%esi,4)
433d0c:	2b ca                	sub    %edx,%ecx
433d0e:	d1 f9                	sar    $1,%ecx
433d10:	51                   	push   %ecx
433d11:	57                   	push   %edi
433d12:	ff 15 68 a2 43 00    	call   *0x43a268
433d18:	83 f8 02             	cmp    $0x2,%eax
433d1b:	74 08                	je     0x433d25
433d1d:	46                   	inc    %esi
433d1e:	83 fe 02             	cmp    $0x2,%esi
433d21:	72 cf                	jb     0x433cf2
433d23:	eb 14                	jmp    0x433d39
433d25:	f6 05 82 90 43 00 20 	testb  $0x20,0x439082
433d2c:	74 0b                	je     0x433d39
433d2e:	57                   	push   %edi
433d2f:	ba b8 55 40 00       	mov    $0x4055b8,%edx
433d34:	e8 e2 b0 ff ff       	call   0x42ee1b
433d39:	b8 05 40 00 80       	mov    $0x80004005,%eax
433d3e:	5f                   	pop    %edi
433d3f:	5e                   	pop    %esi
433d40:	5b                   	pop    %ebx
433d41:	c9                   	leave
433d42:	c2 0c 00             	ret    $0xc
433d45:	8b ff                	mov    %edi,%edi
433d47:	56                   	push   %esi
433d48:	8b f1                	mov    %ecx,%esi
433d4a:	8b 46 04             	mov    0x4(%esi),%eax
433d4d:	85 c0                	test   %eax,%eax
433d4f:	74 39                	je     0x433d8a
433d51:	57                   	push   %edi
433d52:	33 ff                	xor    %edi,%edi
433d54:	85 c0                	test   %eax,%eax
433d56:	74 22                	je     0x433d7a
433d58:	53                   	push   %ebx
433d59:	8b 1e                	mov    (%esi),%ebx
433d5b:	8b 44 fb 04          	mov    0x4(%ebx,%edi,8),%eax
433d5f:	85 c0                	test   %eax,%eax
433d61:	74 07                	je     0x433d6a
433d63:	50                   	push   %eax
433d64:	ff 15 64 a0 43 00    	call   *0x43a064
433d6a:	83 64 fb 04 00       	andl   $0x0,0x4(%ebx,%edi,8)
433d6f:	83 24 fb 00          	andl   $0x0,(%ebx,%edi,8)
433d73:	47                   	inc    %edi
433d74:	3b 7e 04             	cmp    0x4(%esi),%edi
433d77:	72 e0                	jb     0x433d59
433d79:	5b                   	pop    %ebx
433d7a:	ff 36                	push   (%esi)
433d7c:	ff 15 64 a0 43 00    	call   *0x43a064
433d82:	83 26 00             	andl   $0x0,(%esi)
433d85:	83 66 04 00          	andl   $0x0,0x4(%esi)
433d89:	5f                   	pop    %edi
433d8a:	5e                   	pop    %esi
433d8b:	c3                   	ret
433d8c:	8b ff                	mov    %edi,%edi
433d8e:	55                   	push   %ebp
433d8f:	8b ec                	mov    %esp,%ebp
433d91:	6a ff                	push   $0xffffffff
433d93:	68 24 f0 41 00       	push   $0x41f024
433d98:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
433d9e:	50                   	push   %eax
433d9f:	a1 08 85 43 00       	mov    0x438508,%eax
433da4:	33 c5                	xor    %ebp,%eax
433da6:	50                   	push   %eax
433da7:	8d 45 f4             	lea    -0xc(%ebp),%eax
433daa:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
433db0:	8b 09                	mov    (%ecx),%ecx
433db2:	e8 dc 53 fe ff       	call   0x419193
433db7:	8b 4d f4             	mov    -0xc(%ebp),%ecx
433dba:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
433dc1:	59                   	pop    %ecx
433dc2:	c9                   	leave
433dc3:	c3                   	ret
433dc4:	ff 31                	push   (%ecx)
433dc6:	ff 15 9c a2 43 00    	call   *0x43a29c
433dcc:	c3                   	ret
433dcd:	8b ff                	mov    %edi,%edi
433dcf:	55                   	push   %ebp
433dd0:	8b ec                	mov    %esp,%ebp
433dd2:	6a ff                	push   $0xffffffff
433dd4:	68 75 f0 41 00       	push   $0x41f075
433dd9:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
433ddf:	50                   	push   %eax
433de0:	53                   	push   %ebx
433de1:	56                   	push   %esi
433de2:	57                   	push   %edi
433de3:	a1 08 85 43 00       	mov    0x438508,%eax
433de8:	33 c5                	xor    %ebp,%eax
433dea:	50                   	push   %eax
433deb:	8d 45 f4             	lea    -0xc(%ebp),%eax
433dee:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
433df4:	8b 39                	mov    (%ecx),%edi
433df6:	83 3f 00             	cmpl   $0x0,(%edi)
433df9:	8d 5f 08             	lea    0x8(%edi),%ebx
433dfc:	74 0f                	je     0x433e0d
433dfe:	8d 77 24             	lea    0x24(%edi),%esi
433e01:	56                   	push   %esi
433e02:	ff 15 d4 a2 43 00    	call   *0x43a2d4
433e08:	f0 ff 0b             	lock decl (%ebx)
433e0b:	eb 12                	jmp    0x433e1f
433e0d:	f0 ff 0b             	lock decl (%ebx)
433e10:	83 3f 00             	cmpl   $0x0,(%edi)
433e13:	74 25                	je     0x433e3a
433e15:	8d 77 24             	lea    0x24(%edi),%esi
433e18:	56                   	push   %esi
433e19:	ff 15 d4 a2 43 00    	call   *0x43a2d4
433e1f:	83 3b 00             	cmpl   $0x0,(%ebx)
433e22:	75 0f                	jne    0x433e33
433e24:	8b cf                	mov    %edi,%ecx
433e26:	e8 27 54 fe ff       	call   0x419252
433e2b:	8b 4f 40             	mov    0x40(%edi),%ecx
433e2e:	e8 b3 53 fe ff       	call   0x4191e6
433e33:	56                   	push   %esi
433e34:	ff 15 9c a2 43 00    	call   *0x43a29c
433e3a:	8b 4d f4             	mov    -0xc(%ebp),%ecx
433e3d:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
433e44:	59                   	pop    %ecx
433e45:	5f                   	pop    %edi
433e46:	5e                   	pop    %esi
433e47:	5b                   	pop    %ebx
433e48:	c9                   	leave
433e49:	c3                   	ret
433e4a:	6a 0c                	push   $0xc
433e4c:	b8 d6 f8 41 00       	mov    $0x41f8d6,%eax
433e51:	e8 b8 6f fe ff       	call   0x41ae0e
433e56:	8b d9                	mov    %ecx,%ebx
433e58:	8d 73 04             	lea    0x4(%ebx),%esi
433e5b:	8b ce                	mov    %esi,%ecx
433e5d:	89 75 e8             	mov    %esi,-0x18(%ebp)
433e60:	e8 c5 5a fe ff       	call   0x41992a
433e65:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
433e69:	8d 45 f0             	lea    -0x10(%ebp),%eax
433e6c:	50                   	push   %eax
433e6d:	8b cb                	mov    %ebx,%ecx
433e6f:	e8 31 7b ff ff       	call   0x42b9a5
433e74:	85 c0                	test   %eax,%eax
433e76:	74 70                	je     0x433ee8
433e78:	8b 35 10 a1 43 00    	mov    0x43a110,%esi
433e7e:	8b 7d f0             	mov    -0x10(%ebp),%edi
433e81:	eb 08                	jmp    0x433e8b
433e83:	6a 01                	push   $0x1
433e85:	ff 15 ec a2 43 00    	call   *0x43a2ec
433e8b:	80 7f 14 00          	cmpb   $0x0,0x14(%edi)
433e8f:	75 f2                	jne    0x433e83
433e91:	8b 47 1c             	mov    0x1c(%edi),%eax
433e94:	85 c0                	test   %eax,%eax
433e96:	74 16                	je     0x433eae
433e98:	83 f8 ff             	cmp    $0xffffffff,%eax
433e9b:	74 11                	je     0x433eae
433e9d:	8d 55 f0             	lea    -0x10(%ebp),%edx
433ea0:	89 45 f0             	mov    %eax,-0x10(%ebp)
433ea3:	8d 4d ec             	lea    -0x14(%ebp),%ecx
433ea6:	89 75 ec             	mov    %esi,-0x14(%ebp)
433ea9:	e8 b6 77 fe ff       	call   0x41b664
433eae:	8d 4f 04             	lea    0x4(%edi),%ecx
433eb1:	e8 5e 12 ff ff       	call   0x425114
433eb6:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
433eba:	57                   	push   %edi
433ebb:	8b 3d 40 1a 40 00    	mov    0x401a40,%edi
433ec1:	8b cf                	mov    %edi,%ecx
433ec3:	ff 15 20 a5 43 00    	call   *0x43a520
433ec9:	ff d7                	call   *%edi
433ecb:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
433ecf:	8d 45 f0             	lea    -0x10(%ebp),%eax
433ed2:	ff 4b 4c             	decl   0x4c(%ebx)
433ed5:	8b cb                	mov    %ebx,%ecx
433ed7:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
433edb:	50                   	push   %eax
433edc:	e8 c4 7a ff ff       	call   0x42b9a5
433ee1:	85 c0                	test   %eax,%eax
433ee3:	75 99                	jne    0x433e7e
433ee5:	8b 75 e8             	mov    -0x18(%ebp),%esi
433ee8:	8b ce                	mov    %esi,%ecx
433eea:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
433ef1:	e8 9d 52 fe ff       	call   0x419193
433ef6:	e8 e1 6e fe ff       	call   0x41addc
433efb:	c3                   	ret
433efc:	8b ff                	mov    %edi,%edi
433efe:	55                   	push   %ebp
433eff:	8b ec                	mov    %esp,%ebp
433f01:	ff 31                	push   (%ecx)
433f03:	ff 15 c4 a2 43 00    	call   *0x43a2c4
433f09:	85 c0                	test   %eax,%eax
433f0b:	75 12                	jne    0x433f1f
433f0d:	8b 4d 04             	mov    0x4(%ebp),%ecx
433f10:	ba 27 01 00 00       	mov    $0x127,%edx
433f15:	68 88 50 40 00       	push   $0x405088
433f1a:	e8 02 94 ff ff       	call   0x42d321
433f1f:	5d                   	pop    %ebp
433f20:	c3                   	ret
433f21:	6a 04                	push   $0x4
433f23:	b8 a3 ee 41 00       	mov    $0x41eea3,%eax
433f28:	e8 e1 6e fe ff       	call   0x41ae0e
433f2d:	8b f9                	mov    %ecx,%edi
433f2f:	8d 77 24             	lea    0x24(%edi),%esi
433f32:	89 75 f0             	mov    %esi,-0x10(%ebp)
433f35:	56                   	push   %esi
433f36:	33 db                	xor    %ebx,%ebx
433f38:	ff 15 d4 a2 43 00    	call   *0x43a2d4
433f3e:	21 5d fc             	and    %ebx,-0x4(%ebp)
433f41:	39 1f                	cmp    %ebx,(%edi)
433f43:	74 10                	je     0x433f55
433f45:	8b cf                	mov    %edi,%ecx
433f47:	e8 89 53 fe ff       	call   0x4192d5
433f4c:	8b 4f 3c             	mov    0x3c(%edi),%ecx
433f4f:	e8 a8 ff ff ff       	call   0x433efc
433f54:	43                   	inc    %ebx
433f55:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
433f59:	56                   	push   %esi
433f5a:	ff 15 9c a2 43 00    	call   *0x43a29c
433f60:	85 db                	test   %ebx,%ebx
433f62:	74 0a                	je     0x433f6e
433f64:	51                   	push   %ecx
433f65:	51                   	push   %ecx
433f66:	8b 4f 3c             	mov    0x3c(%edi),%ecx
433f69:	e8 9a 00 00 00       	call   0x434008
433f6e:	83 3f 00             	cmpl   $0x0,(%edi)
433f71:	75 c2                	jne    0x433f35
433f73:	e8 64 6e fe ff       	call   0x41addc
433f78:	c3                   	ret
433f79:	6a 08                	push   $0x8
433f7b:	b8 f9 f8 41 00       	mov    $0x41f8f9,%eax
433f80:	e8 89 6e fe ff       	call   0x41ae0e
433f85:	8b f9                	mov    %ecx,%edi
433f87:	33 db                	xor    %ebx,%ebx
433f89:	8d 77 24             	lea    0x24(%edi),%esi
433f8c:	43                   	inc    %ebx
433f8d:	89 75 ec             	mov    %esi,-0x14(%ebp)
433f90:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
433f94:	56                   	push   %esi
433f95:	ff 15 d4 a2 43 00    	call   *0x43a2d4
433f9b:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
433f9f:	83 3f 00             	cmpl   $0x0,(%edi)
433fa2:	74 36                	je     0x433fda
433fa4:	85 db                	test   %ebx,%ebx
433fa6:	74 1a                	je     0x433fc2
433fa8:	8d 47 08             	lea    0x8(%edi),%eax
433fab:	f0 ff 08             	lock decl (%eax)
433fae:	83 38 00             	cmpl   $0x0,(%eax)
433fb1:	75 0f                	jne    0x433fc2
433fb3:	8b cf                	mov    %edi,%ecx
433fb5:	e8 98 52 fe ff       	call   0x419252
433fba:	8b 4f 40             	mov    0x40(%edi),%ecx
433fbd:	e8 24 52 fe ff       	call   0x4191e6
433fc2:	8b cf                	mov    %edi,%ecx
433fc4:	e8 0c 53 fe ff       	call   0x4192d5
433fc9:	8b 4f 3c             	mov    0x3c(%edi),%ecx
433fcc:	e8 2b ff ff ff       	call   0x433efc
433fd1:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
433fd8:	eb 08                	jmp    0x433fe2
433fda:	85 db                	test   %ebx,%ebx
433fdc:	74 04                	je     0x433fe2
433fde:	f0 ff 4f 08          	lock decl 0x8(%edi)
433fe2:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
433fe6:	33 db                	xor    %ebx,%ebx
433fe8:	56                   	push   %esi
433fe9:	ff 15 9c a2 43 00    	call   *0x43a29c
433fef:	39 5d f0             	cmp    %ebx,-0x10(%ebp)
433ff2:	74 0a                	je     0x433ffe
433ff4:	51                   	push   %ecx
433ff5:	51                   	push   %ecx
433ff6:	8b 4f 3c             	mov    0x3c(%edi),%ecx
433ff9:	e8 0a 00 00 00       	call   0x434008
433ffe:	39 1f                	cmp    %ebx,(%edi)
434000:	75 8e                	jne    0x433f90
434002:	e8 d5 6d fe ff       	call   0x41addc
434007:	c3                   	ret
434008:	8b ff                	mov    %edi,%edi
43400a:	55                   	push   %ebp
43400b:	8b ec                	mov    %esp,%ebp
43400d:	6a 00                	push   $0x0
43400f:	6a ff                	push   $0xffffffff
434011:	ff 31                	push   (%ecx)
434013:	ff 15 c8 a2 43 00    	call   *0x43a2c8
434019:	83 f8 ff             	cmp    $0xffffffff,%eax
43401c:	75 12                	jne    0x434030
43401e:	8b 4d 04             	mov    0x4(%ebp),%ecx
434021:	ba 3b 01 00 00       	mov    $0x13b,%edx
434026:	68 88 50 40 00       	push   $0x405088
43402b:	e8 f1 92 ff ff       	call   0x42d321
434030:	5d                   	pop    %ebp
434031:	c2 08 00             	ret    $0x8
434034:	8b ff                	mov    %edi,%edi
434036:	55                   	push   %ebp
434037:	8b ec                	mov    %esp,%ebp
434039:	8b 4d 10             	mov    0x10(%ebp),%ecx
43403c:	33 c0                	xor    %eax,%eax
43403e:	56                   	push   %esi
43403f:	8b 35 08 80 43 00    	mov    0x438008,%esi
434045:	57                   	push   %edi
434046:	89 41 04             	mov    %eax,0x4(%ecx)
434049:	8b fa                	mov    %edx,%edi