419ea8:	ff 51 3c             	call   *0x3c(%ecx)
419eab:	8b c3                	mov    %ebx,%eax
419ead:	5f                   	pop    %edi
419eae:	5e                   	pop    %esi
419eaf:	5b                   	pop    %ebx
419eb0:	c3                   	ret
419eb1:	8d 40 00             	lea    0x0(%eax),%eax
419eb4:	53                   	push   %ebx
419eb5:	83 78 20 00          	cmpl   $0x0,0x20(%eax)
419eb9:	74 0a                	je     0x419ec5
419ebb:	8b 40 20             	mov    0x20(%eax),%eax
419ebe:	8b 18                	mov    (%eax),%ebx
419ec0:	ff 53 1c             	call   *0x1c(%ebx)
419ec3:	5b                   	pop    %ebx
419ec4:	c3                   	ret
419ec5:	e8 ea 95 fe ff       	call   0x4034b4
419eca:	5b                   	pop    %ebx
419ecb:	c3                   	ret
419ecc:	55                   	push   %ebp
419ecd:	8b ec                	mov    %esp,%ebp
419ecf:	5d                   	pop    %ebp
419ed0:	c2 04 00             	ret    $0x4
419ed3:	90                   	nop
419ed4:	55                   	push   %ebp
419ed5:	8b ec                	mov    %esp,%ebp
419ed7:	53                   	push   %ebx
419ed8:	56                   	push   %esi
419ed9:	57                   	push   %edi
419eda:	8b 7d 10             	mov    0x10(%ebp),%edi
419edd:	8b 75 0c             	mov    0xc(%ebp),%esi
419ee0:	8b 5d 08             	mov    0x8(%ebp),%ebx
419ee3:	83 7b 20 00          	cmpl   $0x0,0x20(%ebx)
419ee7:	75 1a                	jne    0x419f03
419ee9:	8b cf                	mov    %edi,%ecx
419eeb:	8b d6                	mov    %esi,%edx
419eed:	8b c3                	mov    %ebx,%eax
419eef:	e8 2c 94 fe ff       	call   0x403320
419ef4:	84 c0                	test   %al,%al
419ef6:	74 04                	je     0x419efc
419ef8:	33 c0                	xor    %eax,%eax
419efa:	eb 11                	jmp    0x419f0d
419efc:	b8 02 40 00 80       	mov    $0x80004002,%eax
419f01:	eb 0a                	jmp    0x419f0d
419f03:	57                   	push   %edi
419f04:	56                   	push   %esi
419f05:	8b 43 20             	mov    0x20(%ebx),%eax
419f08:	50                   	push   %eax
419f09:	8b 00                	mov    (%eax),%eax
419f0b:	ff 10                	call   *(%eax)
419f0d:	5f                   	pop    %edi
419f0e:	5e                   	pop    %esi
419f0f:	5b                   	pop    %ebx
419f10:	5d                   	pop    %ebp
419f11:	c2 0c 00             	ret    $0xc
419f14:	55                   	push   %ebp
419f15:	8b ec                	mov    %esp,%ebp
419f17:	8b 45 08             	mov    0x8(%ebp),%eax
419f1a:	83 78 20 00          	cmpl   $0x0,0x20(%eax)
419f1e:	75 05                	jne    0x419f25
419f20:	83 c8 ff             	or     $0xffffffff,%eax
419f23:	eb 09                	jmp    0x419f2e
419f25:	8b 40 20             	mov    0x20(%eax),%eax
419f28:	50                   	push   %eax
419f29:	8b 00                	mov    (%eax),%eax
419f2b:	ff 50 04             	call   *0x4(%eax)
419f2e:	5d                   	pop    %ebp
419f2f:	c2 04 00             	ret    $0x4
419f32:	8b c0                	mov    %eax,%eax
419f34:	55                   	push   %ebp
419f35:	8b ec                	mov    %esp,%ebp
419f37:	8b 45 08             	mov    0x8(%ebp),%eax
419f3a:	83 78 20 00          	cmpl   $0x0,0x20(%eax)
419f3e:	75 05                	jne    0x419f45
419f40:	83 c8 ff             	or     $0xffffffff,%eax
419f43:	eb 09                	jmp    0x419f4e
419f45:	8b 40 20             	mov    0x20(%eax),%eax
419f48:	50                   	push   %eax
419f49:	8b 00                	mov    (%eax),%eax
419f4b:	ff 50 08             	call   *0x8(%eax)
419f4e:	5d                   	pop    %ebp
419f4f:	c2 04 00             	ret    $0x4
419f52:	8b c0                	mov    %eax,%eax
419f54:	c3                   	ret
419f55:	8d 40 00             	lea    0x0(%eax),%eax
419f58:	53                   	push   %ebx
419f59:	56                   	push   %esi
419f5a:	57                   	push   %edi
419f5b:	84 d2                	test   %dl,%dl
419f5d:	74 08                	je     0x419f67
419f5f:	83 c4 f0             	add    $0xfffffff0,%esp
419f62:	e8 29 96 fe ff       	call   0x403590
419f67:	8b f1                	mov    %ecx,%esi
419f69:	8b da                	mov    %edx,%ebx
419f6b:	8b f8                	mov    %eax,%edi
419f6d:	33 d2                	xor    %edx,%edx
419f6f:	8b c7                	mov    %edi,%eax
419f71:	e8 c6 92 fe ff       	call   0x40323c
419f76:	8b d6                	mov    %esi,%edx
419f78:	8b c7                	mov    %edi,%eax
419f7a:	8b 08                	mov    (%eax),%ecx
419f7c:	ff 11                	call   *(%ecx)
419f7e:	8b c7                	mov    %edi,%eax
419f80:	84 db                	test   %bl,%bl
419f82:	74 0f                	je     0x419f93
419f84:	e8 5f 96 fe ff       	call   0x4035e8
419f89:	64 8f 05 00 00 00 00 	pop    %fs:0x0
419f90:	83 c4 0c             	add    $0xc,%esp
419f93:	8b c7                	mov    %edi,%eax
419f95:	5f                   	pop    %edi
419f96:	5e                   	pop    %esi
419f97:	5b                   	pop    %ebx
419f98:	c3                   	ret
419f99:	8d 40 00             	lea    0x0(%eax),%eax
419f9c:	c3                   	ret
419f9d:	8d 40 00             	lea    0x0(%eax),%eax
419fa0:	53                   	push   %ebx
419fa1:	56                   	push   %esi
419fa2:	e8 51 96 fe ff       	call   0x4035f8
419fa7:	8b da                	mov    %edx,%ebx
419fa9:	8b f0                	mov    %eax,%esi
419fab:	8b 46 10             	mov    0x10(%esi),%eax
419fae:	85 c0                	test   %eax,%eax
419fb0:	74 07                	je     0x419fb9
419fb2:	8b d6                	mov    %esi,%edx
419fb4:	e8 17 02 00 00       	call   0x41a1d0
419fb9:	8b d3                	mov    %ebx,%edx
419fbb:	80 e2 fc             	and    $0xfc,%dl
419fbe:	8b c6                	mov    %esi,%eax
419fc0:	e8 97 92 fe ff       	call   0x40325c
419fc5:	84 db                	test   %bl,%bl
419fc7:	7e 07                	jle    0x419fd0
419fc9:	8b c6                	mov    %esi,%eax
419fcb:	e8 10 96 fe ff       	call   0x4035e0
419fd0:	5e                   	pop    %esi
419fd1:	5b                   	pop    %ebx
419fd2:	c3                   	ret
419fd3:	90                   	nop
419fd4:	53                   	push   %ebx
419fd5:	66 83 78 0a 00       	cmpw   $0x0,0xa(%eax)
419fda:	74 0b                	je     0x419fe7
419fdc:	8b d8                	mov    %eax,%ebx
419fde:	8b 50 10             	mov    0x10(%eax),%edx
419fe1:	8b 43 0c             	mov    0xc(%ebx),%eax
419fe4:	ff 53 08             	call   *0x8(%ebx)
419fe7:	5b                   	pop    %ebx
419fe8:	c3                   	ret
419fe9:	8d 40 00             	lea    0x0(%eax),%eax
419fec:	53                   	push   %ebx
419fed:	56                   	push   %esi
419fee:	8b d8                	mov    %eax,%ebx
419ff0:	8b 43 10             	mov    0x10(%ebx),%eax
419ff3:	e8 18 02 00 00       	call   0x41a210
419ff8:	8b 43 10             	mov    0x10(%ebx),%eax
419ffb:	66 be ef ff          	mov    $0xffef,%si
419fff:	e8 64 94 fe ff       	call   0x403468
41a004:	5e                   	pop    %esi
41a005:	5b                   	pop    %ebx
41a006:	c3                   	ret
41a007:	90                   	nop
41a008:	53                   	push   %ebx
41a009:	56                   	push   %esi
41a00a:	8b f2                	mov    %edx,%esi
41a00c:	8b d8                	mov    %eax,%ebx
41a00e:	8b 43 10             	mov    0x10(%ebx),%eax
41a011:	3b f0                	cmp    %eax,%esi
41a013:	74 1b                	je     0x41a030
41a015:	85 c0                	test   %eax,%eax
41a017:	74 07                	je     0x41a020
41a019:	8b d3                	mov    %ebx,%edx
41a01b:	e8 b0 01 00 00       	call   0x41a1d0
41a020:	89 73 10             	mov    %esi,0x10(%ebx)
41a023:	85 f6                	test   %esi,%esi
41a025:	74 09                	je     0x41a030
41a027:	8b d3                	mov    %ebx,%edx
41a029:	8b c6                	mov    %esi,%eax
41a02b:	e8 94 01 00 00       	call   0x41a1c4
41a030:	5e                   	pop    %esi
41a031:	5b                   	pop    %ebx
41a032:	c3                   	ret
41a033:	90                   	nop
41a034:	b0 01                	mov    $0x1,%al
41a036:	c3                   	ret
41a037:	90                   	nop
41a038:	55                   	push   %ebp
41a039:	8b ec                	mov    %esp,%ebp
41a03b:	5d                   	pop    %ebp
41a03c:	c2 08 00             	ret    $0x8
41a03f:	90                   	nop
41a040:	8b 40 10             	mov    0x10(%eax),%eax
41a043:	8b 10                	mov    (%eax),%edx
41a045:	ff 52 44             	call   *0x44(%edx)
41a048:	c3                   	ret
41a049:	8d 40 00             	lea    0x0(%eax),%eax
41a04c:	53                   	push   %ebx
41a04d:	56                   	push   %esi
41a04e:	84 d2                	test   %dl,%dl
41a050:	74 08                	je     0x41a05a
41a052:	83 c4 f0             	add    $0xfffffff0,%esp
41a055:	e8 36 95 fe ff       	call   0x403590
41a05a:	8b da                	mov    %edx,%ebx
41a05c:	8b f0                	mov    %eax,%esi
41a05e:	33 d2                	xor    %edx,%edx
41a060:	8b c6                	mov    %esi,%eax
41a062:	e8 dd f6 ff ff       	call   0x419744
41a067:	b2 01                	mov    $0x1,%dl
41a069:	a1 24 1a 41 00       	mov    0x411a24,%eax
41a06e:	e8 c9 91 fe ff       	call   0x40323c
41a073:	89 46 50             	mov    %eax,0x50(%esi)
41a076:	8b c6                	mov    %esi,%eax
41a078:	84 db                	test   %bl,%bl
41a07a:	74 0f                	je     0x41a08b
41a07c:	e8 67 95 fe ff       	call   0x4035e8
41a081:	64 8f 05 00 00 00 00 	pop    %fs:0x0
41a088:	83 c4 0c             	add    $0xc,%esp
41a08b:	8b c6                	mov    %esi,%eax
41a08d:	5e                   	pop    %esi
41a08e:	5b                   	pop    %ebx
41a08f:	c3                   	ret
41a090:	53                   	push   %ebx
41a091:	56                   	push   %esi
41a092:	57                   	push   %edi
41a093:	e8 60 95 fe ff       	call   0x4035f8
41a098:	8b da                	mov    %edx,%ebx
41a09a:	8b f8                	mov    %eax,%edi
41a09c:	8b d3                	mov    %ebx,%edx
41a09e:	80 e2 fc             	and    $0xfc,%dl
41a0a1:	8b c7                	mov    %edi,%eax
41a0a3:	e8 e8 f6 ff ff       	call   0x419790
41a0a8:	8b 47 30             	mov    0x30(%edi),%eax
41a0ab:	85 c0                	test   %eax,%eax
41a0ad:	74 19                	je     0x41a0c8
41a0af:	8b d7                	mov    %edi,%edx
41a0b1:	e8 8e f9 ff ff       	call   0x419a44
41a0b6:	eb 10                	jmp    0x41a0c8
41a0b8:	8b c6                	mov    %esi,%eax
41a0ba:	e8 b5 9d ff ff       	call   0x413e74
41a0bf:	8b d0                	mov    %eax,%edx
41a0c1:	8b c7                	mov    %edi,%eax
41a0c3:	e8 08 01 00 00       	call   0x41a1d0
41a0c8:	8b 77 50             	mov    0x50(%edi),%esi
41a0cb:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
41a0cf:	7f e7                	jg     0x41a0b8
41a0d1:	8d 47 50             	lea    0x50(%edi),%eax
41a0d4:	e8 6b 30 ff ff       	call   0x40d144
41a0d9:	84 db                	test   %bl,%bl
41a0db:	7e 07                	jle    0x41a0e4
41a0dd:	8b c7                	mov    %edi,%eax
41a0df:	e8 fc 94 fe ff       	call   0x4035e0
41a0e4:	5f                   	pop    %edi
41a0e5:	5e                   	pop    %esi
41a0e6:	5b                   	pop    %ebx
41a0e7:	c3                   	ret
41a0e8:	33 c0                	xor    %eax,%eax
41a0ea:	c3                   	ret
41a0eb:	90                   	nop
41a0ec:	c3                   	ret
41a0ed:	8d 40 00             	lea    0x0(%eax),%eax
41a0f0:	53                   	push   %ebx
41a0f1:	56                   	push   %esi
41a0f2:	57                   	push   %edi
41a0f3:	8b d9                	mov    %ecx,%ebx
41a0f5:	8b f2                	mov    %edx,%esi
41a0f7:	8b f8                	mov    %eax,%edi
41a0f9:	8b cb                	mov    %ebx,%ecx
41a0fb:	8b d6                	mov    %esi,%edx
41a0fd:	8b c7                	mov    %edi,%eax
41a0ff:	e8 5c f9 ff ff       	call   0x419a60
41a104:	80 fb 01             	cmp    $0x1,%bl
41a107:	75 0a                	jne    0x41a113
41a109:	3b 77 30             	cmp    0x30(%edi),%esi
41a10c:	75 05                	jne    0x41a113
41a10e:	33 c0                	xor    %eax,%eax
41a110:	89 47 30             	mov    %eax,0x30(%edi)
41a113:	5f                   	pop    %edi
41a114:	5e                   	pop    %esi
41a115:	5b                   	pop    %ebx
41a116:	c3                   	ret
41a117:	90                   	nop
41a118:	c3                   	ret
41a119:	8d 40 00             	lea    0x0(%eax),%eax
41a11c:	53                   	push   %ebx
41a11d:	66 83 78 42 00       	cmpw   $0x0,0x42(%eax)
41a122:	74 0e                	je     0x41a132
41a124:	8b d8                	mov    %eax,%ebx
41a126:	8b d0                	mov    %eax,%edx
41a128:	8b 43 44             	mov    0x44(%ebx),%eax
41a12b:	ff 53 40             	call   *0x40(%ebx)
41a12e:	b0 01                	mov    $0x1,%al
41a130:	5b                   	pop    %ebx
41a131:	c3                   	ret
41a132:	33 c0                	xor    %eax,%eax
41a134:	5b                   	pop    %ebx
41a135:	c3                   	ret
41a136:	8b c0                	mov    %eax,%eax
41a138:	53                   	push   %ebx
41a139:	66 83 78 4a 00       	cmpw   $0x0,0x4a(%eax)
41a13e:	74 0e                	je     0x41a14e
41a140:	8b d8                	mov    %eax,%ebx
41a142:	8b d0                	mov    %eax,%edx
41a144:	8b 43 4c             	mov    0x4c(%ebx),%eax
41a147:	ff 53 48             	call   *0x48(%ebx)
41a14a:	b0 01                	mov    $0x1,%al
41a14c:	5b                   	pop    %ebx
41a14d:	c3                   	ret
41a14e:	33 c0                	xor    %eax,%eax
41a150:	5b                   	pop    %ebx
41a151:	c3                   	ret
41a152:	8b c0                	mov    %eax,%eax
41a154:	55                   	push   %ebp
41a155:	8b ec                	mov    %esp,%ebp
41a157:	53                   	push   %ebx
41a158:	56                   	push   %esi
41a159:	57                   	push   %edi
41a15a:	8b d8                	mov    %eax,%ebx
41a15c:	8b 45 08             	mov    0x8(%ebp),%eax
41a15f:	3b 43 40             	cmp    0x40(%ebx),%eax
41a162:	75 08                	jne    0x41a16c
41a164:	8b 45 0c             	mov    0xc(%ebp),%eax
41a167:	3b 43 44             	cmp    0x44(%ebx),%eax
41a16a:	74 3a                	je     0x41a1a6
41a16c:	8b 43 50             	mov    0x50(%ebx),%eax
41a16f:	8b 70 08             	mov    0x8(%eax),%esi
41a172:	4e                   	dec    %esi
41a173:	85 f6                	test   %esi,%esi
41a175:	7c 1c                	jl     0x41a193
41a177:	46                   	inc    %esi
41a178:	33 ff                	xor    %edi,%edi
41a17a:	ff 75 0c             	push   0xc(%ebp)
41a17d:	ff 75 08             	push   0x8(%ebp)
41a180:	8b d7                	mov    %edi,%edx
41a182:	8b 43 50             	mov    0x50(%ebx),%eax
41a185:	e8 02 9c ff ff       	call   0x413d8c
41a18a:	8b 10                	mov    (%eax),%edx
41a18c:	ff 52 10             	call   *0x10(%edx)
41a18f:	47                   	inc    %edi
41a190:	4e                   	dec    %esi
41a191:	75 e7                	jne    0x41a17a
41a193:	8b 45 08             	mov    0x8(%ebp),%eax
41a196:	89 43 40             	mov    %eax,0x40(%ebx)
41a199:	8b 45 0c             	mov    0xc(%ebp),%eax
41a19c:	89 43 44             	mov    %eax,0x44(%ebx)
41a19f:	8b c3                	mov    %ebx,%eax
41a1a1:	8b 10                	mov    (%eax),%edx
41a1a3:	ff 52 30             	call   *0x30(%edx)
41a1a6:	5f                   	pop    %edi
41a1a7:	5e                   	pop    %esi
41a1a8:	5b                   	pop    %ebx
41a1a9:	5d                   	pop    %ebp
41a1aa:	c2 08 00             	ret    $0x8
41a1ad:	8d 40 00             	lea    0x0(%eax),%eax