435d69:	8d 45 e8             	lea    -0x18(%ebp),%eax
435d6c:	56                   	push   %esi
435d6d:	50                   	push   %eax
435d6e:	e8 7c 24 ff ff       	call   0x4281ef
435d73:	83 c4 0c             	add    $0xc,%esp
435d76:	f7 d8                	neg    %eax
435d78:	1b c0                	sbb    %eax,%eax
435d7a:	40                   	inc    %eax
435d7b:	eb 02                	jmp    0x435d7f
435d7d:	33 c0                	xor    %eax,%eax
435d7f:	8b 4d fc             	mov    -0x4(%ebp),%ecx
435d82:	33 cd                	xor    %ebp,%ecx
435d84:	5e                   	pop    %esi
435d85:	e8 46 5b fe ff       	call   0x41b8d0
435d8a:	c9                   	leave
435d8b:	c3                   	ret
435d8c:	8b ff                	mov    %edi,%edi
435d8e:	55                   	push   %ebp
435d8f:	8b ec                	mov    %esp,%ebp
435d91:	51                   	push   %ecx
435d92:	56                   	push   %esi
435d93:	8b 75 0c             	mov    0xc(%ebp),%esi
435d96:	33 d2                	xor    %edx,%edx
435d98:	57                   	push   %edi
435d99:	42                   	inc    %edx
435d9a:	33 ff                	xor    %edi,%edi
435d9c:	85 f6                	test   %esi,%esi
435d9e:	78 4e                	js     0x435dee
435da0:	53                   	push   %ebx
435da1:	85 d2                	test   %edx,%edx
435da3:	74 48                	je     0x435ded
435da5:	8d 04 37             	lea    (%edi,%esi,1),%eax
435da8:	99                   	cltd
435da9:	2b c2                	sub    %edx,%eax
435dab:	8b d8                	mov    %eax,%ebx
435dad:	8b 45 08             	mov    0x8(%ebp),%eax
435db0:	d1 fb                	sar    $1,%ebx
435db2:	6b cb 0c             	imul   $0xc,%ebx,%ecx
435db5:	89 4d fc             	mov    %ecx,-0x4(%ebp)
435db8:	ff 34 01             	push   (%ecx,%eax,1)
435dbb:	8b 45 10             	mov    0x10(%ebp),%eax
435dbe:	ff 30                	push   (%eax)
435dc0:	e8 bb 21 ff ff       	call   0x427f80
435dc5:	8b d0                	mov    %eax,%edx
435dc7:	59                   	pop    %ecx
435dc8:	59                   	pop    %ecx
435dc9:	85 d2                	test   %edx,%edx
435dcb:	75 12                	jne    0x435ddf
435dcd:	8b 45 08             	mov    0x8(%ebp),%eax
435dd0:	8b 4d fc             	mov    -0x4(%ebp),%ecx
435dd3:	83 c0 04             	add    $0x4,%eax
435dd6:	03 c8                	add    %eax,%ecx
435dd8:	8b 45 10             	mov    0x10(%ebp),%eax
435ddb:	89 08                	mov    %ecx,(%eax)
435ddd:	eb 0a                	jmp    0x435de9
435ddf:	79 05                	jns    0x435de6
435de1:	8d 73 ff             	lea    -0x1(%ebx),%esi
435de4:	eb 03                	jmp    0x435de9
435de6:	8d 7b 01             	lea    0x1(%ebx),%edi
435de9:	3b fe                	cmp    %esi,%edi
435deb:	7e b4                	jle    0x435da1
435ded:	5b                   	pop    %ebx
435dee:	33 c0                	xor    %eax,%eax
435df0:	85 d2                	test   %edx,%edx
435df2:	5f                   	pop    %edi
435df3:	0f 94 c0             	sete   %al
435df6:	5e                   	pop    %esi
435df7:	c9                   	leave
435df8:	c3                   	ret
435df9:	8b ff                	mov    %edi,%edi
435dfb:	55                   	push   %ebp
435dfc:	8b ec                	mov    %esp,%ebp
435dfe:	51                   	push   %ecx
435dff:	51                   	push   %ecx
435e00:	53                   	push   %ebx
435e01:	56                   	push   %esi
435e02:	57                   	push   %edi
435e03:	e8 21 63 ff ff       	call   0x42c129
435e08:	8b 7d 08             	mov    0x8(%ebp),%edi
435e0b:	33 c9                	xor    %ecx,%ecx
435e0d:	89 4d f8             	mov    %ecx,-0x8(%ebp)
435e10:	8d 70 50             	lea    0x50(%eax),%esi
435e13:	8d 86 50 02 00 00    	lea    0x250(%esi),%eax
435e19:	89 4e 08             	mov    %ecx,0x8(%esi)
435e1c:	66 89 08             	mov    %cx,(%eax)
435e1f:	8d 5e 04             	lea    0x4(%esi),%ebx
435e22:	89 45 fc             	mov    %eax,-0x4(%ebp)
435e25:	8d 87 80 00 00 00    	lea    0x80(%edi),%eax
435e2b:	89 3e                	mov    %edi,(%esi)
435e2d:	89 03                	mov    %eax,(%ebx)
435e2f:	66 39 08             	cmp    %cx,(%eax)
435e32:	74 12                	je     0x435e46
435e34:	53                   	push   %ebx
435e35:	6a 16                	push   $0x16
435e37:	68 50 3d 44 00       	push   $0x443d50
435e3c:	e8 4b ff ff ff       	call   0x435d8c
435e41:	83 c4 0c             	add    $0xc,%esp
435e44:	33 c9                	xor    %ecx,%ecx
435e46:	8b 06                	mov    (%esi),%eax
435e48:	56                   	push   %esi
435e49:	66 39 08             	cmp    %cx,(%eax)
435e4c:	74 47                	je     0x435e95
435e4e:	8b 03                	mov    (%ebx),%eax
435e50:	66 39 08             	cmp    %cx,(%eax)
435e53:	74 07                	je     0x435e5c
435e55:	e8 1c f9 ff ff       	call   0x435776
435e5a:	eb 05                	jmp    0x435e61
435e5c:	e8 ae f9 ff ff       	call   0x43580f
435e61:	33 c0                	xor    %eax,%eax
435e63:	59                   	pop    %ecx
435e64:	39 46 08             	cmp    %eax,0x8(%esi)
435e67:	75 32                	jne    0x435e9b
435e69:	56                   	push   %esi
435e6a:	6a 40                	push   $0x40
435e6c:	68 40 3a 44 00       	push   $0x443a40
435e71:	e8 16 ff ff ff       	call   0x435d8c
435e76:	83 c4 0c             	add    $0xc,%esp
435e79:	85 c0                	test   %eax,%eax
435e7b:	74 1e                	je     0x435e9b
435e7d:	8b 03                	mov    (%ebx),%eax
435e7f:	33 c9                	xor    %ecx,%ecx
435e81:	56                   	push   %esi
435e82:	66 39 08             	cmp    %cx,(%eax)
435e85:	74 07                	je     0x435e8e
435e87:	e8 ea f8 ff ff       	call   0x435776
435e8c:	eb 0c                	jmp    0x435e9a
435e8e:	e8 7c f9 ff ff       	call   0x43580f
435e93:	eb 05                	jmp    0x435e9a
435e95:	e8 55 f8 ff ff       	call   0x4356ef
435e9a:	59                   	pop    %ecx
435e9b:	33 db                	xor    %ebx,%ebx
435e9d:	39 5e 08             	cmp    %ebx,0x8(%esi)
435ea0:	0f 84 44 01 00 00    	je     0x435fea
435ea6:	85 ff                	test   %edi,%edi
435ea8:	74 16                	je     0x435ec0
435eaa:	66 39 1f             	cmp    %bx,(%edi)
435ead:	75 11                	jne    0x435ec0
435eaf:	66 39 9f 00 01 00 00 	cmp    %bx,0x100(%edi)
435eb6:	75 08                	jne    0x435ec0
435eb8:	ff 15 3c f0 43 00    	call   *0x43f03c
435ebe:	eb 15                	jmp    0x435ed5
435ec0:	8d 87 00 01 00 00    	lea    0x100(%edi),%eax
435ec6:	f7 df                	neg    %edi
435ec8:	56                   	push   %esi
435ec9:	1b ff                	sbb    %edi,%edi
435ecb:	23 f8                	and    %eax,%edi
435ecd:	57                   	push   %edi
435ece:	e8 7c fd ff ff       	call   0x435c4f
435ed3:	59                   	pop    %ecx
435ed4:	59                   	pop    %ecx
435ed5:	8b f0                	mov    %eax,%esi
435ed7:	85 f6                	test   %esi,%esi
435ed9:	0f 84 0b 01 00 00    	je     0x435fea
435edf:	81 fe e8 fd 00 00    	cmp    $0xfde8,%esi
435ee5:	0f 84 ff 00 00 00    	je     0x435fea
435eeb:	0f b7 c6             	movzwl %si,%eax
435eee:	50                   	push   %eax
435eef:	ff 15 bc f1 43 00    	call   *0x43f1bc
435ef5:	85 c0                	test   %eax,%eax
435ef7:	0f 84 ed 00 00 00    	je     0x435fea
435efd:	8b 45 0c             	mov    0xc(%ebp),%eax
435f00:	85 c0                	test   %eax,%eax
435f02:	74 02                	je     0x435f06
435f04:	89 30                	mov    %esi,(%eax)
435f06:	8b 7d 10             	mov    0x10(%ebp),%edi
435f09:	85 ff                	test   %edi,%edi
435f0b:	0f 84 c4 00 00 00    	je     0x435fd5
435f11:	8b 4d fc             	mov    -0x4(%ebp),%ecx
435f14:	8d 9f 20 01 00 00    	lea    0x120(%edi),%ebx
435f1a:	33 c0                	xor    %eax,%eax
435f1c:	66 89 03             	mov    %ax,(%ebx)
435f1f:	8d 51 02             	lea    0x2(%ecx),%edx
435f22:	66 8b 01             	mov    (%ecx),%ax
435f25:	83 c1 02             	add    $0x2,%ecx
435f28:	66 3b 45 f8          	cmp    -0x8(%ebp),%ax
435f2c:	75 f4                	jne    0x435f22
435f2e:	2b ca                	sub    %edx,%ecx
435f30:	d1 f9                	sar    $1,%ecx
435f32:	8d 41 01             	lea    0x1(%ecx),%eax
435f35:	50                   	push   %eax
435f36:	ff 75 fc             	push   -0x4(%ebp)
435f39:	6a 55                	push   $0x55
435f3b:	53                   	push   %ebx
435f3c:	e8 67 1e ff ff       	call   0x427da8
435f41:	83 c4 10             	add    $0x10,%esp
435f44:	85 c0                	test   %eax,%eax
435f46:	0f 85 a5 00 00 00    	jne    0x435ff1
435f4c:	6a 40                	push   $0x40
435f4e:	57                   	push   %edi
435f4f:	68 01 10 00 00       	push   $0x1001
435f54:	53                   	push   %ebx
435f55:	e8 16 91 ff ff       	call   0x42f070
435f5a:	85 c0                	test   %eax,%eax
435f5c:	0f 84 88 00 00 00    	je     0x435fea
435f62:	6a 40                	push   $0x40
435f64:	8d 9f 80 00 00 00    	lea    0x80(%edi),%ebx
435f6a:	53                   	push   %ebx
435f6b:	68 02 10 00 00       	push   $0x1002
435f70:	8d 87 20 01 00 00    	lea    0x120(%edi),%eax
435f76:	50                   	push   %eax
435f77:	e8 f4 90 ff ff       	call   0x42f070
435f7c:	85 c0                	test   %eax,%eax
435f7e:	74 6a                	je     0x435fea
435f80:	6a 5f                	push   $0x5f
435f82:	53                   	push   %ebx
435f83:	e8 88 65 00 00       	call   0x43c510
435f88:	59                   	pop    %ecx
435f89:	59                   	pop    %ecx
435f8a:	85 c0                	test   %eax,%eax
435f8c:	75 0e                	jne    0x435f9c
435f8e:	6a 2e                	push   $0x2e
435f90:	53                   	push   %ebx
435f91:	e8 7a 65 00 00       	call   0x43c510
435f96:	59                   	pop    %ecx
435f97:	59                   	pop    %ecx
435f98:	85 c0                	test   %eax,%eax
435f9a:	74 15                	je     0x435fb1
435f9c:	6a 40                	push   $0x40
435f9e:	53                   	push   %ebx
435f9f:	6a 07                	push   $0x7
435fa1:	8d 87 20 01 00 00    	lea    0x120(%edi),%eax
435fa7:	50                   	push   %eax
435fa8:	e8 c3 90 ff ff       	call   0x42f070
435fad:	85 c0                	test   %eax,%eax
435faf:	74 39                	je     0x435fea
435fb1:	81 c7 00 01 00 00    	add    $0x100,%edi
435fb7:	81 fe e9 fd 00 00    	cmp    $0xfde9,%esi
435fbd:	75 1b                	jne    0x435fda
435fbf:	6a 05                	push   $0x5
435fc1:	68 d4 47 44 00       	push   $0x4447d4
435fc6:	6a 10                	push   $0x10
435fc8:	57                   	push   %edi
435fc9:	e8 da 1d ff ff       	call   0x427da8
435fce:	83 c4 10             	add    $0x10,%esp
435fd1:	85 c0                	test   %eax,%eax
435fd3:	75 1c                	jne    0x435ff1
435fd5:	33 c0                	xor    %eax,%eax
435fd7:	40                   	inc    %eax
435fd8:	eb 12                	jmp    0x435fec
435fda:	6a 0a                	push   $0xa
435fdc:	6a 10                	push   $0x10
435fde:	57                   	push   %edi
435fdf:	56                   	push   %esi
435fe0:	e8 d5 08 ff ff       	call   0x4268ba
435fe5:	83 c4 10             	add    $0x10,%esp
435fe8:	eb eb                	jmp    0x435fd5
435fea:	33 c0                	xor    %eax,%eax
435fec:	5f                   	pop    %edi
435fed:	5e                   	pop    %esi
435fee:	5b                   	pop    %ebx
435fef:	c9                   	leave
435ff0:	c3                   	ret
435ff1:	33 c0                	xor    %eax,%eax
435ff3:	50                   	push   %eax
435ff4:	50                   	push   %eax
435ff5:	50                   	push   %eax
435ff6:	50                   	push   %eax
435ff7:	50                   	push   %eax
435ff8:	e8 9f aa fe ff       	call   0x420a9c
435ffd:	cc                   	int3
435ffe:	cc                   	int3
435fff:	cc                   	int3
436000:	8b ff                	mov    %edi,%edi
436002:	55                   	push   %ebp
436003:	8b ec                	mov    %esp,%ebp
436005:	81 ec f4 00 00 00    	sub    $0xf4,%esp
43600b:	a1 14 40 45 00       	mov    0x454014,%eax
436010:	33 c5                	xor    %ebp,%eax
436012:	89 45 fc             	mov    %eax,-0x4(%ebp)
436015:	53                   	push   %ebx
436016:	56                   	push   %esi
436017:	8b 75 08             	mov    0x8(%ebp),%esi
43601a:	57                   	push   %edi
43601b:	e8 09 61 ff ff       	call   0x42c129
436020:	8b d8                	mov    %eax,%ebx
436022:	e8 02 61 ff ff       	call   0x42c129
436027:	56                   	push   %esi
436028:	8b b8 4c 03 00 00    	mov    0x34c(%eax),%edi
43602e:	e8 22 05 00 00       	call   0x436555
436033:	59                   	pop    %ecx
436034:	8b 4b 64             	mov    0x64(%ebx),%ecx
436037:	8b f0                	mov    %eax,%esi
436039:	f7 d9                	neg    %ecx
43603b:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
436041:	6a 78                	push   $0x78
436043:	1b c9                	sbb    %ecx,%ecx
436045:	81 e1 05 f0 ff ff    	and    $0xfffff005,%ecx
43604b:	50                   	push   %eax
43604c:	81 c1 02 10 00 00    	add    $0x1002,%ecx
436052:	51                   	push   %ecx
436053:	56                   	push   %esi
436054:	ff 15 9c f1 43 00    	call   *0x43f19c
43605a:	85 c0                	test   %eax,%eax
43605c:	75 05                	jne    0x436063
43605e:	21 07                	and    %eax,(%edi)
436060:	40                   	inc    %eax
436061:	eb 33                	jmp    0x436096
436063:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
436069:	50                   	push   %eax
43606a:	ff 73 54             	push   0x54(%ebx)
43606d:	e8 0e 1f ff ff       	call   0x427f80
436072:	59                   	pop    %ecx
436073:	59                   	pop    %ecx
436074:	85 c0                	test   %eax,%eax
436076:	75 14                	jne    0x43608c
436078:	56                   	push   %esi
436079:	e8 0c 06 00 00       	call   0x43668a
43607e:	59                   	pop    %ecx
43607f:	85 c0                	test   %eax,%eax
436081:	74 09                	je     0x43608c
436083:	83 0f 04             	orl    $0x4,(%edi)
436086:	89 77 08             	mov    %esi,0x8(%edi)
436089:	89 77 04             	mov    %esi,0x4(%edi)
43608c:	8b 07                	mov    (%edi),%eax
43608e:	c1 e8 02             	shr    $0x2,%eax
436091:	f7 d0                	not    %eax
436093:	83 e0 01             	and    $0x1,%eax
436096:	8b 4d fc             	mov    -0x4(%ebp),%ecx
436099:	5f                   	pop    %edi
43609a:	5e                   	pop    %esi
43609b:	33 cd                	xor    %ebp,%ecx
43609d:	5b                   	pop    %ebx
43609e:	e8 2d 58 fe ff       	call   0x41b8d0
4360a3:	c9                   	leave
4360a4:	c2 04 00             	ret    $0x4
4360a7:	8b ff                	mov    %edi,%edi
4360a9:	55                   	push   %ebp
4360aa:	8b ec                	mov    %esp,%ebp
4360ac:	56                   	push   %esi
4360ad:	57                   	push   %edi
4360ae:	e8 76 60 ff ff       	call   0x42c129
4360b3:	8b d0                	mov    %eax,%edx
4360b5:	33 ff                	xor    %edi,%edi
4360b7:	8b 4a 54             	mov    0x54(%edx),%ecx
4360ba:	8d 71 02             	lea    0x2(%ecx),%esi
4360bd:	66 8b 01             	mov    (%ecx),%ax
4360c0:	83 c1 02             	add    $0x2,%ecx
4360c3:	66 3b c7             	cmp    %di,%ax
4360c6:	75 f5                	jne    0x4360bd
4360c8:	2b ce                	sub    %esi,%ecx
4360ca:	33 c0                	xor    %eax,%eax
4360cc:	d1 f9                	sar    $1,%ecx
4360ce:	83 f9 03             	cmp    $0x3,%ecx
4360d1:	6a 01                	push   $0x1
4360d3:	0f 94 c0             	sete   %al
4360d6:	68 00 60 43 00       	push   $0x436000
4360db:	89 42 64             	mov    %eax,0x64(%edx)
4360de:	ff 15 a8 f1 43 00    	call   *0x43f1a8
4360e4:	8b 45 08             	mov    0x8(%ebp),%eax
4360e7:	f6 00 04             	testb  $0x4,(%eax)