45aea0:	ff 15 54 f6 48 00    	call   *0x48f654
45aea6:	b0 01                	mov    $0x1,%al
45aea8:	5d                   	pop    %ebp
45aea9:	c2 04 00             	ret    $0x4
45aeac:	55                   	push   %ebp
45aead:	8b ec                	mov    %esp,%ebp
45aeaf:	51                   	push   %ecx
45aeb0:	51                   	push   %ecx
45aeb1:	56                   	push   %esi
45aeb2:	57                   	push   %edi
45aeb3:	8b f9                	mov    %ecx,%edi
45aeb5:	33 f6                	xor    %esi,%esi
45aeb7:	39 77 04             	cmp    %esi,0x4(%edi)
45aeba:	77 05                	ja     0x45aec1
45aebc:	83 c8 ff             	or     $0xffffffff,%eax
45aebf:	eb 4a                	jmp    0x45af0b
45aec1:	53                   	push   %ebx
45aec2:	ff 75 08             	push   0x8(%ebp)
45aec5:	e8 72 7f fc ff       	call   0x422e3c
45aeca:	8b 5f 04             	mov    0x4(%edi),%ebx
45aecd:	89 45 f8             	mov    %eax,-0x8(%ebp)
45aed0:	59                   	pop    %ecx
45aed1:	85 db                	test   %ebx,%ebx
45aed3:	74 32                	je     0x45af07
45aed5:	8b 0f                	mov    (%edi),%ecx
45aed7:	8b 55 08             	mov    0x8(%ebp),%edx
45aeda:	8b f9                	mov    %ecx,%edi
45aedc:	89 45 fc             	mov    %eax,-0x4(%ebp)
45aedf:	85 c0                	test   %eax,%eax
45aee1:	74 13                	je     0x45aef6
45aee3:	66 8b 07             	mov    (%edi),%ax
45aee6:	66 3b 02             	cmp    (%edx),%ax
45aee9:	75 0f                	jne    0x45aefa
45aeeb:	83 c7 02             	add    $0x2,%edi
45aeee:	83 c2 02             	add    $0x2,%edx
45aef1:	ff 4d fc             	decl   -0x4(%ebp)
45aef4:	75 ed                	jne    0x45aee3
45aef6:	8b c6                	mov    %esi,%eax
45aef8:	eb 10                	jmp    0x45af0a
45aefa:	46                   	inc    %esi
45aefb:	83 c1 02             	add    $0x2,%ecx
45aefe:	3b f3                	cmp    %ebx,%esi
45af00:	73 05                	jae    0x45af07
45af02:	8b 45 f8             	mov    -0x8(%ebp),%eax
45af05:	eb d0                	jmp    0x45aed7
45af07:	83 c8 ff             	or     $0xffffffff,%eax
45af0a:	5b                   	pop    %ebx
45af0b:	5f                   	pop    %edi
45af0c:	5e                   	pop    %esi
45af0d:	8b e5                	mov    %ebp,%esp
45af0f:	5d                   	pop    %ebp
45af10:	c2 08 00             	ret    $0x8
45af13:	53                   	push   %ebx
45af14:	56                   	push   %esi
45af15:	8b 31                	mov    (%ecx),%esi
45af17:	6a f0                	push   $0xfffffff0
45af19:	56                   	push   %esi
45af1a:	ff 15 5c f6 48 00    	call   *0x48f65c
45af20:	bb 00 00 00 40       	mov    $0x40000000,%ebx
45af25:	eb 1b                	jmp    0x45af42
45af27:	56                   	push   %esi
45af28:	e8 1e 00 00 00       	call   0x45af4b
45af2d:	85 c0                	test   %eax,%eax
45af2f:	74 15                	je     0x45af46
45af31:	56                   	push   %esi
45af32:	e8 14 00 00 00       	call   0x45af4b
45af37:	8b f0                	mov    %eax,%esi
45af39:	6a f0                	push   $0xfffffff0
45af3b:	56                   	push   %esi
45af3c:	ff 15 5c f6 48 00    	call   *0x48f65c
45af42:	85 c3                	test   %eax,%ebx
45af44:	75 e1                	jne    0x45af27
45af46:	8b c6                	mov    %esi,%eax
45af48:	5e                   	pop    %esi
45af49:	5b                   	pop    %ebx
45af4a:	c3                   	ret
45af4b:	55                   	push   %ebp
45af4c:	8b ec                	mov    %esp,%ebp
45af4e:	6a f0                	push   $0xfffffff0
45af50:	ff 75 08             	push   0x8(%ebp)
45af53:	ff 15 5c f6 48 00    	call   *0x48f65c
45af59:	85 c0                	test   %eax,%eax
45af5b:	79 06                	jns    0x45af63
45af5d:	33 c0                	xor    %eax,%eax
45af5f:	5d                   	pop    %ebp
45af60:	c2 04 00             	ret    $0x4
45af63:	5d                   	pop    %ebp
45af64:	ff 25 80 f6 48 00    	jmp    *0x48f680
45af6a:	55                   	push   %ebp
45af6b:	8b ec                	mov    %esp,%ebp
45af6d:	51                   	push   %ecx
45af6e:	51                   	push   %ecx
45af6f:	53                   	push   %ebx
45af70:	8b 5d 08             	mov    0x8(%ebp),%ebx
45af73:	56                   	push   %esi
45af74:	8b f1                	mov    %ecx,%esi
45af76:	53                   	push   %ebx
45af77:	ff 36                	push   (%esi)
45af79:	ff 15 94 f6 48 00    	call   *0x48f694
45af7f:	85 c0                	test   %eax,%eax
45af81:	74 4f                	je     0x45afd2
45af83:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
45af87:	74 45                	je     0x45afce
45af89:	8b ce                	mov    %esi,%ecx
45af8b:	e8 83 ff ff ff       	call   0x45af13
45af90:	8b c8                	mov    %eax,%ecx
45af92:	85 c9                	test   %ecx,%ecx
45af94:	74 3c                	je     0x45afd2
45af96:	8b 03                	mov    (%ebx),%eax
45af98:	8b 73 0c             	mov    0xc(%ebx),%esi
45af9b:	89 45 f8             	mov    %eax,-0x8(%ebp)
45af9e:	8b 43 04             	mov    0x4(%ebx),%eax
45afa1:	2b f0                	sub    %eax,%esi
45afa3:	57                   	push   %edi
45afa4:	8b 7b 08             	mov    0x8(%ebx),%edi
45afa7:	2b 3b                	sub    (%ebx),%edi
45afa9:	89 45 fc             	mov    %eax,-0x4(%ebp)
45afac:	8d 45 f8             	lea    -0x8(%ebp),%eax
45afaf:	50                   	push   %eax
45afb0:	51                   	push   %ecx
45afb1:	ff 15 70 f6 48 00    	call   *0x48f670
45afb7:	8b 45 f8             	mov    -0x8(%ebp),%eax
45afba:	8b 4d fc             	mov    -0x4(%ebp),%ecx
45afbd:	89 03                	mov    %eax,(%ebx)
45afbf:	03 c7                	add    %edi,%eax
45afc1:	89 43 08             	mov    %eax,0x8(%ebx)
45afc4:	89 4b 04             	mov    %ecx,0x4(%ebx)
45afc7:	8d 04 0e             	lea    (%esi,%ecx,1),%eax
45afca:	89 43 0c             	mov    %eax,0xc(%ebx)
45afcd:	5f                   	pop    %edi
45afce:	b0 01                	mov    $0x1,%al
45afd0:	eb 02                	jmp    0x45afd4
45afd2:	32 c0                	xor    %al,%al
45afd4:	5e                   	pop    %esi
45afd5:	5b                   	pop    %ebx
45afd6:	8b e5                	mov    %ebp,%esp
45afd8:	5d                   	pop    %ebp
45afd9:	c2 08 00             	ret    $0x8
45afdc:	55                   	push   %ebp
45afdd:	8b ec                	mov    %esp,%ebp
45afdf:	83 ec 18             	sub    $0x18,%esp
45afe2:	53                   	push   %ebx
45afe3:	56                   	push   %esi
45afe4:	8b d9                	mov    %ecx,%ebx
45afe6:	8b 4d 08             	mov    0x8(%ebp),%ecx
45afe9:	57                   	push   %edi
45afea:	89 5d f8             	mov    %ebx,-0x8(%ebp)
45afed:	e8 fa ce fa ff       	call   0x407eec
45aff2:	ff 33                	push   (%ebx)
45aff4:	e8 a1 b1 fb ff       	call   0x41619a
45aff9:	84 c0                	test   %al,%al
45affb:	74 07                	je     0x45b004
45affd:	32 c0                	xor    %al,%al
45afff:	e9 95 00 00 00       	jmp    0x45b099
45b004:	8b cb                	mov    %ebx,%ecx
45b006:	e8 97 00 00 00       	call   0x45b0a2
45b00b:	8b d8                	mov    %eax,%ebx
45b00d:	85 db                	test   %ebx,%ebx
45b00f:	75 05                	jne    0x45b016
45b011:	bb ff 7f 00 00       	mov    $0x7fff,%ebx
45b016:	33 c9                	xor    %ecx,%ecx
45b018:	8d 73 01             	lea    0x1(%ebx),%esi
45b01b:	6a 02                	push   $0x2
45b01d:	5a                   	pop    %edx
45b01e:	8b c6                	mov    %esi,%eax
45b020:	f7 e2                	mul    %edx
45b022:	0f 90 c1             	seto   %cl
45b025:	f7 d9                	neg    %ecx
45b027:	0b c8                	or     %eax,%ecx
45b029:	51                   	push   %ecx
45b02a:	e8 c7 5f fc ff       	call   0x420ff6
45b02f:	59                   	pop    %ecx
45b030:	8b f8                	mov    %eax,%edi
45b032:	8b 45 f8             	mov    -0x8(%ebp),%eax
45b035:	57                   	push   %edi
45b036:	56                   	push   %esi
45b037:	6a 0d                	push   $0xd
45b039:	ff 30                	push   (%eax)
45b03b:	ff 15 88 f6 48 00    	call   *0x48f688
45b041:	85 c0                	test   %eax,%eax
45b043:	7e 4b                	jle    0x45b090
45b045:	57                   	push   %edi
45b046:	e8 35 89 fc ff       	call   0x423980
45b04b:	59                   	pop    %ecx
45b04c:	3b c3                	cmp    %ebx,%eax
45b04e:	75 37                	jne    0x45b087
45b050:	33 c9                	xor    %ecx,%ecx
45b052:	85 c0                	test   %eax,%eax
45b054:	74 12                	je     0x45b068
45b056:	8a 14 39             	mov    (%ecx,%edi,1),%dl
45b059:	80 fa 20             	cmp    $0x20,%dl
45b05c:	7c 29                	jl     0x45b087
45b05e:	80 fa 7e             	cmp    $0x7e,%dl
45b061:	7f 24                	jg     0x45b087
45b063:	41                   	inc    %ecx
45b064:	3b c8                	cmp    %eax,%ecx
45b066:	72 ee                	jb     0x45b056
45b068:	57                   	push   %edi
45b069:	8d 4d e8             	lea    -0x18(%ebp),%ecx
45b06c:	e8 a3 fd ff ff       	call   0x45ae14
45b071:	ff 75 08             	push   0x8(%ebp)
45b074:	8d 45 e8             	lea    -0x18(%ebp),%eax
45b077:	50                   	push   %eax
45b078:	e8 bd c8 fa ff       	call   0x40793a
45b07d:	8d 4d e8             	lea    -0x18(%ebp),%ecx
45b080:	e8 df a9 fa ff       	call   0x405a64
45b085:	eb 09                	jmp    0x45b090
45b087:	8b 4d 08             	mov    0x8(%ebp),%ecx
45b08a:	57                   	push   %edi
45b08b:	e8 9c cc fa ff       	call   0x407d2c
45b090:	57                   	push   %edi
45b091:	e8 d6 5f fc ff       	call   0x42106c
45b096:	59                   	pop    %ecx
45b097:	b0 01                	mov    $0x1,%al
45b099:	5f                   	pop    %edi
45b09a:	5e                   	pop    %esi
45b09b:	5b                   	pop    %ebx
45b09c:	8b e5                	mov    %ebp,%esp
45b09e:	5d                   	pop    %ebp
45b09f:	c2 04 00             	ret    $0x4
45b0a2:	56                   	push   %esi
45b0a3:	8b f1                	mov    %ecx,%esi
45b0a5:	ff 36                	push   (%esi)
45b0a7:	e8 ee b0 fb ff       	call   0x41619a
45b0ac:	84 c0                	test   %al,%al
45b0ae:	74 04                	je     0x45b0b4
45b0b0:	33 c0                	xor    %eax,%eax
45b0b2:	5e                   	pop    %esi
45b0b3:	c3                   	ret
45b0b4:	6a 00                	push   $0x0
45b0b6:	6a 00                	push   $0x0
45b0b8:	6a 0e                	push   $0xe
45b0ba:	ff 36                	push   (%esi)
45b0bc:	ff 15 88 f6 48 00    	call   *0x48f688
45b0c2:	5e                   	pop    %esi
45b0c3:	c3                   	ret
45b0c4:	55                   	push   %ebp
45b0c5:	8b ec                	mov    %esp,%ebp
45b0c7:	81 ec 10 02 00 00    	sub    $0x210,%esp
45b0cd:	53                   	push   %ebx
45b0ce:	56                   	push   %esi
45b0cf:	8b f1                	mov    %ecx,%esi
45b0d1:	8d 4d f0             	lea    -0x10(%ebp),%ecx
45b0d4:	e8 ee c6 fa ff       	call   0x4077c7
45b0d9:	68 ff 00 00 00       	push   $0xff
45b0de:	8d 85 f0 fd ff ff    	lea    -0x210(%ebp),%eax
45b0e4:	50                   	push   %eax
45b0e5:	ff 36                	push   (%esi)
45b0e7:	ff 15 48 f7 48 00    	call   *0x48f748
45b0ed:	8d 85 f0 fd ff ff    	lea    -0x210(%ebp),%eax
45b0f3:	50                   	push   %eax
45b0f4:	8d 4d f0             	lea    -0x10(%ebp),%ecx
45b0f7:	e8 30 cc fa ff       	call   0x407d2c
45b0fc:	8b 45 08             	mov    0x8(%ebp),%eax
45b0ff:	51                   	push   %ecx
45b100:	8d 4d f0             	lea    -0x10(%ebp),%ecx
45b103:	ff 30                	push   (%eax)
45b105:	e8 a2 fd ff ff       	call   0x45aeac
45b10a:	83 f8 ff             	cmp    $0xffffffff,%eax
45b10d:	8d 4d f0             	lea    -0x10(%ebp),%ecx
45b110:	0f 95 c3             	setne  %bl
45b113:	e8 4c a9 fa ff       	call   0x405a64
45b118:	5e                   	pop    %esi
45b119:	8a c3                	mov    %bl,%al
45b11b:	5b                   	pop    %ebx
45b11c:	8b e5                	mov    %ebp,%esp
45b11e:	5d                   	pop    %ebp
45b11f:	c2 08 00             	ret    $0x8
45b122:	55                   	push   %ebp
45b123:	8b ec                	mov    %esp,%ebp
45b125:	6a 01                	push   $0x1
45b127:	ff 75 14             	push   0x14(%ebp)
45b12a:	ff 75 10             	push   0x10(%ebp)
45b12d:	ff 75 0c             	push   0xc(%ebp)
45b130:	ff 75 08             	push   0x8(%ebp)
45b133:	ff 31                	push   (%ecx)
45b135:	ff 15 00 f7 48 00    	call   *0x48f700
45b13b:	85 c0                	test   %eax,%eax
45b13d:	0f 95 c0             	setne  %al
45b140:	5d                   	pop    %ebp
45b141:	c2 10 00             	ret    $0x10
45b144:	55                   	push   %ebp
45b145:	8b ec                	mov    %esp,%ebp
45b147:	53                   	push   %ebx
45b148:	8b 5d 08             	mov    0x8(%ebp),%ebx
45b14b:	56                   	push   %esi
45b14c:	8b f1                	mov    %ecx,%esi
45b14e:	3b f3                	cmp    %ebx,%esi
45b150:	0f 84 82 00 00 00    	je     0x45b1d8
45b156:	57                   	push   %edi
45b157:	e8 f8 af fb ff       	call   0x416154
45b15c:	8b 43 08             	mov    0x8(%ebx),%eax
45b15f:	6a 04                	push   $0x4
45b161:	59                   	pop    %ecx
45b162:	39 46 0c             	cmp    %eax,0xc(%esi)
45b165:	73 3a                	jae    0x45b1a1
45b167:	6a 08                	push   $0x8
45b169:	5a                   	pop    %edx
45b16a:	3b c2                	cmp    %edx,%eax
45b16c:	72 02                	jb     0x45b170
45b16e:	8b d0                	mov    %eax,%edx
45b170:	89 56 0c             	mov    %edx,0xc(%esi)
45b173:	33 c9                	xor    %ecx,%ecx
45b175:	8b c2                	mov    %edx,%eax
45b177:	6a 04                	push   $0x4
45b179:	5a                   	pop    %edx
45b17a:	f7 e2                	mul    %edx
45b17c:	0f 90 c1             	seto   %cl
45b17f:	f7 d9                	neg    %ecx
45b181:	0b c8                	or     %eax,%ecx
45b183:	51                   	push   %ecx
45b184:	e8 6d 5e fc ff       	call   0x420ff6
45b189:	83 7e 04 00          	cmpl   $0x0,0x4(%esi)
45b18d:	8b f8                	mov    %eax,%edi
45b18f:	59                   	pop    %ecx
45b190:	74 09                	je     0x45b19b
45b192:	ff 76 04             	push   0x4(%esi)
45b195:	e8 d2 5e fc ff       	call   0x42106c
45b19a:	59                   	pop    %ecx
45b19b:	6a 04                	push   $0x4
45b19d:	89 7e 04             	mov    %edi,0x4(%esi)
45b1a0:	59                   	pop    %ecx
45b1a1:	8b 43 08             	mov    0x8(%ebx),%eax
45b1a4:	33 ff                	xor    %edi,%edi
45b1a6:	89 46 08             	mov    %eax,0x8(%esi)
45b1a9:	85 c0                	test   %eax,%eax
45b1ab:	74 2a                	je     0x45b1d7
45b1ad:	51                   	push   %ecx
45b1ae:	e8 43 5e fc ff       	call   0x420ff6
45b1b3:	8b d0                	mov    %eax,%edx
45b1b5:	59                   	pop    %ecx
45b1b6:	85 d2                	test   %edx,%edx
45b1b8:	74 0c                	je     0x45b1c6
45b1ba:	8b 4b 04             	mov    0x4(%ebx),%ecx
45b1bd:	8b 0c b9             	mov    (%ecx,%edi,4),%ecx
45b1c0:	8b 09                	mov    (%ecx),%ecx
45b1c2:	89 0a                	mov    %ecx,(%edx)
45b1c4:	eb 02                	jmp    0x45b1c8
45b1c6:	33 d2                	xor    %edx,%edx
45b1c8:	8b 46 04             	mov    0x4(%esi),%eax
45b1cb:	6a 04                	push   $0x4
45b1cd:	59                   	pop    %ecx
45b1ce:	89 14 b8             	mov    %edx,(%eax,%edi,4)
45b1d1:	47                   	inc    %edi
45b1d2:	3b 7e 08             	cmp    0x8(%esi),%edi
45b1d5:	72 d6                	jb     0x45b1ad
45b1d7:	5f                   	pop    %edi
45b1d8:	8b c6                	mov    %esi,%eax
45b1da:	5e                   	pop    %esi
45b1db:	5b                   	pop    %ebx