434ceb:	83 c4 14             	add    $0x14,%esp
434cee:	5e                   	pop    %esi
434cef:	8b e5                	mov    %ebp,%esp
434cf1:	5d                   	pop    %ebp
434cf2:	c2 0c 00             	ret    $0xc
434cf5:	cc                   	int3
434cf6:	cc                   	int3
434cf7:	cc                   	int3
434cf8:	cc                   	int3
434cf9:	cc                   	int3
434cfa:	cc                   	int3
434cfb:	cc                   	int3
434cfc:	cc                   	int3
434cfd:	cc                   	int3
434cfe:	cc                   	int3
434cff:	cc                   	int3
434d00:	8b ff                	mov    %edi,%edi
434d02:	55                   	push   %ebp
434d03:	8b ec                	mov    %esp,%ebp
434d05:	83 e4 f8             	and    $0xfffffff8,%esp
434d08:	83 ec 64             	sub    $0x64,%esp
434d0b:	a1 e4 f8 44 00       	mov    0x44f8e4,%eax
434d10:	33 c4                	xor    %esp,%eax
434d12:	89 44 24 60          	mov    %eax,0x60(%esp)
434d16:	56                   	push   %esi
434d17:	8b f1                	mov    %ecx,%esi
434d19:	e8 e2 86 ff ff       	call   0x42d400
434d1e:	2b 86 bc 03 00 00    	sub    0x3bc(%esi),%eax
434d24:	83 f8 64             	cmp    $0x64,%eax
434d27:	72 49                	jb     0x434d72
434d29:	8b 86 b8 03 00 00    	mov    0x3b8(%esi),%eax
434d2f:	83 f8 ff             	cmp    $0xffffffff,%eax
434d32:	74 33                	je     0x434d67
434d34:	6a 00                	push   $0x0
434d36:	8d 4c 24 08          	lea    0x8(%esp),%ecx
434d3a:	51                   	push   %ecx
434d3b:	6a 58                	push   $0x58
434d3d:	8d 4c 24 14          	lea    0x14(%esp),%ecx
434d41:	51                   	push   %ecx
434d42:	6a 00                	push   $0x0
434d44:	6a 00                	push   $0x0
434d46:	68 20 00 07 00       	push   $0x70020
434d4b:	50                   	push   %eax
434d4c:	ff 15 44 21 45 00    	call   *0x452144
434d52:	85 c0                	test   %eax,%eax
434d54:	74 11                	je     0x434d67
434d56:	83 7c 24 04 58       	cmpl   $0x58,0x4(%esp)
434d5b:	77 0a                	ja     0x434d67
434d5d:	8b 44 24 38          	mov    0x38(%esp),%eax
434d61:	89 86 c0 03 00 00    	mov    %eax,0x3c0(%esi)
434d67:	e8 94 86 ff ff       	call   0x42d400
434d6c:	89 86 bc 03 00 00    	mov    %eax,0x3bc(%esi)
434d72:	8b 4c 24 64          	mov    0x64(%esp),%ecx
434d76:	5e                   	pop    %esi
434d77:	33 cc                	xor    %esp,%ecx
434d79:	e8 d2 81 01 00       	call   0x44cf50
434d7e:	8b e5                	mov    %ebp,%esp
434d80:	5d                   	pop    %ebp
434d81:	c3                   	ret
434d82:	cc                   	int3
434d83:	cc                   	int3
434d84:	cc                   	int3
434d85:	cc                   	int3
434d86:	cc                   	int3
434d87:	cc                   	int3
434d88:	cc                   	int3
434d89:	cc                   	int3
434d8a:	cc                   	int3
434d8b:	cc                   	int3
434d8c:	cc                   	int3
434d8d:	cc                   	int3
434d8e:	cc                   	int3
434d8f:	cc                   	int3
434d90:	8b ff                	mov    %edi,%edi
434d92:	55                   	push   %ebp
434d93:	8b ec                	mov    %esp,%ebp
434d95:	83 ec 20             	sub    $0x20,%esp
434d98:	53                   	push   %ebx
434d99:	56                   	push   %esi
434d9a:	57                   	push   %edi
434d9b:	8b f9                	mov    %ecx,%edi
434d9d:	8b 1f                	mov    (%edi),%ebx
434d9f:	89 5d f0             	mov    %ebx,-0x10(%ebp)
434da2:	8b 43 70             	mov    0x70(%ebx),%eax
434da5:	8b 53 74             	mov    0x74(%ebx),%edx
434da8:	89 43 08             	mov    %eax,0x8(%ebx)
434dab:	89 53 0c             	mov    %edx,0xc(%ebx)
434dae:	83 7f 08 00          	cmpl   $0x0,0x8(%edi)
434db2:	75 04                	jne    0x434db8
434db4:	33 f6                	xor    %esi,%esi
434db6:	eb 36                	jmp    0x434dee
434db8:	8b 47 04             	mov    0x4(%edi),%eax
434dbb:	33 c9                	xor    %ecx,%ecx
434dbd:	8b 70 7c             	mov    0x7c(%eax),%esi
434dc0:	03 70 70             	add    0x70(%eax),%esi
434dc3:	13 48 74             	adc    0x74(%eax),%ecx
434dc6:	8b 07                	mov    (%edi),%eax
434dc8:	2b 70 70             	sub    0x70(%eax),%esi
434dcb:	1b 48 74             	sbb    0x74(%eax),%ecx
434dce:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
434dd1:	75 05                	jne    0x434dd8
434dd3:	83 fe ff             	cmp    $0xffffffff,%esi
434dd6:	72 16                	jb     0x434dee
434dd8:	68 7f 14 00 00       	push   $0x147f
434ddd:	68 60 19 41 00       	push   $0x411960
434de2:	68 a8 24 41 00       	push   $0x4124a8
434de7:	6a 00                	push   $0x0
434de9:	e8 22 38 ff ff       	call   0x428610
434dee:	8b 45 0c             	mov    0xc(%ebp),%eax
434df1:	8b 4d 10             	mov    0x10(%ebp),%ecx
434df4:	89 30                	mov    %esi,(%eax)
434df6:	8b 43 68             	mov    0x68(%ebx),%eax
434df9:	83 e0 02             	and    $0x2,%eax
434dfc:	83 7d 08 04          	cmpl   $0x4,0x8(%ebp)
434e00:	89 01                	mov    %eax,(%ecx)
434e02:	0f 85 71 01 00 00    	jne    0x434f79
434e08:	8b 53 70             	mov    0x70(%ebx),%edx
434e0b:	8b fb                	mov    %ebx,%edi
434e0d:	8b 73 74             	mov    0x74(%ebx),%esi
434e10:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
434e17:	89 55 f8             	mov    %edx,-0x8(%ebp)
434e1a:	89 75 f4             	mov    %esi,-0xc(%ebp)
434e1d:	89 7d ec             	mov    %edi,-0x14(%ebp)
434e20:	eb 03                	jmp    0x434e25
434e22:	8b 4d 10             	mov    0x10(%ebp),%ecx
434e25:	8b 47 68             	mov    0x68(%edi),%eax
434e28:	83 e0 02             	and    $0x2,%eax
434e2b:	89 45 e0             	mov    %eax,-0x20(%ebp)
434e2e:	75 06                	jne    0x434e36
434e30:	c7 01 00 00 00 00    	movl   $0x0,(%ecx)
434e36:	3b fb                	cmp    %ebx,%edi
434e38:	74 04                	je     0x434e3e
434e3a:	83 4f 44 08          	orl    $0x8,0x44(%edi)
434e3e:	8b 5f 70             	mov    0x70(%edi),%ebx
434e41:	3b 77 74             	cmp    0x74(%edi),%esi
434e44:	0f 87 84 00 00 00    	ja     0x434ece
434e4a:	72 08                	jb     0x434e54
434e4c:	3b d3                	cmp    %ebx,%edx
434e4e:	0f 83 7a 00 00 00    	jae    0x434ece
434e54:	a1 d0 1a 45 00       	mov    0x451ad0,%eax
434e59:	2b da                	sub    %edx,%ebx
434e5b:	89 45 f4             	mov    %eax,-0xc(%ebp)
434e5e:	33 d2                	xor    %edx,%edx
434e60:	8b c3                	mov    %ebx,%eax
434e62:	33 f6                	xor    %esi,%esi
434e64:	f7 35 cc 19 45 00    	divl   0x4519cc
434e6a:	85 d2                	test   %edx,%edx
434e6c:	74 15                	je     0x434e83
434e6e:	68 23 19 00 00       	push   $0x1923
434e73:	68 60 19 41 00       	push   $0x411960
434e78:	68 30 26 41 00       	push   $0x412630
434e7d:	56                   	push   %esi
434e7e:	e8 8d 37 ff ff       	call   0x428610
434e83:	33 c9                	xor    %ecx,%ecx
434e85:	85 db                	test   %ebx,%ebx
434e87:	74 36                	je     0x434ebf
434e89:	8b 55 fc             	mov    -0x4(%ebp),%edx
434e8c:	8b 45 18             	mov    0x18(%ebp),%eax
434e8f:	8b 7d f4             	mov    -0xc(%ebp),%edi
434e92:	2b c2                	sub    %edx,%eax
434e94:	48                   	dec    %eax
434e95:	89 45 f8             	mov    %eax,-0x8(%ebp)
434e98:	8b 45 14             	mov    0x14(%ebp),%eax
434e9b:	8d 04 d0             	lea    (%eax,%edx,8),%eax
434e9e:	8b 15 cc 19 45 00    	mov    0x4519cc,%edx
434ea4:	3b 75 f8             	cmp    -0x8(%ebp),%esi
434ea7:	73 13                	jae    0x434ebc
434ea9:	89 38                	mov    %edi,(%eax)
434eab:	03 ca                	add    %edx,%ecx
434ead:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
434eb4:	46                   	inc    %esi
434eb5:	83 c0 08             	add    $0x8,%eax
434eb8:	3b cb                	cmp    %ebx,%ecx
434eba:	72 e8                	jb     0x434ea4
434ebc:	8b 7d ec             	mov    -0x14(%ebp),%edi
434ebf:	8b 47 70             	mov    0x70(%edi),%eax
434ec2:	01 75 fc             	add    %esi,-0x4(%ebp)
434ec5:	89 45 f8             	mov    %eax,-0x8(%ebp)
434ec8:	8b 47 74             	mov    0x74(%edi),%eax
434ecb:	89 45 f4             	mov    %eax,-0xc(%ebp)
434ece:	8b 47 7c             	mov    0x7c(%edi),%eax
434ed1:	33 d2                	xor    %edx,%edx
434ed3:	8b 0d cc 19 45 00    	mov    0x4519cc,%ecx
434ed9:	33 f6                	xor    %esi,%esi
434edb:	89 45 ec             	mov    %eax,-0x14(%ebp)
434ede:	f7 f1                	div    %ecx
434ee0:	8b 5f 78             	mov    0x78(%edi),%ebx
434ee3:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
434ee6:	85 d2                	test   %edx,%edx
434ee8:	74 15                	je     0x434eff
434eea:	68 23 19 00 00       	push   $0x1923
434eef:	68 60 19 41 00       	push   $0x411960
434ef4:	68 30 26 41 00       	push   $0x412630
434ef9:	56                   	push   %esi
434efa:	e8 11 37 ff ff       	call   0x428610
434eff:	33 c9                	xor    %ecx,%ecx
434f01:	39 4d ec             	cmp    %ecx,-0x14(%ebp)
434f04:	76 36                	jbe    0x434f3c
434f06:	8b 55 fc             	mov    -0x4(%ebp),%edx
434f09:	8b 45 18             	mov    0x18(%ebp),%eax
434f0c:	2b c2                	sub    %edx,%eax
434f0e:	48                   	dec    %eax
434f0f:	89 45 e8             	mov    %eax,-0x18(%ebp)
434f12:	8b 45 14             	mov    0x14(%ebp),%eax
434f15:	8d 04 d0             	lea    (%eax,%edx,8),%eax
434f18:	8b 15 cc 19 45 00    	mov    0x4519cc,%edx
434f1e:	8b ff                	mov    %edi,%edi
434f20:	3b 75 e8             	cmp    -0x18(%ebp),%esi
434f23:	73 17                	jae    0x434f3c
434f25:	89 18                	mov    %ebx,(%eax)
434f27:	03 ca                	add    %edx,%ecx
434f29:	03 5d e4             	add    -0x1c(%ebp),%ebx
434f2c:	46                   	inc    %esi
434f2d:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
434f34:	83 c0 08             	add    $0x8,%eax
434f37:	3b 4d ec             	cmp    -0x14(%ebp),%ecx
434f3a:	72 e4                	jb     0x434f20
434f3c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
434f3f:	8b 55 f8             	mov    -0x8(%ebp),%edx
434f42:	03 ce                	add    %esi,%ecx
434f44:	03 57 7c             	add    0x7c(%edi),%edx
434f47:	8b 75 f4             	mov    -0xc(%ebp),%esi
434f4a:	8b 7f 1c             	mov    0x1c(%edi),%edi
434f4d:	83 d6 00             	adc    $0x0,%esi
434f50:	8b 5d f0             	mov    -0x10(%ebp),%ebx
434f53:	89 4d fc             	mov    %ecx,-0x4(%ebp)
434f56:	89 55 f8             	mov    %edx,-0x8(%ebp)
434f59:	89 75 f4             	mov    %esi,-0xc(%ebp)
434f5c:	89 7d ec             	mov    %edi,-0x14(%ebp)
434f5f:	85 ff                	test   %edi,%edi
434f61:	0f 85 bb fe ff ff    	jne    0x434e22
434f67:	8b 45 14             	mov    0x14(%ebp),%eax
434f6a:	c7 04 c8 00 00 00 00 	movl   $0x0,(%eax,%ecx,8)
434f71:	c7 44 c8 04 00 00 00 	movl   $0x0,0x4(%eax,%ecx,8)
434f78:	00
434f79:	e8 12 86 ff ff       	call   0x42d590
434f7e:	8b 75 f0             	mov    -0x10(%ebp),%esi
434f81:	8b f8                	mov    %eax,%edi
434f83:	8b da                	mov    %edx,%ebx
434f85:	89 7e 38             	mov    %edi,0x38(%esi)
434f88:	8d 4e 24             	lea    0x24(%esi),%ecx
434f8b:	89 5e 3c             	mov    %ebx,0x3c(%esi)
434f8e:	ba 01 00 00 00       	mov    $0x1,%edx
434f93:	33 c0                	xor    %eax,%eax
434f95:	f0 0f b1 11          	lock cmpxchg %edx,(%ecx)
434f99:	b8 01 00 00 00       	mov    $0x1,%eax
434f9e:	b9 d8 14 45 00       	mov    $0x4514d8,%ecx
434fa3:	f0 0f c1 01          	lock xadd %eax,(%ecx)
434fa7:	40                   	inc    %eax
434fa8:	83 f8 01             	cmp    $0x1,%eax
434fab:	75 0a                	jne    0x434fb7
434fad:	b9 d0 14 45 00       	mov    $0x4514d0,%ecx
434fb2:	e8 e9 37 00 00       	call   0x4387a0
434fb7:	3b 75 f0             	cmp    -0x10(%ebp),%esi
434fba:	75 3e                	jne    0x434ffa
434fbc:	8b 86 80 00 00 00    	mov    0x80(%esi),%eax
434fc2:	8b 00                	mov    (%eax),%eax
434fc4:	89 46 40             	mov    %eax,0x40(%esi)
434fc7:	e8 24 8d 00 00       	call   0x43dcf0
434fcc:	83 c0 10             	add    $0x10,%eax
434fcf:	74 0f                	je     0x434fe0
434fd1:	e8 1a 8d 00 00       	call   0x43dcf0
434fd6:	8b 40 10             	mov    0x10(%eax),%eax
434fd9:	d1 e8                	shr    $1,%eax
434fdb:	83 e0 01             	and    $0x1,%eax
434fde:	eb 02                	jmp    0x434fe2
434fe0:	33 c0                	xor    %eax,%eax
434fe2:	85 c0                	test   %eax,%eax
434fe4:	8b 45 08             	mov    0x8(%ebp),%eax
434fe7:	74 06                	je     0x434fef
434fe9:	c6 46 2c 0c          	movb   $0xc,0x2c(%esi)
434fed:	eb 04                	jmp    0x434ff3
434fef:	c6 46 2c 0b          	movb   $0xb,0x2c(%esi)
434ff3:	85 c0                	test   %eax,%eax
434ff5:	74 03                	je     0x434ffa
434ff7:	88 46 2d             	mov    %al,0x2d(%esi)
434ffa:	8b 76 1c             	mov    0x1c(%esi),%esi
434ffd:	85 f6                	test   %esi,%esi
434fff:	75 84                	jne    0x434f85
435001:	5f                   	pop    %edi
435002:	5e                   	pop    %esi
435003:	5b                   	pop    %ebx
435004:	8b e5                	mov    %ebp,%esp
435006:	5d                   	pop    %ebp
435007:	c2 14 00             	ret    $0x14
43500a:	cc                   	int3
43500b:	cc                   	int3
43500c:	cc                   	int3
43500d:	cc                   	int3
43500e:	cc                   	int3
43500f:	cc                   	int3
435010:	8b ff                	mov    %edi,%edi
435012:	55                   	push   %ebp
435013:	8b ec                	mov    %esp,%ebp
435015:	51                   	push   %ecx
435016:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
43501a:	56                   	push   %esi
43501b:	57                   	push   %edi
43501c:	8b f2                	mov    %edx,%esi
43501e:	8b f9                	mov    %ecx,%edi
435020:	74 14                	je     0x435036
435022:	8b 55 10             	mov    0x10(%ebp),%edx
435025:	33 c9                	xor    %ecx,%ecx
435027:	56                   	push   %esi
435028:	e8 e3 15 00 00       	call   0x436610
43502d:	33 c0                	xor    %eax,%eax
43502f:	5f                   	pop    %edi
435030:	5e                   	pop    %esi
435031:	59                   	pop    %ecx
435032:	5d                   	pop    %ebp
435033:	c2 0c 00             	ret    $0xc
435036:	8b 4d 0c             	mov    0xc(%ebp),%ecx
435039:	ba 60 19 41 00       	mov    $0x411960,%edx
43503e:	68 0c 1f 00 00       	push   $0x1f0c
435043:	e8 38 24 01 00       	call   0x447480
435048:	85 c0                	test   %eax,%eax
43504a:	0f 89 a8 00 00 00    	jns    0x4350f8
435050:	3d 0d fc ff ff       	cmp    $0xfffffc0d,%eax
435055:	75 32                	jne    0x435089
435057:	f7 46 68 00 00 70 00 	testl  $0x700000,0x68(%esi)
43505e:	75 29                	jne    0x435089
435060:	8b 4e 44             	mov    0x44(%esi),%ecx
435063:	8b c1                	mov    %ecx,%eax
435065:	c1 e0 07             	shl    $0x7,%eax
435068:	c1 f8 11             	sar    $0x11,%eax
43506b:	40                   	inc    %eax
43506c:	3d fe 7f 00 00       	cmp    $0x7ffe,%eax
435071:	7e 05                	jle    0x435078
435073:	b8 fe 7f 00 00       	mov    $0x7ffe,%eax
435078:	c1 e0 0a             	shl    $0xa,%eax
43507b:	33 c1                	xor    %ecx,%eax
43507d:	25 00 fc ff 01       	and    $0x1fffc00,%eax
435082:	33 c1                	xor    %ecx,%eax
435084:	89 46 44             	mov    %eax,0x44(%esi)
435087:	eb 4a                	jmp    0x4350d3
435089:	8b 96 80 00 00 00    	mov    0x80(%esi),%edx
43508f:	39 7a 28             	cmp    %edi,0x28(%edx)
435092:	7c 59                	jl     0x4350ed
435094:	83 ff 01             	cmp    $0x1,%edi
435097:	7e 54                	jle    0x4350ed
435099:	3d 15 fc ff ff       	cmp    $0xfffffc15,%eax
43509e:	75 4d                	jne    0x4350ed
4350a0:	f7 46 68 00 00 70 00 	testl  $0x700000,0x68(%esi)
4350a7:	75 44                	jne    0x4350ed
4350a9:	8b 4e 44             	mov    0x44(%esi),%ecx
4350ac:	8b c1                	mov    %ecx,%eax
4350ae:	c1 e0 07             	shl    $0x7,%eax
4350b1:	c1 f8 11             	sar    $0x11,%eax
4350b4:	40                   	inc    %eax
4350b5:	3d fe 7f 00 00       	cmp    $0x7ffe,%eax